# Паспорт компонента
[Home](/ru/ai)
[Catalog](/ru/ai/catalog)
Показать, предложить, обновить, провалидировать и проверить качество локального паспорта компонента.
## 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
# Паспорт компонента
Паспорт компонента — локальное версионированное описание одного adopted
объекта. Эти команды показывают текущий черновик, предлагают факты для
подтверждения, пишут новую ревизию и сообщают, структурно ли head готов к
публикации.
Они не публикуют. Они не меняют `author_verified` и `component_verified`.
Подсказки quality необязательны и механические. Паспорта разработчика и
устройства — другая группа: [Паспорта](passport.md).
Повседневная регистрация — intent `author`. Passport leaves ниже — expert
recovery.
```bash
ai-stp task start --intent author --idempotency-key author-session-01 --json
```
## Таблица команд
| Команда | Mutability | Confirmation | Когда |
| --- | --- | --- | --- |
| `ai-stp component passport show` | `read` | `none` | показать текущий локальный черновик паспорта |
| `ai-stp component passport suggest` | `read` | `none` | предложить точные факты манифеста, не меняя черновик |
| `ai-stp component passport update` | `apply` | `plan_digest` | добавить подтверждённые факты как новую content-addressed ревизию |
| `ai-stp component passport validate` | `read` | `none` | сообщить каждый структурный блокер публикации этой ревизии |
| `ai-stp component passport quality` | `read` | `none` | необязательные подсказки автору; trust и готовность не меняет |
`--json` глобальный. Всегда передавайте его.
## Show
```bash
ai-stp component passport show --id <stable_id> --json
```
`--id` — стабильный идентификатор adopted-компонента.
Ответ — вид паспорта: `stable_id`, `kind`, `revision_id`,
`parent_revision_ids`, `owner_id`, `created_at`, `facts`, `schema_version`.
`kind` равен `component`. `revision_id` — head, который нужно назвать, если
пишете patch.
## Suggest
Suggest читает adopted-байты и предлагает факты закрытой схемы. Ничего не
пишет. Неразрешённые поля остаются неразрешёнными, пока вы не подтвердите
их через `update`.
```bash
ai-stp component passport suggest --id <stable_id> --json
```
Поля успеха: `stable_id`, `revision_id`, `suggestions`,
`unresolved_fields`, `schema_version`. У каждого предложения есть `field`,
`value` и `source_refs`. В файл patch копируйте только просмотренные факты.
## Update
Update применяет ограниченный JSON-patch закрытой схемы как потомка
текущего head. Токен подтверждения — `--expected-revision`, точный
`revision_id`, который вернул `show`. Нет `--confirm` и нет
`--expected-plan-digest`.
```bash
ai-stp component passport update \
--id <stable_id> \
--expected-revision <revision_id> \
--from ./passport-patch.json \
--json
```
`--from` — путь к patch. Секреты, тела `.env`, токены и абсолютные личные
пути в этот файл не входят.
Если patch содержит `tags`, передавайте от 1 до 10 уникальных тегов. Каждый
тег — от 2 до 32 символов: только строчные английские буквы, цифры и дефис.
Пробел заменяйте дефисом; типографская пунктуация и неанглийские буквы
отклоняются.
Ответ — новый вид паспорта. `revision_id` изменился. Предыдущий head — в
`parent_revision_ids`. Второй вызов со старым `--expected-revision`
отклоняется: head сдвинулся.
## Validate
Validate сообщает каждый структурный блокер публикации текущей ревизии.
Это локальный вердикт, не разрешение писать в облако. Публикации всё равно
нужен свой аутентифицированный план.
```bash
ai-stp component passport validate --id <stable_id> --json
ai-stp component passport validate --id <stable_id> --for-publication --json
```
`--for-publication` выбирает профиль готовности к публичной публикации.
Этот профиль команда и так применяет. Флаг принят, чтобы старое написание
вызывающего всё ещё разбиралось.
Поля успеха: `stable_id`, `revision_id`, `ready`, `missing_fields`,
`invalid_fields`, `for_publication`, `schema_version`. `ready: false` —
успешный отчёт о блокерах, а не упавшая команда. Исправьте черновик через
`update`, затем validate снова.
## Quality
Quality показывает необязательные механические подсказки автору. Черновик,
trust и готовность к публикации не меняет. `affects_component_verified`
равен `false`.
```bash
ai-stp component passport quality --id <stable_id> --json
```
Измерения — подсказки. Не пропускайте `validate`, потому что quality
выглядел зелёным. Не считайте quality платформенным сканом безопасности;
он бывает при публикации.
## Happy path
Повседневный путь:
```bash
ai-stp task start --intent author --idempotency-key author-session-01 --json
```
Expert recovery:
```text
component adopt --path <exact>
→ component passport show --id <stable_id>
→ component passport suggest --id <stable_id>
→ просмотреть suggestions; написать patch
→ component passport update --id <stable_id> --expected-revision <rev> --from <patch>
→ component passport validate --id <stable_id>
→ component version release --id <stable_id>
```
После каждой записи показывайте конверт. Следующий `update` должен назвать
новый `revision_id`.
## Именованные поля успеха
| Команда | Какие поля читать |
| --- | --- |
| `show` / `update` | `stable_id`, `revision_id`, `kind`, `facts`, `parent_revision_ids` |
| `suggest` | `revision_id`, `suggestions`, `unresolved_fields` |
| `validate` | `ready`, `missing_fields`, `invalid_fields`, `revision_id` |
| `quality` | статусы измерений и checks; `affects_component_verified` |
## Отказы
| Что видно | Что это значит | Что делать |
| --- | --- | --- |
| `AI_STP_VALIDATION_ERROR` | нет `--id`, `--expected-revision` или `--from`, или patch не закрытой схемы | исправить запрос; не слать свободный JSON-объект |
| `AI_STP_NOT_FOUND` | этот id — не adopted-компонент | `component find` или `component discover` |
| `AI_STP_CONFLICT` / `AI_STP_PRECONDITION_FAILED` | `--expected-revision` больше не head | `passport show`, собрать patch заново, update снова |
| `AI_STP_PLAN_STALE` | patch готовили против байтов, которые сдвинулись | как при conflict: show, затем новый patch |
| `ready: false` | структурные блокеры остались | прочитать `missing_fields` и `invalid_fields`; `update`; validate снова |
| секреты в patch | паспорт не держит учётные данные | убрать их; хранить секреты вне паспорта |
| `--confirm` отвергнут | этого флага нет в декларации | подтверждать update только `--expected-revision` |
`validate` с `ready: false` — не `ok: false`. Конверт всё равно успех.
Блокеры — данные.
## Связанные страницы
- [Команды компонента](component.md)
- [Обнаружение и adopt](component-discover.md)
- [Источник компонента](component-source.md)
- [Публикация компонента](component-publish.md)
- [Паспорта](passport.md)
- [Публикация](../publishing/index.md)
- [Доверие и безопасность](../trust-and-safety/index.md)
- [Проверки безопасности](../security-checks.md)
## Флаги берутся из continuation argv
```bash
ai-stp task intents --json
```
Не дампьте `help --agent` как прелюдию. Флаги текущей задачи — в continuation `argv`.
Эта страница группирует команды паспорта, чтобы человек их нашёл.
Если страница и CLI расходятся, следуйте CLI.