Конфигурация анықтамалығы
AIM конфигурацияның үш деңгейін пайдаланады:
- пайдаланушының жаһандық конфигурациясы;
- инвентарь репозиторийінің жалпы конфигурациясы;
- нақты машинаның жергілікті конфигурациясы.
Жаһандық конфиг
Жол:
~/.config/aim/config.yamlМақсаты:
- белсенді инвентарь репозиторийіне жолды сақтау;
- кез келген каталогтан
aiman status,aiman sync,aiman pushіске қосуға мүмкіндік беру; - болашақта editor сияқты пайдаланушы параметрлерін сақтау.
Мысал:
repo: /home/alex/aim-loadout
loadout: documentation-workaiman 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
Жол:
<inventory>/aim.yamlGit-ке сақталады және барлық машиналарда бірдей.
aiman init жасайтын мысал:
skill_paths: {}skill_paths дағдыларды орнату жолдарын болашақтағы теңшелімге арнап сақталған. Ағымдағы нұсқада адаптерлер әдепкі жолдарды және aim.local.yaml-дан алынған қайта анықтауларды пайдаланады.
aim.yaml-ды тек осы инвентарь репозиторийінің барлық пайдаланушылары үшін жалпы болуы керек параметрлерге пайдаланыңыз.
aim.local.yaml
Жол:
<inventory>/aim.local.yamlGit-ке сақталмайды. Әр машинада жасалады.
Мысал:
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.iorepo (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_hash — aiman sync арқылы AI орталарына толығымен қолданылған соңғы commit.
Бұл hash белгілері инвентарь күйін түсіндіруге көмектеседі, бірақ қорғаныс тексерулері үшін Git күйін ақиқат көзі ретінде алмастырмайды.