Skip to content

Конфигурация анықтамалығы

AIM конфигурацияның үш деңгейін пайдаланады:

  • пайдаланушының жаһандық конфигурациясы;
  • инвентарь репозиторийінің жалпы конфигурациясы;
  • нақты машинаның жергілікті конфигурациясы.

Жаһандық конфиг

Жол:

text
~/.config/aim/config.yaml

Мақсаты:

  • белсенді инвентарь репозиторийіне жолды сақтау;
  • кез келген каталогтан aiman status, aiman sync, aiman push іске қосуға мүмкіндік беру;
  • болашақта editor сияқты пайдаланушы параметрлерін сақтау.

Мысал:

yaml
repo: /home/alex/aim-loadout
loadout: documentation-work

aiman init және aiman switch командалары жазады.

loadout (жаһандық конфигте)

Белсенді пиннің атауы — aiman sync толық инвентарьдың орнына қолданатын loadout. Пин — сақталған күй: ол оны нақты алып тастамайынша, CLI-дің іске қосылулары арасында қалпына келтірілмейді және инвентарь жаңартуларынан аман қалады.

Бос немесе жоқ өріс «пин орнатылмаған» дегенді білдіреді — aiman sync бұрынғыдай, бүкіл инвентарьды аддитивті қолданып жұмыс істейді. Бұл өрістің мәні ретінде "Default" жолы ешқашан жазылмайды: толық инвентарьға оралу арнайы атаумен емес, өрісті тазалау арқылы білдіріледі, сондықтан пиннің жоқтығы мен Default режимі конфиг деңгейінде ажыратылмайды — бұл саналы шешім.

Өрісті мына командалар жазады:

  • aiman apply --loadout <name> --pin — loadout атауын жазады;
  • aiman apply --default және aiman apply --unpin — өрісті тазалайды;
  • aiman switch — репозиторийді ауыстырғанда өрісті сөзсіз тазалайды, тіпті жаңа репозиторийде дәл сол атаумен loadout болса да.

AIM пинді жазу сәтінде loadout-тың бар-жоғын тексермейді — тек әр қолданғанда ғана тексереді (aiman sync, сондай-ақ қайталанған aiman apply --loadout <name> --pin). Сондықтан пин сақталғаннан кейін жарамсыз болып қалуы мүмкін: loadout атауы өзгертілген, жойылған немесе басқа машинадан жарияланған болуы ықтимал. Бұл жағдайда sync pinned loadout "X" not found in inventory қатесімен тоқтайды — қараңыз: Қателер анықтамалығы.

Пин концепциясы туралы толығырақ — Концепцияларда, командалар мен шығару — CLI анықтамалығында.

aim.yaml

Жол:

text
<inventory>/aim.yaml

Git-ке сақталады және барлық машиналарда бірдей.

aiman init жасайтын мысал:

yaml
skill_paths: {}

skill_paths дағдыларды орнату жолдарын болашақтағы теңшелімге арнап сақталған. Ағымдағы нұсқада адаптерлер әдепкі жолдарды және aim.local.yaml-дан алынған қайта анықтауларды пайдаланады.

aim.yaml-ды тек осы инвентарь репозиторийінің барлық пайдаланушылары үшін жалпы болуы керек параметрлерге пайдаланыңыз.

aim.local.yaml

Жол:

text
<inventory>/aim.local.yaml

Git-ке сақталмайды. Әр машинада жасалады.

Мысал:

yaml
repo: git@github.com:you/aim-loadout.git
synced_hash: abc1234
published_hash: abc1234

adapters:
  claude_code:
    base_dir: /home/alex/.claude
  cursor:
    base_dir: /home/alex/.cursor
  codex:
    base_dir: /home/alex/.codex

mcp_env:
  context7.UPSTASH_REDIS_REST_URL: https://example.upstash.io

repo (aim.local.yaml-да)

Осы машинада жалғанған инвентарь Git репозиторийінің URL-і. aiman init командасы автоматты түрде жазады. Қолмен өзгертпеңіз.

adapters

Ағымдағы машинада AI ортасының конфигурациялық каталогына жолды қайта анықтайды. Тек AI орта стандартты емес жолда орнатылса пайдаланыңыз.

Бөлім белгіленбесе, AIM жолдарды автоматты анықтайды: Claude Code — ~/.claude, Cursor — ~/.cursor, Codex CLI — ~/.codex. Linux-та ~ /home/<user> болады, macOS-та — /Users/<user>, Windows-та — C:\Users\<user>.

Адаптер кілттері: claude_code, cursor, codex. Әрқайсысы base_dir өрісін қабылдайды.

mcp_env

MCP серверлерінің env айнымалыларының жергілікті мәндерін сақтайды. Кілттер форматы: <server-name>.<VAR_NAME>.

Бұл мәндер секреттер болуы мүмкін. aim.local.yaml .gitignore-да болуы керек.

published_hash және synced_hash

published_hash — осы машинадан aiman push арқылы соңғы сәтті жарияланған commit.

synced_hashaiman sync арқылы AI орталарына толығымен қолданылған соңғы commit.

Бұл hash белгілері инвентарь күйін түсіндіруге көмектеседі, бірақ қорғаныс тексерулері үшін Git күйін ақиқат көзі ретінде алмастырмайды.

Released under the Apache 2.0 License.