Перейти к содержимому

Skills — неизменяемый каталог и закреплённые назначения

Skills (modules/skills, olivares.skills) — один из 32 модулей. Он владеет неизменяемым каталогом навыков и его закреплёнными назначениями: пакет навыков устанавливается один раз, проверяется запись за записью против digest его манифеста и публикуется как неизменяемая ревизия — после этого он никогда не редактируется на месте. То, что цель (агент, группа, workspace) может использовать, — это назначение, закрепляющее ревизию пакета, и каждое закрепление записывается в журнал аудита (skills.assignment.pin).

Включён по умолчанию в новых установках, Skills остаётся необязательным и не требует другого модуля. Обновления сохраняют выбранные модули. В Skills (/skills) установите встроенный пакет с необязательным назначением рабочей области или выберите Из Git. CLI использует тот же неизменяемый импорт с проверкой хеша:

Окно терминала
olivares skills ls --builtin
olivares skills install --builtin ecc-security
olivares skills install --git https://github.com/owner/skills --ref <commit> --subdir skills
olivares skills assign <pack-id> --revision <revision-id> --workspace <workspace-id>
olivares skills update <pack-id> # read the recorded source again and review the diff
olivares skills update <pack-id> --apply --expected-digest <digest>
olivares skills pin <pack-id> [--revision <older-revision-id>]
olivares skills enable tdd-workflow code-review --folder <folder-ref>
olivares skills selection --workspace <workspace-id> --folder <folder-ref>
  • Каталог. Установленные пакеты под /v1/m/skills/packs, каждая неизменяемая ревизия хранит digest своего манифеста; снять пакет, который ещё назначен или используется записанными разговорами, отказом отклоняется, а не молча каскадно удаляется.
  • Встроенный каталог. Вендоренный набор upstream-пакетов навыков, закреплённых коммитом и digest архива (builtin/PIN.json), проверяемый при установке точно как загруженный архив. При установке из него ничего не выполняется.
  • Назначения. GET/POST /v1/m/skills/assignments и PUT/DELETE /v1/m/skills/assignments/{id} закрепляют ревизию за целью, в области активного workspace. Две цели одного вида, закрепляющие разное содержимое под одним именем навыка, отклоняются до старта сессии; более узкая цель (папка, шаблон, агент, сессия) заменяет навык с тем же именем у более широкой цели, поэтому проект переопределяет общий пакет, не редактируя его.
  • Импорт из Git. Импортёр с областью оператора может взять пакет навыков из Git-источника по закреплённой политике; импорт попадает в каталог как ещё одна неизменяемая ревизия, а не как живой checkout, который читает движок.

Маршруты модуля живут в его бета-пространстве имён (/v1/m/skills/…), задокументированы в справочнике маршрутов модулей и отображаются в виде Skills консоли. Чтение требует права read; установка пакета или ревизии — write; снятие — admin; назначения — права assign. Сессия разрешает свои навыки только через записанные назначения — папка, изменившаяся на диске, никогда не изменит того, что выполнит уже закреплённый запуск.