# CLI
[Home](/ru/ai)
[Catalog](/ru/ai/catalog)
Как человек и агент работают с ai_stp CLI: JSON-конверт, mutability и группы команд.
## Pages
[Главная](/ru/ai/docs)
### Быстрый старт
[Быстрый старт](/ru/ai/docs/quickstart)
[Для человека](/ru/ai/docs/quickstart/human)
[Для ИИ-агента](/ru/ai/docs/quickstart/agent)
[Харнессы](/ru/ai/docs/harnesses)
[Понятия](/ru/ai/docs/concepts)
[Каталог](/ru/ai/docs/catalog)
### CLI
[CLI](/ru/ai/docs/cli)
[Карта команд](/ru/ai/docs/cli/commands)
[Наблюдение](/ru/ai/docs/cli/observe)
[Конфигурация](/ru/ai/docs/cli/config)
[Телеметрия](/ru/ai/docs/cli/telemetry)
[Устройство](/ru/ai/docs/cli/device)
[Паспорта](/ru/ai/docs/cli/passport)
[Вход](/ru/ai/docs/cli/auth)
[Согласие](/ru/ai/docs/cli/consent)
[Проект](/ru/ai/docs/cli/project)
[Toolchain](/ru/ai/docs/cli/toolchain)
[Harness](/ru/ai/docs/cli/harness)
[Agent Skill CLI](/ru/ai/docs/cli/skill)
[Реестр](/ru/ai/docs/cli/registry)
#### Компонент
[Обзор](/ru/ai/docs/cli/component)
[Обнаружение](/ru/ai/docs/cli/component-discover)
[Паспорт](/ru/ai/docs/cli/component-passport)
[Источник](/ru/ai/docs/cli/component-source)
[Публикация](/ru/ai/docs/cli/component-publish)
[Выбор](/ru/ai/docs/cli/select)
[Установка](/ru/ai/docs/cli/install)
[Target](/ru/ai/docs/cli/target)
[Setup](/ru/ai/docs/cli/setup)
[Provider](/ru/ai/docs/cli/provider)
[Синхронизация](/ru/ai/docs/cli/sync)
[Доступ](/ru/ai/docs/cli/grant)
[Жалобы](/ru/ai/docs/cli/report)
[Owner](/ru/ai/docs/cli/owner)
[Publication](/ru/ai/docs/cli/publication)
[Eval](/ru/ai/docs/cli/eval)
### Веб
[Веб](/ru/ai/docs/web)
[Главная](/ru/ai/docs/web/home)
[Каталог](/ru/ai/docs/web/catalog)
[Карточка компонента](/ru/ai/docs/web/catalog-component)
[Карточка сетапа](/ru/ai/docs/web/catalog-setup)
[Региональные сервисы](/ru/ai/docs/web/services)
[Издатели](/ru/ai/docs/web/publishers)
[Content](/ru/ai/docs/web/content)
[Эта документация](/ru/ai/docs/web/docs)
[Контакт](/ru/ai/docs/web/contact)
[Правовые документы](/ru/ai/docs/web/legal)
[Вход](/ru/ai/docs/web/login)
[Аккаунт](/ru/ai/docs/web/account)
[Профиль](/ru/ai/docs/web/profile)
[Устройства](/ru/ai/docs/web/devices)
[Объекты](/ru/ai/docs/web/objects)
[Доступ](/ru/ai/docs/web/access)
[Жалобы](/ru/ai/docs/web/reports)
[Лайки](/ru/ai/docs/web/likes)
[Онбординг](/ru/ai/docs/web/onboarding)
[Публикация](/ru/ai/docs/web/publications)
### Компоненты
[Компоненты](/ru/ai/docs/components)
[instruction](/ru/ai/docs/components/instruction)
[skill](/ru/ai/docs/components/skill)
[mcp](/ru/ai/docs/components/mcp)
[hook](/ru/ai/docs/components/hook)
[command](/ru/ai/docs/components/command)
[agent](/ru/ai/docs/components/agent)
[plugin](/ru/ai/docs/components/plugin)
[setting](/ru/ai/docs/components/setting)
[Сетапы](/ru/ai/docs/setups)
### Публикация
[Публикация](/ru/ai/docs/publishing)
[Авторство](/ru/ai/docs/publishing/authoring)
### Доверие и безопасность
[Обзор](/ru/ai/docs/trust-and-safety)
[Проверки безопасности](/ru/ai/docs/security-checks)
[Диагностика](/ru/ai/docs/troubleshooting)
[cli](/ru/ai/docs/components/cli)
## Content
# CLI
CLI — рабочая поверхность продукта. Он обнаруживает факты, ведёт паспорта,
выбирает состав и просит provider харнесса применить план. Сайт показывает
каталог и аккаунт. Нативное состояние harness он не пишет.
Каждую команду, которую человек копирует из этого справочника, запускайте с
`--json`. CLI печатает ровно один конверт в stdout и больше ничего.
## Как читать конверт
При `ok: true` результат в `data`. `warnings` всё равно стоит показать.
При `ok: false` `error.code` — стабильный код из закрытого реестра;
`next_actions` называет разумную следующую команду, а не разрешение.
Не угадывать следующий шаг по классу кода выхода. Повторять вызов только если
конверт говорит `retryable: true`. После неподтверждённого таймаута сначала
читайте статус, а не повторяйте apply.
## Mutability и confirmation
Эти два поля отвечают на разные вопросы.
| `mutability` | Смысл |
| --- | --- |
| `read` | наблюдает; ничего не создаёт |
| `plan` | записывает проверяемый план или снимок; target не меняет |
| `apply` | меняет состояние |
| `destructive` | уничтожает идентичность или управляемые байты; всегда отдельное решение |
| `confirmation` | Смысл |
| --- | --- |
| `none` | лишнего токена нет; это не «можно запускать не спросив» |
| `explicit_flag` | передать флаг из дескриптора, обычно `--confirm` |
| `plan_digest` | передать `--expected-plan-digest` неизменённого плана |
Команда чтения на свежей установке возвращает типизированную пустоту. Она не
запускает молча `device init`.
## Machine help — это парсер
Повседневное обнаружение:
```bash
ai-stp task intents --json
```
Expert: полный реестр этой установки:
```text
ai-stp help --agent --json
```
Документация группирует команды, чтобы человек нашёл страницу. Если страница и CLI расходятся,
следуйте CLI.
Полный список по одной строке на команду — [карта команд](commands.md).
## Группы команд
| Группа | Страница | Когда открывать |
| --- | --- | --- |
| Наблюдение | [Наблюдение](observe.md) | первый запуск, здоровье, machine help |
| Конфигурация | [Конфигурация](config.md) | значения, которые эта установка должна соблюдать |
| Телеметрия | [Телеметрия установки](telemetry.md) | необязательный анонимный ping установки |
| Устройство | [Устройство](device.md) | идентичность этой установки |
| Паспорта | [Паспорта](passport.md) | факты разработчика и устройства |
| Вход | [Вход](auth.md) | сессия аккаунта и `link web` |
| Согласие | [Согласие](consent.md) | непроверенные издатели и major-линии |
| Проект | [Проект](project.md) | discover, индекс, символы, паспорт проекта |
| Toolchain | [Toolchain](toolchain.md) | управляемые инструменты и обзор harness |
| Программа harness | [Программа harness](harness.md) | бинарник harness, не сетап |
| Agent Skill | [Agent Skill CLI](skill.md) | skill самого CLI, не kind `skill` |
| Реестр | [Реестр](registry.md) | поиск в каталоге, fetch, локальные port |
| Компонент | [Команды компонента](component.md) | discover → паспорт → публикация |
| Выбор | [Выбор](select.md) | eligibility, proposal, отчёты |
| Установка | [Установка](install.md) | intent install; expert recover/resume остаются |
| Target | [Target](target.md) | ежедневный статус, diff, backup, именованный rollback |
| Setup | [Команды сетапа](setup.md) | compose, импорт, update, публикация |
| Provider | [Provider](provider.md) | бинарник, который пишет нативное состояние |
| Синхронизация | [Синхронизация](sync.md) | частный поток аккаунта |
| Доступ | [Доступ](grant.md) | доступ к major-линии |
| Жалобы | [Жалобы](report.md) | закрытые жалобы |
| Owner | [Owner](owner.md) | серверные объекты, которыми вы владеете |
| Publication | [Publication](publication.md) | attest, plan, confirm |
| Eval | [Eval](eval.md) | локальная эталонная оценка |
## Рабочий цикл
```text
task intents --json
→ task start --intent <shipped> --idempotency-key <key> --json
→ follow continuations (исполнять argv только когда actor равен cli)
→ сообщить payload verification
```
Expert leaves (`install plan` / `approve` / `apply`) остаются для recovery.
Повседневные install, change и switch сливают эти шаги in-process под
соответствующим intent.
Агент пропускает шаг, только если предыдущий конверт уже сделал его ненужным.
Механическую проверку он не пропускает.
## Чего CLI не делает
- не вызывает model API и не просит ключ модели;
- не пишет target harness сам — это делает только public provider;
- не кладёт секреты, тела `.env` и токены в паспорт;
- не считает `author_verified` доказательством безопасности версии компонента.
## Типичные отказы
| Что видно | Что это значит | Что делать |
| --- | --- | --- |
| мутирующая команда без `--json` | в stdout смешался человеческий текст | добавить `--json` и читать один конверт |
| stale plan | байты плана изменились | построить новый план, показать, подтвердить снова |
| нет confirmation | требовался `explicit_flag` или `plan_digest` | прочитать дескриптор; не выдумывать имя флага |
| команды нет в machine help | этой установки её нет | остановиться; не подменять похожей командой |
Первый запуск связным текстом — [Быстрый старт для человека](../quickstart/human.md).
Ритуал сессии для агента — [Быстрый старт для ИИ-агента](../quickstart/agent.md).