# Компоненты
[Home](/ru/ai)
[Catalog](/ru/ai/catalog)
Что такое компоненты ai_stp и как они попадают в сетап.
## Pages
[Публикация и авторство](/ru/ai/docs/authoring)
[Команды CLI](/ru/ai/docs/commands)
[Поддерживаемые харнессы](/ru/ai/docs/harnesses)
[ai_stp](/ru/ai/docs)
[Быстрый старт](/ru/ai/docs/quickstart)
[Проверки безопасности](/ru/ai/docs/security-checks)
[Доверие и безопасность](/ru/ai/docs/trust)
[Каталог](/ru/ai/docs/catalog)
[CLI](/ru/ai/docs/cli)
[Телеметрия установки](/ru/ai/docs/cli/telemetry)
[Публикация](/ru/ai/docs/publishing)
[agent](/ru/ai/docs/components/agent)
[command](/ru/ai/docs/components/command)
[hook](/ru/ai/docs/components/hook)
[Компоненты](/ru/ai/docs/components)
[instruction](/ru/ai/docs/components/instruction)
[mcp](/ru/ai/docs/components/mcp)
[plugin](/ru/ai/docs/components/plugin)
[setting](/ru/ai/docs/components/setting)
[skill](/ru/ai/docs/components/skill)
[Понятия](/ru/ai/docs/concepts)
[Сетапы](/ru/ai/docs/setups)
[Доверие и безопасность](/ru/ai/docs/trust-and-safety)
[Диагностика](/ru/ai/docs/troubleshooting)
## Content
# Компоненты
Компоненты — строительные части сетапа. Каждый компонент имеет вид, версию,
происхождение, ограничения совместимости и паспорт.
Один вид не подменяет другой. Например, MCP-сервер остаётся `mcp`, а инструкция
по его использованию остаётся содержимым `instruction` или `skill`.
## Быстрый выбор
| Если нужно | Вид компонента | Почему |
| --- | --- | --- |
| Добавить правила, память или стиль работы | [`instruction`](instruction.md) | Это текстовая политика для агента или харнесса |
| Описать повторяемый агентский workflow | [`skill`](skill.md) | Skill хранит процедуру, материалы и вспомогательные скрипты |
| Подключить внешний инструмент к агенту | [`mcp`](mcp.md) | MCP даёт агенту управляемый интерфейс к сервису или локальному tool |
| Выполнить действие на событии харнесса | [`hook`](hook.md) | Hook привязан к жизненному циклу и требует осторожности |
| Дать человеку или агенту именованную команду | [`command`](command.md) | Command делает повторяемый вход понятным и проверяемым |
| Добавить роль или специализированного subagent | [`agent`](agent.md) | Agent описывает область ответственности и ограничения роли |
| Расширить сам харнесс пакетом | [`plugin`](plugin.md) | Plugin устанавливает нативное расширение харнесса |
| Зафиксировать параметры и режимы | [`setting`](setting.md) | Setting хранит конфигурацию без секретов и без поведения |
## Матрица компонентов
| Вид | Что содержит | Что проверяет `ai_stp` | Типичный риск |
| --- | --- | --- | --- |
| `instruction` | Markdown, правила, память, ограничения | происхождение, версию, совместимость, область действия | слишком широкие или противоречивые правила |
| `skill` | `SKILL.md`, assets, scripts, references | структуру, совместимость, исполняемые помощники | скрытые side effects в скриптах |
| `mcp` | описание MCP-сервера и способ запуска | источник, разрешения, отсутствие секретов в паспорте | внешний доступ к данным или инструментам |
| `hook` | событие, действие, условия запуска | событие, target, восстановление, подтверждение | автоматическое изменение состояния |
| `command` | slash/CLI-команду и аргументы | имя, область, help, конфликт команд | неоднозначный или опасный shortcut |
| `agent` | роль, инструкции, ограничения | границы роли, совместимость, права | слишком широкие полномочия subagent |
| `plugin` | нативное расширение харнесса | пакет, версию, источник, install route | supply-chain и post-install поведение |
| `setting` | параметры, режимы, preferences | допустимые значения и отсутствие секретов | утечка приватных данных или дрейф конфигурации |
## Как компонент попадает в сетап
=== "1. Паспорт"
Компонент описывается паспортом: вид, версия, источник, совместимость,
ограничения и результаты проверок. Паспорт — это то, что может читать CLI,
каталог и agent.
=== "2. Кандидат"
`ai_stp` выбирает кандидатов из публичного каталога, локального реестра или
точно закреплённых пользовательских объектов. Линия доверия влияет на то,
можно ли показывать и устанавливать объект автоматически.
=== "3. Граф сетапа"
Сборщик сетапа строит граф компонентов и проверяет, что версии, харнесс,
зависимости и ограничения совместимы между собой.
=== "4. Provider"
Итоговое состояние target пишет только публичный provider конкретного
харнесса. Перед изменением создаются план, digest и резервная копия.
??? warning "Почему нельзя просто скопировать файлы в target"
У разных харнессов отличаются форматы, каталоги, правила безопасности и
жизненный цикл. Прямое копирование ломает provenance и rollback. Поэтому
`ai_stp` сначала строит проверяемый план, а уже затем передаёт применение
provider-слою.
## Версии
Публикуемая версия компонента неизменяема и имеет формат `X.Y`. Если меняется
содержимое, появляется новая версия.
## Совместимость
Компонент может подходить одному харнессу и быть недопустимым для другого.
Механические ограничения совместимости применяются до рассуждений агента.
Подробнее про статусы: [поддерживаемые харнессы](../harnesses.md).