Nimejenga Local Control Plane kwa ajili ya Coding Agents zangu

Kutumia wakala tofauti wa AI ilikuwa vurugu.

Nilikuwa nikitumia Copilot, Claude Code, na OpenCode. Kila zana ilikuwa na home directory yake, mipangilio yake, na kumbukumbu yake. Kila mara nilipoongeza ujuzi au sheria mpya, ilibidi nijiulize: zana hii inatarajia ipo wapi?

Home directory yangu ikawa kama kabati la takataka la folda za AI.

Nilijaribu kutumia faili za Markdown kupitisha mipango kati ya wakala. Ilisaidia, lakini ilifeli. Wakala mmoja ungepoteza dhana fulani, na wakala anayefuata angeleta matokeo yasiyo sahihi. Faili zilitoa data, lakini hazikutoa muktadha wa pamoja (shared context).

Nilikuwa nahitaji njia ya:

  • Kuandika sheria za kiwango cha juu mara moja tu.
  • Kuweka sheria za ruhusa mahali pamoja.
  • Kuacha kunakili ujuzi kwa mkono.
  • Kushiriki kumbukumbu katika miradi na vikao tofauti.

Nimejenga local control plane ili kutatua hili.

Kiini cha mpangilio wangu ni folda moja: ~/.ai.

Badala ya folda zilizotawanyika, ninatumia symlinks. Zana zinafikiri zipo katika nafasi zao, lakini muundo halisi upo mahali pamoja. Ninapitisha trafiki yote ya modeli kupitia local proxy na ninatumia SQLite database ya pamoja kwa ajili ya kumbukumbu kupitia MCP.

Hii inatenganisha kazi mbili tofauti:

  1. Routing: Maombi ya modeli hupitia local proxy kabla ya kufikia mtoa huduma (provider).
  2. Memory: Taarifa za muda mrefu huhifadhiwa kwenye hifadhi ya ndani (local store).

Ikiwa modeli itatenda mambo kwa njia isiyo ya kawaida, ninakagua proxy. Ikiwa wakala atasahau maelezo, ninakagua kumbukumbu. Hii inafanya debugging iwe rahisi.

Kumbukumbu yangu ya pamoja huhifadhi mambo ambayo ni gharama kubwa kuyagundua upya:

  • Maamuzi ya mradi.
  • Maelezo ya usanifu (architecture notes).
  • Mapendeleo ya mtiririko wa kazi (workflow preferences).
  • Hitilafu (bugs) zinazojirudia.

Pia nimeunganisha usalama wangu mahali pamoja. Ninatumia faili za pamoja kwa ajili ya viwango vya coding na amri zilizozuiliwa. Hii inahakikisha kuwa kub