Перейти к содержанию
zoryn/ maintainer-assistant

zoryn agent

Интеграция zoryn с локальными ИИ-агентами (Claude Code, Codex, opencode, …). Две группы подкоманд: agent skill и agent mcp.

zoryn agent skill

Управляет встроенным Agent Skill zoryn в локальных ИИ-агентах, чтобы они подгружали знания о workflow сопровождения пакетов ALT по требованию.

Скилл — это папка с файлом SKILL.md, один формат читают Claude Code, Codex и opencode. Полный скилл поставляется с пакетом zoryn по пути /usr/share/zoryn/skills/zoryn/SKILL.md. Вместо копирования его в каждый агент zoryn agent skill install пишет маленький ссылочный SKILL.md (frontmatter скилла, чтобы агент его обнаружил, плюс указатель на файл из пакета) в каталог skills каждого агента.

Так остаётся единый источник истины, обновляемый вместе с пакетом. Это работает именно потому, что скилл zoryn полезен только там, где установлен zoryn, — значит файл-цель всегда на месте, в том числе внутри zoryn devenv, где его нативно даёт пакет (без зависимости от проброса ~/.claude).

Каталоги по умолчанию покрывают все три агента:

  • ~/.claude/skills/zoryn/ — Claude Code, opencode
  • ~/.agents/skills/zoryn/ — Codex, opencode

zoryn agent skill install

Записывает ссылочный SKILL.md в каталоги skills агентов.

Опции:

  • --dir DIR — установить в DIR вместо каталогов по умолчанию (можно повторять). Ведущий ~/ разворачивается в домашний каталог.
  • --force — перезаписать ранее установленную ссылку zoryn. Папка, которую zoryn не создавал (ваш собственный скилл, посторонние файлы), отклоняется в любом случае — ничего вашего не удаляется.
zoryn agent skill install                                 # установить в каталоги агентов по умолчанию
zoryn agent skill install --force                         # переустановить с перезаписью
zoryn agent skill install --dir ~/.config/opencode/skills # установить только в указанный каталог

После установки перезапустите агента (или начните новую сессию), чтобы он подхватил скилл.

zoryn agent skill uninstall

Удаляет папку скилла из каталога skills каждого агента (обратное к install). Удаляются только папки, установленные zoryn (с его маркером-ссылкой); папка, написанная вами, остаётся нетронутой. --dir выбирает конкретные каталоги.

zoryn agent skill uninstall
zoryn agent skill uninstall --dir ~/.config/opencode/skills

zoryn agent skill status

Для каждого каталога skills сообщает, установлен ли скилл zoryn, на что он указывает и существует ли файл-цель (отсутствие цели отмечается). Возвращает ненулевой код, если какая-то установка сломана (висячая ссылка) или чужая — чтобы скрипты могли это обнаружить.

zoryn agent skill status

zoryn agent skill path

Печатает абсолютный путь к поставляемому SKILL.md, одной строкой — удобно в скриптах.

zoryn agent skill path

zoryn agent skill show

Печатает полный встроенный SKILL.md в stdout, без участия агента.

zoryn agent skill show

zoryn agent mcp

Управляет HTTP-серверами MCP в конфигурационных файлах локальных агентов:

АгентФайл конфигурации
Claude Code~/.claude.json
opencode~/.config/opencode/opencode.json
Kimi Code~/.kimi-code/mcp.json

Серверы берутся из каталога: встроенные в zoryn — gitoskop, HTTP-зеркало репозиториев ALT gitery только для чтения (URL следует за [gitoskop] url в ~/.zoryn), и bugzilla, MCP-эндпоинт ALT Linux Bugzilla, — плюс ваши собственные определения в ~/.config/zoryn/mcp/<имя>.toml:

url = "https://example.org/mcp"
doc = "Мой MCP-сервер"         # необязательно, показывается в zoryn agent mcp list
api-key-header = "X-Api-Key"   # необязательно, позволяет install --api-key сохранить ключ

Ключ url обязателен и должен быть URL со схемой http:// или https:// и непустым хостом; файл с некорректным определением выводится как предупреждение и пропускается, остальной каталог продолжает работать. Локальное определение с именем встроенного сервера переопределяет его URL.

В конфиге агента команда трогает только запись с указанным именем — всё остальное в файле сохраняется. Запись идёт через временный файл и переименование, а если переименовать поверх цели нельзя — перезаписью на месте, поэтому команда работает и внутри devenv, где конфиг примонтирован как файл. Симлинк (конфиг под управлением dotfile-менеджера) не заменяется, а разыменовывается; у существующего файла сохраняются права, а созданный zoryn файл получает права 0600, поскольку такие конфиги содержат учётные данные. Существующий конфиг, который не удалось прочитать или разобрать, не перезаписывается с нуля: команда сообщает об ошибке и оставляет файл нетронутым.

По умолчанию команды работают со всеми агентами, чей каталог конфигурации существует; --agent claude|opencode|kimi (можно повторять) сужает или принудительно задаёт выбор. Агенты обрабатываются независимо: ошибка на одном не прерывает работу с остальными, а команда завершается с ненулевым кодом.

Регистрация действует на уровне пользователя, поэтому окружения zoryn devenv — они монтируют конфиги агентов с хоста — подхватывают её автоматически.

zoryn agent mcp install

Регистрирует один или несколько серверов из каталога по имени, либо разовый сервер с явным --url.

Опции:

  • --url URL — URL сервера для имени, которого нет в каталоге. Если имя каталожное, --url переопределяет URL этого сервера и сообщает об этом; применяется только к одному имени.
  • --api-key KEY — API-ключ сервера; сохраняется в конфиге агента как HTTP-заголовок. Имя заголовка берётся из определения сервера в каталоге (ключ api-key-header; у встроенного bugzilla это X-Bugzilla-Api-Key), поэтому для сервера без такого ключа опция отклоняется. Применяется только к одному имени. Переустановка без --api-key сохраняет уже настроенный ключ; пустой ключ (--api-key '') удаляет его, возвращая анонимный доступ.
zoryn agent mcp install gitoskop                          # во все обнаруженные агенты
zoryn agent mcp install gitoskop --agent claude           # только Claude Code
zoryn agent mcp install bugzilla --api-key "$(cat ~/.bugzilla-key)"
zoryn agent mcp install mystuff --url https://example.org/mcp

Сервер bugzilla работает и без ключа — анонимно, с правами незалогиненного пользователя; ключ (создаётся в Bugzilla в разделе Preferences → API Keys) открывает доступ к закрытым багам, а там, где на сервере включена запись, — комментирование и правку полей.

После этого перезапустите агент (или начните новую сессию), чтобы он увидел новый MCP-сервер.

zoryn agent mcp uninstall

Удаляет записи указанных серверов из конфигов агентов (обратная операция к install).

zoryn agent mcp uninstall gitoskop
zoryn agent mcp uninstall gitoskop --agent kimi

zoryn agent mcp list

Показывает MCP-серверы, настроенные в каждом агенте, а затем каталог, доступный для install (встроенные и локальные записи помечены). Если на машине не установлен ни один агент, каталог всё равно выводится.

zoryn agent mcp list