一键导入
changelog-writer
Generate user-facing changelog entries from git history — plain language, audience-segmented, with optional CHANGELOG.md update.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Generate user-facing changelog entries from git history — plain language, audience-segmented, with optional CHANGELOG.md update.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Audit chezmoi dotfiles for drift, unmanaged files, and broken agent skill symlinks across Claude Code, Codex, Gemini, and other harnesses.
Scan Claude/Codex session logs to find agent behavior patterns, Toolsmith adoption gaps, repeated frustrations, and candidates for new skills/tools.
Consolidate/dedupe contacts from macOS, iCloud, Google, Zoho, or VCF with provenance-aware review, backups, and optional approved dossiers.
Capture a technical or product decision with chosen option, rejected alternatives, and rationale — in a format a future agent can read to reconstruct context.
Audit repos for SHA/digest dependency pinning and release cooldowns across Docker, CI, and major language ecosystems; report violations, fix with approval.
Run/triage Django/DRF security smoke checks — settings, throttling, safe HTML, ORM races, model integrity — before shipping or on scanner findings.
| name | changelog-writer |
| description | Generate user-facing changelog entries from git history — plain language, audience-segmented, with optional CHANGELOG.md update. |
| display_name | Changelog Writer |
| brand_color | #8B5CF6 |
| local_only | true |
| group | Dev Workflow |
| usage | /changelog-writer:run |
| summary | Turn a pile of git commits into a changelog your users will actually understand. |
| default_prompt | Write a user-facing changelog for the changes since the last release. Segment by audience: users, developers, operators. Plain language only — no commit hashes or internal jargon. |
Turns git commits into changelog entries humans want to read. Covers the gap between "git log --oneline" (too technical) and "nothing" (too common).
Ask or infer:
git log $(git describe --tags --abbrev=0)..HEAD if tags exist, else git log HEAD~20..HEAD.[NEXT VERSION].# Check if tags exist
git describe --tags --abbrev=0 2>/dev/null && \
echo "Use: git log $(git describe --tags --abbrev=0)..HEAD --pretty=format:'%H %s' --no-merges" || \
echo "No tags found — use: git log HEAD~20..HEAD --pretty=format:'%H %s' --no-merges"
Run:
git log <range> --pretty=format:"%H %s" --no-merges
For each commit, also read the full diff summary:
git show --stat <SHA>
Group commits by type if using conventional commits (feat, fix, docs, chore, refactor, perf, test, build, ci). Otherwise, read the commit message and classify by likely intent.
For each commit, decide:
Affects users? → Include in "Users" section
Affects developers integrating or extending? → Include in "Developers" section
Affects deployment, configuration, or operations? → Include in "Operators" section
Internal only? → SKIP (refactors, test changes, CI changes, code style)
| Raw commit | Translated entry |
|---|---|
fix: resolve null pointer in UserService.processPayment | Fixed a bug that caused payment processing to fail for some users. |
feat: add dark mode toggle to settings panel | You can now switch to dark mode in Settings. |
perf: replace O(n²) sort in feed ranking | Feeds with many items now load significantly faster. |
chore: upgrade postgres driver to 16.x | (Operators) Updated database driver — no action required unless pinning the old version. |
feat: add /v2/webhooks endpoint with retry logic | (Developers) New: /v2/webhooks endpoint with automatic retry on failure. See API docs. |
refactor: extract PaymentGateway interface | SKIP — internal only. |
Rules for writing:
## [NEXT VERSION] - YYYY-MM-DD
### For Users
- **New:** [feature description]
- **Fixed:** [bug fix description]
- **Changed:** [behavior change and why]
### For Developers
- **Breaking:** [what changed, how to migrate]
- **New:** [new API/hook/event]
### For Operators
- **Action required:** [what to do before deploying]
- **New config:** [variable name and purpose]
Omit the markdown headers. Write short prose paragraphs instead of bullet lists. Friendly tone, no technical filler.
# Changelog header (or top of file).Before presenting, check:
If any check fails, revise before presenting.
<anti_patterns>
| Don't | Do instead |
|---|---|
| Include commit SHAs or branch names in the Users section | Write about what the user experiences, not what the developer did |
| Write "Various improvements and bug fixes" | Name the specific fix or improvement, or skip it |
| Put refactors and test changes in any audience section | Internal changes have no changelog entry |
| Use function names, file names, or class names in the Users section | Translate to user experience: "payment processing" not "UserService.processPayment" |
| Write passive vague entries ("Performance has been improved") | Name the scenario: "Large dashboards now load in under 2 seconds" |
| Produce a Developers section entry without migration guidance for breaking changes | Always include "Before: X. After: Y. To migrate: Z." |
| Produce an Operators section entry without the exact variable name or command | Be specific: REDIS_MAX_CONNECTIONS=50 not "configure Redis appropriately" |
| Cover 0 commits in a section when none qualify | Omit the section entirely if it has no entries |
</anti_patterns>
<success_criteria>
The changelog is complete when:
</success_criteria>