/publish
Cut a new release of agent-harness.
Usage
/publish [<patch|minor|major>]
If no bump type is given, asks interactively.
Pre-flight
- Verify the working tree is clean (
git status— no uncommitted changes) - Verify on
mainbranch (not a feature branch) - Verify origin is
git@github.com:jajupmochi/agent-harness.git(or HTTPS equivalent) - Verify
ghCLI is authenticated (gh auth status)
Steps
Determine current version:
git tag --list 'v*' --sort=-v:refname | head -1If no tags exist, current version is
v0.0.0.Ask user for bump type (or use the argument):
patch(v0.1.0 → v0.1.1) — bug fix, doc tweak, no API changeminor(v0.1.0 → v0.2.0) — new rule / skill / hook / recommendation, no breaking changemajor(v0.1.0 → v1.0.0) — breaking change to consumer interface (rare)
Compute new version and confirm with user.
Generate release notes from git log since last tag:
git log <prev-tag>..HEAD --oneline | grep -E '^\w+ (feat|fix|docs|chore|refactor)' > /tmp/release-notes.mdGroup by Conventional Commit type. Edit if needed.
Run final verification:
jq emptyon every*.jsonin the repo- Markdown link check (best-effort):
find . -name "*.md" -exec grep -l "](" {} +— manually skim suspicious entries - Privacy scan: invoke
/privacy-redacton key files (README, INVENTORY, recommendations/) — should report 0 findings before publish
Create the tag:
git tag -a <new-version> -m "Release <new-version>" git push origin main git push origin <new-version>Create GitHub release:
gh release create <new-version> \ --title "agent-harness <new-version>" \ --notes-file /tmp/release-notes.mdOptional: announce the release (Telegram channel, blog, etc. — out of this skill's scope).
Anti-patterns
- ❌ Tagging without first running the privacy scan — public release, can't easily redact later
- ❌ Skipping the git status check — committing pending work in a release tag is messy
- ❌ Force-pushing the tag (
git push --force origin <tag>) — breaks any consumer pinning to the version
Companion
docs/CONTRIBUTING.md— Conventional Commits conventionskills/general/privacy-redact/SKILL.md— required pre-publish scan