doc-condenser
**DEPRECATED** — Modern Claude models condense and summarize technical documentation natively with comparable quality. The output…
Generates structured changelogs and release notes from git history and PRs, classifying breaking changes, features, fixes, performance, docs. Triggers on: "generate changelog", "write release notes", "what changed since", "prepare release", "release notes for", "diff since tag".
Claude Code
$ npx -y skills add Mathews-Tom/armory --skill changelog-composer --agent claude-code
Codex
$ npx skills add Mathews-Tom/armory --skill changelog-composer -a codex -y
Cursor
$ npx skills add Mathews-Tom/armory --skill changelog-composer -a cursor -y
Gemini CLI
$ npx skills add Mathews-Tom/armory --skill changelog-composer -a gemini-cli -y
GitHub Copilot
$ npx skills add Mathews-Tom/armory --skill changelog-composer -a github-copilot -y
OpenCode
$ npx skills add Mathews-Tom/armory --skill changelog-composer -a opencode -y
Windsurf
$ npx skills add Mathews-Tom/armory --skill changelog-composer -a windsurf -y
name: changelog-composer description: 'Generates structured changelogs and release notes from git history and PRs, classifying breaking changes, features, fixes, performance, docs. Triggers on: "generate changelog", "write release notes", "what changed since", "prepare release", "release notes for", "diff since tag".' metadata: version: 1.1.1 category: content tags: [changelog, release-notes, git-history, versioning] difficulty: intermediate phase: ship
Transforms raw git history and PR descriptions into polished, audience-appropriate changelogs. Parses conventional commits, classifies changes by impact category, filters internal-only modifications, and produces structured release notes with PR links — following Keep a Changelog conventions.
| File | Contents | Load When | | ------------------------------------ | ------------------------------------------------------------------ | ------------------------------------ | | `references/conventional-commits.md` | Commit type parsing, scope extraction, breaking change indicators | Repository uses conventional commits | | `references/categorization-rules.md` | Change classification logic, audience filtering, severity ordering | Always | | `references/audience-filter.md` | User-facing vs internal change detection, exclusion patterns | Always | | `references/changelog-formats.md` | Keep a Changelog, GitHub Releases, announcement copy templates | Format selection needed |
Collect all changes between the previous release and the current state:
1. **Identify boundaries** — Find the last release tag: `git describe --tags --abbrev=0`. If no tags exist, use the initial commit or a user-specified starting point. 2. **Extract commits** — `git log <last-tag>..HEAD --oneline --no-merges` 3. **Extract PR titles** — `gh pr list --state merged --base main --search "merged:>YYYY-MM-DD"` or parse merge commit messages. 4. **Parse conventional commits** — If the repository follows conventional commits (`feat:`, `fix:`, `docs:`, etc.), extract type, scope, and description. See `references/conventional-commits.md`. 5. **Collect breaking change indicators** — Look for `BREAKING CHANGE:` in commit bodies, `!` after type (`feat!:`), or explicit annotations in PR descriptions.
Categorize each change by its impact:
| Category | Conventional Commit Type | Indicators | | ---------------- | ----------------------------------------------- | ---------------------------------------------- | | Breaking Changes | `feat!:`, `BREAKING CHANGE:` | API removal, signature change, behavior change | | Features | `feat:` | New capability, new endpoint, new command | | Fixes | `fix:` | Bug correction, error handling improvement | | Performance | `perf:` | Speed improvement, memory reduction | | Documentation | `docs:` | README, API docs, guides | | Internal | `chore:`, `ci:`, `refactor:`, `test:`, `build:` | No user-facing impact |
For repositories without conventional commits, classify by reading the commit message and changed files. Code changes to public API → Feature or Fix. Test-only changes → Internal.
1. **Exclude internal changes** by default:
2. **Include internal changes** only when:
3. **Highlight breaking changes** prominently — always at the top, always with migration guidance.
For each included change, write a human-readable description:
1. **Lead with the impact** — "Users can now..." or "Fixed issue where..." 2. **Be specific** — "Reduced memory usage by 40% for large file processing" not "Performance improvements" 3. **Include migration guidance** for breaking changes — what the user must change 4. **Link to source** — PR number, issue number, or commit hash
Assemble the changelog in the requested format, ordered by severity:
1. Breaking Changes (always first) 2. Features 3. Fixes 4. Performance 5. Documentation
## [{version}] - {YYYY-MM-DD}
### Breaking Changes
- **`function_name` parameter renamed** — `old_param` is now `new_param`.
Migration: find/replace `old_param=` with `new_param=` in all call sites. ([#{pr}]({url}))
### Features
- **{Feature name}** — {What it enables and why it matters}. ([#{pr}]({url}))
### Fixes
- Fixed {symptom} when {condition}. ([#{pr}]({url}))
### Performance
- {Operation} is now {X}x faster / uses {X}% less memory. ([#{pr}]({url}))
### Documentation
- Added {guide/reference} for {topic}. ([#{pr}]({url}))| Mode | Input | Output | When to Use | | --------- | -------------------------- | ------------------------ | ----------------------------- | | `
Curated, production-grade skills, agents, hooks, rules, commands, utilities, and presets for AI coding agents. No magic, no demos — battle-tested workflows built for developers who use AI seriously.
**DEPRECATED** — Modern Claude models condense and summarize technical documentation natively with comparable quality. The output…
DEPRECATED: The Opus 4.7 migration scanner is retired from the active skill catalog. Retained for archival reference only; not…
**DEPRECATED** — Modern Claude models produce accurate, well-explained regex patterns with edge-case test suites natively,…
**DEPRECATED** — Opus 4.7 uses adaptive thinking (optional at each step) and Sonnet 4.6 handles structured chain-of-thought…
Generates Architecture Decision Records capturing context, rationale, alternatives, and consequences in numbered status-tracked…
Build AI agents and automate Claude Code programmatically via the Claude Agent SDK and headless CLI mode. Covers Python SDK,…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.