К содержимому

Паспорта

Создать, показать и обновить паспорта разработчика и устройства, которые эта установка ведёт локально.

Паспорта

Паспорт — версионированное машиночитаемое описание объекта. На этой странице только два паспорта, которые описывают вас и эту машину: паспорт разработчика и паспорт устройства. Паспорта компонента, сетапа и проекта — другие объекты с другими командами.

Паспорт разработчика объявляет предпочтения. Паспорт устройства записывает то, что наблюдается на этой машине. Эти факты нельзя менять местами. Поле окружения на паспорте разработчика отклоняется, а предпочтение не является наблюдением.

Команды

КомандаMutabilityConfirmationКогда
ai-stp passport developer initapplynoneсоздать паспорт разработчика этой установки
ai-stp passport developer showreadnoneпоказать паспорт разработчика на текущем head
ai-stp passport developer updateapplynoneзаявить факты разработчика, добавив одну ревизию
ai-stp passport device refreshapplynoneсоздать паспорт устройства или привести его к тому, что сейчас наблюдаемо
ai-stp passport device showreadnoneпоказать паспорт устройства на текущем 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_harnessesharness, для которых вы предпочитаете собирать состав
autonomyкак далеко агент может идти, не спрашивая

Этого на паспорте разработчика никогда нет. Это наблюдения окружения, и они принадлежат устройству:

  • operating_system
  • architecture
  • installed_harnesses
  • harness_versions
  • tool_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_versionmajor схемы этого вида

Это вид, а не сами байты паспорта. Конверт и факты принадлежат модели паспорта. 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.