release-bump — скилл для Claude Code: бамп версии и релиз ralph-orchestrator
Проведёт релиз ralph-orchestrator по шагам: поднять версию, собрать, прогнать тесты, поставить тег. Пригодится, когда фиксы уже в коммитах и пора публиковать.
npx skills add mikeyobrien/ralph-orchestrator --skill release-bump -a claude-codeЧто делает release-bump
Скилл рассчитан на релиз ralph-orchestrator и знает, где в проекте живёт номер версии. Все значения лежат в корневом Cargo.toml рабочего пространства, крейты подхватывают их через version.workspace = true, поэтому править нужно сразу семь вхождений version = "X.Y.Z" — включая зависимости между внутренними крейтами. Скилл советует заменить их разом через Edit с replace_all: true.
Дальше — сборка cargo build, чтобы обновился Cargo.lock, потом cargo test. Коммит делается как chore: bump to vX.Y.Z, после него идут git push origin main и тег vX.Y.Z. Сначала main, потом тег — при обратном порядке CI возьмётся за релиз без нового коммита. Новую версию скилл просит подтвердить у пользователя, а после пуша тега предлагает следить за ходом релиза.
Релиз собирает .github/workflows/release.yml: он создаёт GitHub Release с автоматическими заметками, собирает бинарники под macOS и Linux на arm64 и x64, публикует на crates.io и в npm под именем @ralph-orchestrator/ralph. Создавать релиз руками через gh release create не нужно — достаточно пуша тега. Для работы понадобятся cargo и git в окружении; без них сборка и тест не пройдут.
Какие задачи решает
- поднять номер версии во всех местах
Cargo.tomlза один проход - не забыть прогнать тесты перед релизным коммитом
- поставить тег только после пуша main
- не создавать GitHub Release вручную в обход CI
- проследить, как проходит публикация после пуша тега
Примеры запросов агенту
- Поднимаем версию ralph-orchestrator до 0.8.0 — проведи релиз по шагам
- Фиксы в main, готовим релиз: бампни версию и поставь тег
- После пуша тега покажи, как идёт релиз
Как установить release-bump
1Через Skills CLI (Vercel)
npx skills add mikeyobrien/ralph-orchestrator --skill release-bump -a claude-code2Вручную: положить файлы
~/.claude/skills/release-bump/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/release-bump/
1Через Skills CLI (Vercel)
npx skills add mikeyobrien/ralph-orchestrator --skill release-bump -a codex2Вручную: положить файлы
.agents/skills/release-bump/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add mikeyobrien/ralph-orchestrator --skill release-bump -a cursor2Вручную: положить файлы
.cursor/skills/release-bump/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install mikeyobrien/ralph-orchestrator release-bump2Вручную: положить файлы
.github/skills/release-bump/SKILL.md1Через Skills CLI (Vercel)
npx skills add mikeyobrien/ralph-orchestrator --skill release-bump -a gemini-cli2Командой платформы
gemini skills install https://github.com/mikeyobrien/ralph-orchestrator --path .claude/skills/release-bumpВручную: положить файлы
.devin/skills/release-bump/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add mikeyobrien/ralph-orchestrator --skill release-bump -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о release-bump
Как установить release-bump в Claude Code?
Выполните npx skills add mikeyobrien/ralph-orchestrator --skill release-bump -a claude-code. После этого файл скилла лежит в ~/.claude/skills/release-bump/SKILL.md.
Что делает release-bump?
Ведёт релиз ralph-orchestrator: подтверждает версию с вами, правит номер в Cargo.toml, собирает проект, прогоняет тесты, коммитит, пушит main и ставит тег vX.Y.Z.
Зачем обновлять все семь вхождений version?
Крейты ссылаются на версию через version.workspace = true, но их межкрейтовые зависимости прописаны с номером явно. Если поправить только [workspace.package], сборка возьмёт старую версию в зависимостях.
Исходный текст
SKILL.md · MIT
---
name: release-bump
description: Use when bumping ralph-orchestrator version for a new release, after fixes are committed and ready to publish
metadata:
internal: true
---
# Release Bump
## Overview
Bump version and trigger release for ralph-orchestrator. All versions live in workspace `Cargo.toml` - individual crates inherit via `version.workspace = true`.
Confirm the new version with the user. Once the bump commit is pushed, track progress of the release.
## Quick Reference
| Step | Command/Action |
|------|----------------|
| 1. Bump version | Edit `Cargo.toml`: replace all `version = "X.Y.Z"` (7 occurrences) |
| 2. Build | `cargo build` (updates Cargo.lock) |
| 3. Test | `cargo test` |
| 4. Commit | `git add Cargo.toml Cargo.lock && git commit -m "chore: bump to vX.Y.Z"` |
| 5. Push | `git push origin main` |
| 6. Tag | `git tag vX.Y.Z && git push origin vX.Y.Z` |
## Version Locations (All in Cargo.toml)
```toml
# Line ~17 - workspace version
[workspace.package]
version = "X.Y.Z"
# Lines ~113-118 - internal crate dependencies
ralph-proto = { version = "X.Y.Z", path = "crates/ralph-proto" }
ralph-core = { version = "X.Y.Z", path = "crates/ralph-core" }
ralph-adapters = { version = "X.Y.Z", path = "crates/ralph-adapters" }
ralph-tui = { version = "X.Y.Z", path = "crates/ralph-tui" }
ralph-cli = { version = "X.Y.Z", path = "crates/ralph-cli" }
ralph-bench = { version = "X.Y.Z", path = "crates/ralph-bench" }
```
**Tip:** Use Edit tool with `replace_all: true` on `version = "OLD"` → `version = "NEW"` to update all 7 at once.
## What CI Does Automatically
Once you push the tag, `.github/workflows/release.yml` triggers and:
1. Creates the GitHub Release with auto-generated notes
2. Builds binaries for macOS (arm64, x64) and Linux (arm64, x64)
3. Uploads artifacts to the GitHub Release
4. Publishes to crates.io (in dependency order)
5. Publishes to npm as `@ralph-orchestrator/ralph`
## Common Mistakes
| Mistake | Fix |
|---------|-----|
| Only updating workspace.package.version | Must update all 7 occurrences including internal deps |
| Forgetting to run tests | Always `cargo test` before commit |
| Creating release manually with `gh release create` | Just push the tag - CI creates the release with artifacts |
| Pushing tag before main | Push main first, then push the tag |
© mikeyobrien · MIT · mikeyobrien/ralph-orchestrator