协作头脑风暴
brainstorming
在实现前澄清需求、探索设计选择,并形成清晰的开发方向。
release【开发与工程】Cut a new release of ra-mcp. Determines the next version from the commit history since the last tag, bumps pyproject.toml, commits, tags, and pushes. Use when: "make a release", "cut a release", "release", "bump version", "tag a new version", "publish a new version".
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Cut a new release for the ra-mcp project.
Determine current state — run these in parallel:
git tag --sort=-v:refname | head -5 to find the latest taggrep '^version' pyproject.toml | head -1 to find the current versiongit log --oneline $(git describe --tags --abbrev=0)..HEAD to list commits since the last tagDecide the version bump — follow semver based on conventional commits:
fix, refactor, perf, docs, style, test, build, ci, chorefeat commit! or BREAKING CHANGE footerConfirm with the user — show:
Cut the release — run:
make release VERSION=<version>
This bumps pyproject.toml, commits, tags, and pushes. The tag push
triggers two CI workflows in parallel: release.yml (changelog + GitHub
Release) and publish.yml (Docker build, push, sign, and attestations).
Monitor CI workflows — after the tag push, watch both workflows:
gh run list --limit 5 to find the triggered runsgh run view <run-id> until both "Release" and "Publish"
workflows complete (check every ~30 seconds)gh run view <run-id> --log-failed to
get the error details and report them to the userReport — confirm the tag was pushed and link to the GitHub releases page:
https://github.com/AI-Riksarkivet/ra-mcp/releases
make release.claude/commands/commit.md —
in particular: no co-author lines, no Claude attribution, clean
conventional commit format