Sikap agnostik-host
Bagaimana Apothem mencapai sikap agnostik-host melalui profil bersama dan adaptor harness.
Apothem dirancang di sekitar satu prinsip: konfigurasi tata kelola Anda
harus bertahan lebih lama daripada harness tunggal mana pun. Profil Apothem
bersama adalah berkas YAML tervalidasi-skema di ~/.config/apothem/profile.yaml atau
--profile PATH; kohor Apothem yang dipaket menyediakan perintah, aturan, skill,
hook, templat, statusline, gaya keluaran, dan definisi delegasi.
Adaptor per-harness di bawah src/apothem/harnesses/<harness>/ menerjemahkan masukan-masukan itu menjadi format
yang dibutuhkan setiap harness yang didukung:
Claude Code, Cursor, Gemini CLI, GitHub Copilot, Codex, Windsurf,
OpenCode, Antigravity, Open-Claw, Hermes, Qwen Code,
CodeBuddy, Kiro, Trae, Zed, GLM (Z.ai), Kimi CodeGagasan inti
Agnostisisme-host berarti niat Anda — siapa Anda, bagaimana Anda ingin asisten berperilaku, aturan yang harus mereka ikuti — berada di satu tempat yang tidak dimiliki oleh harness tunggal mana pun. Harness adalah konsumen yang dapat dipertukarkan dari niat itu. Saat asisten baru tiba, Anda mengadopsinya dengan menambahkan adaptor, bukan dengan menulis-ulang konfigurasi Anda. Saat asisten yang Anda gunakan tak lagi disukai, Anda melepasnya tanpa kehilangan tata kelola yang Anda bangun. Profil adalah aset; harness adalah target render. Harness dapat dipakai untuk coding, chat, cowork, riset, atau menulis — profil bersifat agnostik terhadap untuk apa harness itu digunakan.
Ini adalah inversi yang disengaja. Jalur umum adalah mengonfigurasi setiap peralatan secara langsung, yang membuat investasi Anda tersandera pada keawetan dan format peralatan tersebut. Apothem memperlakukan konfigurasi sebagai modal portabel dan harness sebagai terminal yang dapat dibuang.
Masalahnya
Setiap harness memiliki format konfigurasinya sendiri:
Claude Code: CLAUDE.md + settings.json
Cursor: .cursor/rules/*.mdc
GitHub Copilot: .github/copilot-instructions.md
Windsurf: .devin/rules/
Codex: AGENTS.mdTanpa Apothem, Anda memelihara N berkas konfigurasi terpisah yang menyimpang seiring waktu.
Solusi Apothem
One shared Apothem profile (YAML) + packaged cohorts
identity.name
preferences.style
rules[]
|
v
Adapter layer (HarnessAdapter protocol — src/apothem/harnesses/<harness>/)
|
+---> Claude Code adapter -> ~/.claude/
+---> Cursor adapter -> .cursor/rules/*.mdc
+---> Copilot adapter -> .github/copilot-instructions.md
+---> Windsurf adapter -> .devin/rules/
+---> ...Anda mengedit profil bersama sekali, lalu menjalankan apothem update --harness <name> atau
apothem update --harness all --project <path> untuk menyebarkan perubahan.
apothem harnesses list mencetak himpunan yang terdaftar.
Mengapa "apothem"
Nama ini mengkodekan arsitekturnya. Dalam geometri, sebuah apothem adalah garis tegak lurus dari pusat poligon beraturan ke titik tengah salah satu sisinya — satu jarak dari inti ke setiap tepi, identik di setiap arah. Itulah desainnya: satu profil bersama di pusat, tujuh belas harness berjarak-sama di keliling, setiap materialisasi berjarak sama dari sumber kebenaran. Inti tidak berubah saat tepi berubah; tepi-tepi berbagi satu hubungan dengan inti. Penyimpangan secara struktural mustahil.
Jaminan portabilitas
Aturan yang ditandai portability: universal dijamin dapat diterjemahkan ke setiap
harness yang didukung. Aturan yang ditandai portability: project-specific mungkin memerlukan
dokumentasi override per-harness di badan aturan.
Konsep
Konsep Apothem — gagasan di balik peralatan ini: sikap agnostik-host, identitas kognitif, tinjauan audit, dan tingkat keseriusan.
Perencanaan yang dapat dilanjutkan
Bagaimana Apothem mengeksternalisasi status kerja ke sebuah suite .apothem/plans/ lokal proyek (dengan .plans/ sebagai fallback kompatibilitas-mundur yang didukung) sehingga pekerjaan berjalan-lama bertahan melewati batas sesi, akun, dan mesin.