ワンクリックで
release-changelog
Generate a changelog entry for a new Open Station release from conventional commits and domain-specific categories.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Generate a changelog entry for a new Open Station release from conventional commits and domain-specific categories.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Drive a DAG of Open Station tasks to done — plan waves from dependencies, dispatch with sane defaults, watch via tmux, retry, advance on verification, and escalate blockers. Use deliberately when asked to "run the epic", "drive these tasks", "orchestrate the milestones", or to advance a multi-task plan.
Supervise active openstation tasks — list in-progress and review tasks, check session health for each, and present actionable recommendations. Use when asked to check on tasks, supervise work, or get a status overview.
Teaches agents how to operate within Open Station — find tasks, execute work, update state, and store artifacts.
Teaches agents how to operate within Open Station — find tasks, execute work, update state, and store artifacts.
Supervise active openstation tasks — list in-progress and review tasks, check session health for each, and present actionable recommendations. Use when asked to check on tasks, supervise work, or get a status overview.
Generate a changelog entry for a new Open Station release from conventional commits and domain-specific categories.
| name | release-changelog |
| description | Generate a changelog entry for a new Open Station release from conventional commits and domain-specific categories. |
| user-invocable | false |
Generate a changelog entry for a new Open Station release. Follows
conventional commits, domain-specific categories, and the existing
CHANGELOG.md format.
Use this skill when preparing a release — after all work is merged and before tagging. The skill produces a draft changelog entry for human review; it never auto-commits or auto-tags.
CHANGELOG.md exists at the repository root.v prefix (v0.4.0, v1.0.0).feat:, fix:, docs:,
refactor:, chore:, test:).Before generating anything, check whether the target version
already has an entry in CHANGELOG.md.
grep -q "^## v<VERSION>" CHANGELOG.md
If the user has not specified a target version, do NOT invent one. Proceed through Steps 1–4 first, then recommend a version in Step 5 based on change severity.
Find the latest release tag and scope the commit range.
# Latest tag
git tag --sort=-v:refname | head -1
# Verify it exists and note its date
git log -1 --format="%ai" <last-tag>
The range is <last-tag>..HEAD. If no tags exist, use
--root..HEAD (first release).
Gather commit subjects and file-change stats for the range.
# Commit hashes and subjects
git log --format="%H %s" <last-tag>..HEAD
# Files changed per commit (for category hints)
git log --format="%H" <last-tag>..HEAD | while read h; do
echo "=== $h ==="
git diff-tree --no-commit-id --name-only -r "$h"
done
Exclude merge commits and chore: commits that are purely
internal (CI config, tooling tweaks with no user-facing impact).
Extract the prefix from each commit subject:
| Prefix | Meaning |
|---|---|
feat: | New feature or enhancement |
fix: | Bug fix |
docs: | Documentation change |
refactor: | Code restructuring |
test: | Test-only change |
chore: | Maintenance (usually omit from changelog) |
Open Station uses domain categories, not commit-type categories. Map each commit to a domain using file paths as the primary signal:
| File Path Signal | Category |
|---|---|
bin/openstation, tests/ | CLI |
artifacts/agents/, agents/ | Agents |
docs/, artifacts/specs/ | Specs & Docs |
commands/ | Commands |
skills/ | Skills |
install.sh, setup.py, pyproject.toml | Install |
fix: prefix (any domain) | Fix |
| Structural / cross-cutting changes | Architecture |
Rules:
refactor: commits: include if they change user-facing
behavior or structure; omit if purely internal.chore: commits: omit unless they affect the user experience
(e.g., changing install steps).test: commits: omit unless they introduce a new testing
capability worth noting.Write the changelog entry following the established format:
## v<VERSION>
Summary paragraph describing the release theme in 1–3 sentences.
Focus on the biggest user-facing change.
### <Category>
- **Bold feature name** — Description of the change. Reference
file paths, command names, or spec names when relevant.
- **Another item** — More detail.
### <Category>
- **Item** — Description.
Format rules:
## v<VERSION>).### CLI, ### Commands, etc.).- **Bold name** — Description. (em dash, not
hyphen).If the user hasn't specified a version, recommend one:
| Condition | Bump |
|---|---|
| Breaking changes (removed features, changed interfaces) | major |
| New features, significant enhancements | minor |
| Bug fixes, documentation, internal improvements only | patch |
Present the recommendation with reasoning; do not decide unilaterally.
Show the complete draft entry to the user. Flag:
Wait for explicit approval before writing.
On approval, insert the new entry into CHANGELOG.md:
# Changelog heading.Do not commit or push yet. The changelog write is a working-tree change only. Committing happens in Step 8 after the user approves the full release.
After writing the changelog, present this release checklist and wait for the user to approve before executing:
Release v<VERSION>:
1. Update version in pyproject.toml → "<VERSION>"
2. Update OPENSTATION_VERSION in install.sh → "v<VERSION>"
3. Commit: "chore: release v<VERSION>"
4. Push: git push origin main
On approval, execute all four steps in sequence. Stop immediately if any step fails.
The tag is created by CI after it builds and commits the dist binary — so the tag always points to the commit that includes the binary. Do not create the tag manually.
CHANGELOG.md only.