Skip to content

CLI анықтамалығы

Барлық командаларды aiman бинарлық файлы ұсынады.

Жаһандық флагтар

ФлагСипаттама
--helpКоманда үшін анықтаманы көрсету
--versionБинарлық файл нұсқасын көрсету

aiman init

bash
aiman init <repo-url> [--path <dir>]

Инвентарь репозиторийін жалғайды.

Аргументтер:

  • <repo-url> — инвентарь Git репозиторийінің URL-і.

Флагтар:

  • --path <dir> — clone немесе репозиторийді тіркеу үшін жергілікті жол.

Мінез-құлық:

  • инвентарь репозиторийін клондайды немесе тіркейді;
  • бос репозиторий үшін құрылым жасайды;
  • жергілікті aim.local.yaml жасайды;
  • жаһандық конфигіге белсенді репозиторийді жазады;
  • бар файлдарды adoptable, existing AIM немесе conflicting ретінде классификациялайды.

aiman switch

bash
aiman switch <path>

Clone-сіз белсенді инвентарь репозиторийін ауыстырады.

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

aiman apply

bash
aiman apply [--dry-run]

Ағымдағы жергілікті инвентарьды Git операцияларынсыз AI орталарына қолданады.

Флагтар:

  • --dry-run — файлдарды жазбастан нені қолданатынын көрсету.

apply commit жасамайды, push/fetch орындамайды және published_hash немесе synced_hash-ті жаңартпайды.

aiman push

bash
aiman push [--dry-run]

Инвентарьды валидациялайды, commit жасайды және өзгерістерді remote-қа жібереді.

Флагтар:

  • --dry-run — commit/push-сіз жариялау жоспарын көрсету.

push remote жергілікті күйден жаңа болса немесе Git қауіпсіз емес күйде болса бұғатталады.

aiman sync

bash
aiman sync [--dry-run] [--force]

Remote-тан жарияланған күйді алады және оны жергілікті AI орталарына қолданады.

Флагтар:

  • --dry-run — репозиторий мен AI орталарына жазбастан жоспарды көрсету;
  • --force — жарияланған күйді қолданған кезде жергілікті өзгерістердің жоғалуына рұқсат беру.

sync merge орындамайды. Тарих айырылып кетсе, AIM тоқтап, Git-ті қолмен қалпына келтіруді сұрайды.

aiman status

bash
aiman status

Белсенді инвентарь репозиторийінің күйін көрсетеді:

  • жергілікті жарияланбаған өзгерістер;
  • managed paths күйі;
  • published/synced hash туралы мәліметтер;
  • мүмкін болса, remote күйі.

Шығару мысалы

Репозиторий синхрондалған, инвентарь қолданылған:

text
Repository:
  repo:     git@github.com:you/aim-loadout.git
  status:   clean
  position: up-to-date
  HEAD:     a1b2c3d
  origin:   a1b2c3d

Environment:
  published: a1b2c3d
  applied:   a1b2c3d
  status:    applied

Жергілікті өзгерістер мен жарияланбаған commit-тер бар:

text
Repository:
  repo:     git@github.com:you/aim-loadout.git
  status:   dirty
  position: ahead 2 commit(s)
  HEAD:     e4f5g6h
  origin:   a1b2c3d
  action:   run aiman push

Environment:
  published: a1b2c3d
  applied:   not set
  status:    unknown

aiman doctor

bash
aiman doctor

Жергілікті орнатуды диагностикалайды:

  • белсенді репозиторий;
  • табылған AI орталары;
  • адаптер жолдары;
  • инвентарь элементтерінің жарамдылығы;
  • міндетті MCP env айнымалылары;
  • remote қолжетімділігі және синхрондау күйі.

Шығару мысалы

Бәрі жақсы, барлық орталар табылған:

text
Active Repo: /home/user/.aim/aim-loadout (from /home/user/.config/aim/config.yaml)

=== AI Environments ===
✓ claude-code   /home/user/.claude   found
✓ cursor        /home/user/.cursor   found
✗ codex         /home/user/.codex    not found

=== Skills ===
Found: 4 valid, 0 invalid

=== Sync State ===
synced_hash:    a1b2c3d
published_hash: a1b2c3d
remote HEAD:    a1b2c3d
status:         up-to-date

=== MCP Environment Variables ===
✓ context7 › UPSTASH_REDIS_REST_URL   — set

=== Issues ===
• codex: not installed or not found at /home/user/.codex

Мәселелер бар — AI ортасы табылмады, міндетті айнымалы белгіленмеген:

text
Active Repo: /home/user/.aim/aim-loadout (from /home/user/.config/aim/config.yaml)

=== AI Environments ===
✓ claude-code   /home/user/.claude   found
✗ cursor        /home/user/.cursor   not found
✗ codex         /home/user/.codex    not found

=== Skills ===
Found: 2 valid, 1 invalid

=== Sync State ===
synced_hash:    not set
published_hash: not set
remote HEAD:    a1b2c3d
status:         not yet synced

=== MCP Environment Variables ===
✗ context7 › UPSTASH_REDIS_REST_URL   — missing (required)

=== Issues ===
• cursor: not installed or not found at /home/user/.cursor
• codex: not installed or not found at /home/user/.codex
• my-skill.md: invalid: name does not match filename
• context7 › UPSTASH_REDIS_REST_URL — missing (required)

aiman add

bash
aiman add skill <file|-> [--name <string>] [--overwrite]
aiman add mcp <file|-> [--name <string>] [--overwrite]

Файлдан немесе stdin-нен жергілікті репозиторийге инвентарь элементін (дағды немесе MCP сервері) қосады.

aiman add skill

bash
aiman add skill <file|->
aiman add skill ~/Downloads/my-skill.md
aiman add skill -

Файлдан немесе stdin-нен (-) skill оқиды, frontmatter-ді валидациялайды, атауды анықтайды және белсенді инвентарь репозиторийінде skills/<name>.md ретінде жазады.

Аргументтер:

  • <file|-> — skill файлының жолы немесе stdin-нен оқу үшін -.

Флагтар:

  • --name <string> — skill атауын қайта анықтау; белгіленбесе, атау файлдың frontmatter-інен алынады.
  • --overwrite — мазмұн конфликті кезінде бар skill-ді қайта жазу.

Мінез-құлық:

  • skills/<name>.md бірдей мазмұнмен бұрыннан болса — команда өзгеріссіз сәтті аяқталады;
  • skills/<name>.md басқа мазмұнмен болса және --overwrite белгіленбесе — --overwrite пайдалануды ұсынатын қате қайтарады.

Файлдан қосу мысалы:

bash
aiman add skill ~/Downloads/create-spec.md

Stdin-нен қосу мысалы:

bash
cat ~/Downloads/create-spec.md | aiman add skill -

aiman add mcp

bash
aiman add mcp <file|->
aiman add mcp jira.yaml
aiman add mcp -

YAML файлынан немесе stdin-нен (-) MCP сервері сипаттамасын оқиды, env-strip қолданады және нәтижені белсенді инвентарь репозиторийіне жазады.

Аргументтер:

  • <file|-> — MCP сервері YAML файлының жолы немесе stdin-нен оқу үшін -.

Флагтар:

  • --name <string> — сервер атауын қайта анықтау; белгіленбесе, атау файлдың name өрісінен алынады.
  • --overwrite — мазмұн конфликті кезінде бар MCP серверін қайта жазу.

Мінез-құлық:

  • mcp/<name>.yaml бірдей мазмұнмен бұрыннан болса — команда өзгеріссіз сәтті аяқталады;
  • mcp/<name>.yaml басқа мазмұнмен болса және --overwrite белгіленбесе — --overwrite пайдалануды ұсынатын қате қайтарады.

Env-strip: value толтырылған env өрістері mcp/<name>.yaml-да сақталмайды. Оның орнына нақты мәндер aim.local.yaml-да mcp_env: {<name>.<VAR>: value} кілті астында жазылады. Инвентарьда тек дескрипторлар сақталады: name, description, required, example. aim.local.yaml Git-тен алынып тасталған, сондықтан секреттер репозиторийге түспейді.

Кіріс файл мысалы:

yaml
name: jira
description: Jira MCP server
command: npx
args: [-y, mcp-jira]
targets: [claude_code]
env:
  - name: JIRA_API_KEY
    description: Jira API key
    required: true
    value: "secret123"

Команда орындалғаннан кейін:

  • mcp/jira.yaml value өрісінсіз дескрипторды қамтиды;
  • aim.local.yaml mcp_env: {jira.JIRA_API_KEY: "secret123"} қамтиды.

Файлдан қосу мысалы:

bash
aiman add mcp jira.yaml

Stdin-нен қосу мысалы:

bash
cat jira.yaml | aiman add mcp -

Сервер атауын қайта анықтау:

bash
aiman add mcp jira.yaml --name jira-work

Конфликт кезінде қайта жазу:

bash
aiman add mcp jira.yaml --overwrite

aiman import

bash
aiman import skill <name> --from <env> [--dry-run] [--overwrite]
aiman import mcp <name> --from <env> [--dry-run] [--overwrite] [--targets all]

Орнатылған AI ортасынан жергілікті репозиторийге инвентарь элементін (дағды немесе MCP сервері) импорттайды.

aiman import skill

bash
aiman import skill <name> --from <env>
aiman import skill create-spec --from claude-code
aiman import skill create-spec --from claude-code --dry-run

Көрсетілген AI ортасынан атауы бойынша skill оқиды, нормалайды және белсенді инвентарь репозиторийінде skills/<name>.md ретінде жазады.

Аргументтер:

  • <name> — импорттайтын skill атауы.

Флагтар:

  • --from <env> — импорт көзі (міндетті). Қолжетімді мәндер: claude-code, cursor, codex.
  • --dry-run — дискіге жазбастан skill мазмұнын шығару.
  • --overwrite — мазмұн конфликті кезінде бар skill-ді қайта жазу.

AI ортасы бойынша skill көздері:

AI ортасыИдентификаторSkill жолдары
Claude Codeclaude-code~/.claude/skills/*.md және ~/.claude/skills/<name>/SKILL.md
Codex CLIcodex~/.codex/skills/<name>/SKILL.md
CursorcursorSkill-дің нативті тұжырымдамасы жоқ — әрдайым бос тізім қайтарады

Мінез-құлық:

  • skill көрсетілген ортада табылмаса — қате қайтарады;
  • skills/<name>.md бірдей мазмұнмен бұрыннан болса — өзгеріссіз сәтті аяқталады;
  • skills/<name>.md басқа мазмұнмен болса және --overwrite белгіленбесе — --overwrite пайдалануды ұсынатын қате қайтарады.

Claude Code-тан импорттау мысалы:

bash
aiman import skill create-spec --from claude-code

Жазбасыз тексеру:

bash
aiman import skill create-spec --from claude-code --dry-run

aiman import mcp

bash
aiman import mcp <name> --from <env> [--dry-run] [--overwrite] [--targets all]
aiman import mcp context7 --from claude-code
aiman import mcp jira --from cursor --dry-run
aiman import mcp context7 --from claude-code --targets all

Көрсетілген AI ортасының тірі конфигурациясын сканерлейді, MCP серверлерін табады, env-strip қолданады және дескрипторды белсенді инвентарь репозиторийіне жазады.

Аргументтер:

  • <name> — импорттайтын MCP сервері атауы.

Флагтар:

  • --from <env> — импорт көзі (міндетті). Қолжетімді мәндер: claude-code, cursor, codex.
  • --dry-run — файлдарды жазбастан YAML дескрипторын шығару.
  • --overwrite — мазмұн өзгеше болса бар файлды қайта жазу.
  • --targets all — дескрипторда барлық үш адаптерді (claude-code, cursor, codex) нысана орталар ретінде белгілеу. Әдепкі бойынша тек көз орта пайдаланылады.

Мінез-құлық:

  • Env-strip: env айнымалыларының нақты мәндері mcp/<name>.yaml-да сақталмайды. Оның орнына олар aim.local.yaml-да mcp_env: {<name>.<VAR>: value} кілті астында жазылады. Инвентарьға тек дескрипторлар түседі: name, required. aim.local.yaml Git-тен алынып тасталған, сондықтан секреттер репозиторийге түспейді.
  • Дедупликация: бір сервер атауы бірдей команда мен аргументтермен бірнеше рет кездессе, бірінші жазба алынады.
  • Белгісіздік (AmbiguousError): бір сервер атауы әр түрлі командалармен немесе аргументтермен кездессе, команда қатемен аяқталады — --from арқылы көзді нақты көрсету керек.
  • Сервер табылмады: көрсетілген атаумен сервер ортаның конфигурациясында болмаса, MCP server "<name>" not found in <env> қатесімен аяқталады.
  • Белгісіз орта: --from мәні танылмаса, unknown environment: X; available: claude-code, cursor, codex қатесімен аяқталады.
  • mcp/<name>.yaml бірдей мазмұнмен бұрыннан болса — өзгеріссіз сәтті аяқталады;
  • mcp/<name>.yaml басқа мазмұнмен болса және --overwrite белгіленбесе — --overwrite пайдалануды ұсынатын қате қайтарады.

AI ортасы бойынша MCP конфигурация көздері:

AI ортасыИдентификаторКонфигурация файлы
Claude Codeclaude-code~/.claude/settings.json (mcpServers кілті)
Cursorcursor~/.cursor/mcp.json (mcpServers кілті)
Codex CLIcodex~/.codex/config.toml (mcp_servers бөлімі)

Claude Code-тан импорттау мысалы:

bash
aiman import mcp context7 --from claude-code

Жазбасыз тексеру:

bash
aiman import mcp context7 --from claude-code --dry-run

Барлық адаптерлерді нысана ретінде белгілеп импорттау:

bash
aiman import mcp context7 --from claude-code --targets all

Файл бұрыннан болса қайта жазу:

bash
aiman import mcp context7 --from claude-code --overwrite

Ағымдағы жалпыға ашық scope-тан тыс командалар

aiman list кодтық базада тарихи команда ретінде болуы мүмкін, бірақ толыққанды жалпыға ашық контракт loadouts пен толық inventory view жүзеге асырылғанға дейін қалдырылды.

Released under the Apache 2.0 License.