Паспорта
Создать, показать и обновить паспорта разработчика и устройства, которые эта установка ведёт локально.
Паспорта
Паспорт — версионированное машиночитаемое описание объекта. На этой странице только два паспорта, которые описывают вас и эту машину: паспорт разработчика и паспорт устройства. Паспорта компонента, сетапа и проекта — другие объекты с другими командами.
Паспорт разработчика объявляет предпочтения. Паспорт устройства записывает то, что наблюдается на этой машине. Эти факты нельзя менять местами. Поле окружения на паспорте разработчика отклоняется, а предпочтение не является наблюдением.
Команды
| Команда | Mutability | Confirmation | Когда |
|---|---|---|---|
ai-stp passport developer init | apply | none | создать паспорт разработчика этой установки |
ai-stp passport developer show | read | none | показать паспорт разработчика на текущем head |
ai-stp passport developer update | apply | none | заявить факты разработчика, добавив одну ревизию |
ai-stp passport device refresh | apply | none | создать паспорт устройства или привести его к тому, что сейчас наблюдаемо |
ai-stp passport device show | read | none | показать паспорт устройства на текущем head |
passport developer init идемпотентен: второй запуск — no-op, а не
второй паспорт. passport device refresh пишет ревизию, только если
что-то действительно изменилось, но историю добавить может, поэтому
класс — apply.
Типичный путь
После того как идентичность устройства есть:
ai-stp device init --json
ai-stp passport developer init --json
ai-stp passport developer show --json
ai-stp passport device refresh --json
ai-stp passport device show --json
Чтобы объявить факты разработчика, добавив одну ревизию:
ai-stp passport developer update --set role=<role> --json
ai-stp passport developer show --json
--set на update обязателен. Его можно повторять для нескольких
полей. Форма — name=value; значение через запятую становится
списком. Точные имена полей — в ai-stp help --agent --json и в
отказе, который называет допустимый набор.
Для локальной работы аккаунт не нужен. До входа владелец — локальный
account_…, выпущенный при первом использовании. Вход передаёт
владение аккаунту сервера обычной ревизией. Историю он не
переписывает.
Паспорт разработчика
Паспорт разработчика держит объявленные факты о человеке, который пользуется этой установкой. Закрытый список полей:
| Поле | Для чего |
|---|---|
role | как вы описываете свою роль |
typical_tasks | работа, которую обычно просите у агента |
priorities | что должно побеждать, когда цели спорят |
preferred_languages | языки, на которых вы предпочитаете работать |
preferred_harnesses | harness, для которых вы предпочитаете собирать состав |
autonomy | как далеко агент может идти, не спрашивая |
Этого на паспорте разработчика никогда нет. Это наблюдения окружения, и они принадлежат устройству:
operating_systemarchitectureinstalled_harnessesharness_versionstool_versions
Запись одного из них через passport developer update отклоняется.
passport developer init
Создать паспорт разработчика этой установки.
ai-stp passport developer init --json
Создаёт устойчивое состояние. Второй запуск возвращает существующую
голову. Предпочтения он не выдумывает: пустые факты допустимы, пока
вы не объявите их через update.
passport developer show
Показать паспорт разработчика на текущем head.
ai-stp passport developer show --json
Это чтение. Если паспорт никогда не создавали, команда отказывает с
AI_STP_NOT_FOUND. Наблюдение его не выпускает.
passport developer update
Заявить факты разработчика, добавив одну ревизию.
ai-stp passport developer update --set role=<role> --json
Каждый успешный вызов добавляет одну ревизию поверх текущей головы. Предыдущая ревизия остаётся в истории. Правки на месте нет. Неизвестные имена отклоняются. Имена окружения отклоняются. Секреты здесь непредставимы.
Паспорт устройства
Паспорт устройства описывает окружение: операционную систему,
архитектуру, установленные harness, версии, которые видит toolchain.
Это не идентичность устройства. Идентичность — device_id плюс пара
ключей; см. Устройство.
passport device refresh
Создать паспорт устройства или привести его к тому, что сейчас наблюдаемо.
ai-stp passport device refresh --json
Если наблюдаемое не изменилось, голова остаётся где была. Если изменилось, записывается новая ревизия. В любом случае команда — apply, а не чтение: ей позволено добавлять историю.
Refresh не ставит harness, toolchain и Agent Skill. Он записывает то, что уже есть.
passport device show
Показать паспорт устройства на текущем head.
ai-stp passport device show --json
Это чтение. Если паспорт никогда не создавали, команда отказывает, и
next_actions называет passport device refresh.
Что содержит успешный конверт
Все пять команд возвращают одну форму в data:
| Поле | Что это |
|---|---|
kind | на этой странице developer или device |
stable_id | стабильный идентификатор паспорта |
revision_id | текущая головная ревизия |
parent_revision_ids | от чего происходит эта ревизия |
owner_id | локальный владелец или аккаунт |
facts | объявленные или наблюдаемые факты на этой голове |
created_at | когда записана эта ревизия |
schema_version | major схемы этого вида |
Это вид, а не сами байты паспорта. Конверт и факты принадлежат модели паспорта. CLI добавляет локальную позицию: какая ревизия текущая и от чего она происходит.
Конверт также несёт ok, warnings, next_actions, request_id,
operation_id и schema_version.
kind на других командах может быть ещё project, component или
setup. Это не эта страница. Паспорта проекта — Проект.
Паспорта компонента — Паспорт компонента.
Чего эти команды никогда не делают
- не кладут секреты, тела
.envи токены в паспорт; - не копируют наблюдения ОС или harness на паспорт разработчика;
- не копируют предпочтения на паспорт устройства;
- не создают идентичность устройства (это
device init); - не публикуют ничего в каталог;
- не пишут target harness.
Типичные отказы
| Что видно | Что это значит | Что делать |
|---|---|---|
AI_STP_NOT_FOUND на developer show | паспорт разработчика никогда не создавали | ai-stp passport developer init --json |
AI_STP_NOT_FOUND на device show | паспорт устройства никогда не создавали | ai-stp passport device refresh --json |
AI_STP_VALIDATION_ERROR на update | неизвестное поле, поле окружения или нет --set | взять поле разработчика; допустимый набор в details |
doctor сообщает, что устройства нет | нет идентичности, поэтому факты устройства нельзя честно наблюдать | сначала ai-stp device init --json |
ожидание, что device show напечатает факты ОС | это паспорт, не идентичность | ai-stp passport device show --json |
Связанные страницы
| Страница | Зачем |
|---|---|
| Понятия | что такое паспорт |
| Устройство | идентичность, не окружение |
| Проект | project passport фиксирует индекс |
| Паспорт компонента | паспорта принятых компонентов |
| Вход | передача владения при первом входе |
| Синхронизация | отправка головы паспорта разработчика |
| Быстрый старт для человека | идентичность и паспорта первого запуска |
!!! note "Флаги из ai-stp help --agent --json"
Если help --agent расходится с флагом на этой странице, прав CLI.
Необязательные флаги здесь не перечислены. Читайте их из дескриптора.
passport developer update требует --set.