release · cyrusagents — скилл для Claude Code: релиз Cyrus CLI по шагам
Скилл проводит релиз Cyrus CLI через trusted-publishing: подготовка, проверка, публикация и финал. Пригодится, когда нужно выпустить версию, не трогая пакеты руками.
npx skills add cyrusagents/cyrus --skill release -a claude-codeЧто делает release
Скилл описывает весь путь релиза Cyrus CLI. Сначала он читает apps/cli/RELEASING.md — это основной операторский гайд, а scripts/release-packages.mjs задаёт список пакетов и порядок зависимостей. Без этих двух файлов процедура не соберётся.
Дальше по шагам: забрать origin/main, перенести записи Unreleased в новую версию, выставить её во всех манифестах из node scripts/release-packages.mjs list, прогнать pnpm install и закоммитить изменения локфайла. Затем node scripts/release-packages.mjs validate <version> и остальные проверки из гайда. Правки в самих релизных скриптах, воркфлоу или документации этот скилл не запускают — их проверяют отдельно.
Публикация идёт через .github/workflows/release-cli.yml из main: сначала dry-run, и только по явному запросу — тот же номер версии с dry_run=false. Токен npm добавлять нельзя, публикация должна идти через GitHub Actions OIDC. Dry-run в npm не авторизуется, поэтому записи в реестр он не подтверждает. Версии в npm неизменяемы: если релиз оборвался на середине, слепой перезапуск сломает состояние — сначала смотрите, какие пакеты уже вышли.
Какие задачи решает
- выпустить новую версию Cyrus CLI без ручной публикации пакетов
- синхронизировать номера версий во всех манифестах workspace
- проверить релизный payload по политике F1 и сохранить доказательства
- перевести issues из
MergedUnreleasedвReleasedMonitoringпосле релиза - убедиться, что версия действительно появилась в npm
Примеры запросов агенту
- подготовь релиз Cyrus CLI на новой ветке
- запусти dry-run релиза из main и следи за воркфлоу
- выпусти версию вживую и проверь её в npm
Как установить release
1Через Skills CLI (Vercel)
npx skills add cyrusagents/cyrus --skill release -a claude-code2Вручную: положить файлы
~/.claude/skills/release/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/release/
1Через Skills CLI (Vercel)
npx skills add cyrusagents/cyrus --skill release -a codex2Вручную: положить файлы
.agents/skills/release/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add cyrusagents/cyrus --skill release -a cursor2Вручную: положить файлы
.cursor/skills/release/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install cyrusagents/cyrus release2Вручную: положить файлы
.github/skills/release/SKILL.md1Через Skills CLI (Vercel)
npx skills add cyrusagents/cyrus --skill release -a gemini-cli2Командой платформы
gemini skills install https://github.com/cyrusagents/cyrus --path skills/releaseВручную: положить файлы
.devin/skills/release/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add cyrusagents/cyrus --skill release -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора18
Другие версии release
Похожие
Рядом в теме «DevOps и инфраструктура»
Всё по теме «DevOps и инфраструктура» →Вопросы о release
Как установить release в Claude?
Выполните npx skills add cyrusagents/cyrus --skill release -a claude-code. После этого скилл лежит в ~/.claude/skills/release/SKILL.md.
Что делает скилл release?
Проводит релиз Cyrus CLI: готовит версию на ветке, валидирует пакеты, открывает и мержит релизный PR, запускает воркфлоу публикации и проверяет результат в npm.
Можно ли выпустить релиз без dry-run?
Да, но только когда пользователь явно попросил живой релиз. Тогда тот же номер версии отправляют с dry_run=false; до этого обязателен прогон в dry-run режиме.
Исходный текст
SKILL.md · Apache-2.0
---
name: release
description: Prepare, verify, publish, and finish a coordinated Cyrus CLI release. Use when a user asks to release Cyrus, publish cyrus-ai, run a CLI release, or perform the /release workflow.
---
# Release Cyrus
Run Cyrus releases through the trusted-publishing workflow. Do not publish
workspace packages manually.
## Required reference
Read `apps/cli/RELEASING.md` completely before taking release actions. Treat it
as the canonical operator guide and `scripts/release-packages.mjs` as the
canonical package list and dependency order.
Editing release workflows, scripts, installers, or release documentation does
not invoke this release procedure. Validate those changes with targeted checks
and the F1 applicability policy in `skills/f1-test-drive/SKILL.md`.
## Workflow
1. Fetch `origin/main`, start from current main, and preserve unrelated local
changes.
2. Prepare the release on a branch:
- Move both changelogs' Unreleased entries into the new version.
- Set the same version in every manifest printed by
`node scripts/release-packages.mjs list`.
- Run `pnpm install` and commit any lockfile change.
- Assess the entire payload since the previous release using the canonical
F1 applicability policy, including functional changes merged before the
version-bump PR. For F1-covered behavior changes, run relevant F1 scenarios
and save evidence with the required `-release-v<version>.md` suffix.
Otherwise record the payload assessment and targeted checks as non-F1
release verification per `apps/cli/RELEASING.md`; do not invent an F1 report.
- List every released `package@version` in `CHANGELOG.md`.
3. Run `node scripts/release-packages.mjs validate <version>`, then all checks
required by `apps/cli/RELEASING.md`. Fix failures before continuing.
4. Commit, push, open the release PR, and merge it to `main` before dispatching
the workflow. Never publish unmerged source or a non-main ref.
5. Dispatch `.github/workflows/release-cli.yml` from `main` in dry-run mode and
monitor it through completion.
6. Only when the user has explicitly requested the live release, dispatch the
same exact version with `dry_run=false`. Monitor it through npm publication,
git tagging, and GitHub Release creation.
7. Independently verify the version on npm and run the published CLI's
`--version` command.
8. Use the Linear integration to move every issue referenced by the version's
changelog section from `MergedUnreleased` to `ReleasedMonitoring`.
## Safety
- Never add an npm token. Publishing must use GitHub Actions OIDC.
- Confirm every npm package trusts `cyrusagents/cyrus` and
`release-cli.yml` before the first live workflow run.
- A dry run does not authenticate to npm and does not prove registry writes.
- Never rerun a partially published version blindly. npm versions are
immutable; inspect which packages landed and recover deliberately.
- Do not create or move a release tag until every package is published. The
workflow owns tag and GitHub Release creation.
© cyrusagents · Apache-2.0 · cyrusagents/cyrus