← ClaudeAtlas

vibe-changeloglisted

Generates and maintains two changelog files from git tags, TASKS.md, DECISIONS.md, and feature folders. CHANGELOG.md at repo root is developer-facing in Keep a Changelog format with task IDs and decisions. CHANGELOG_CLIENT.md is plain English, grouped by "what you can now do", written like a product update — no task IDs or framework names. Version detection reads git tags first, then package.json or pyproject.toml. Appending uses git log [last-tag]..HEAD — never date-based. Groups completed tasks into higher-level entries rather than one line per task. If no git tags exist, generates as [Unreleased] and prompts to tag. Triggers: "changelog:" to generate or update both files, "changelog: since v1.0" to generate entries since a specific tag.
aakashdhar/vibe-skill · ★ 7 · Code & Development · score 68
Install: claude install-skill aakashdhar/vibe-skill
# Vibe Changelog Skill Generates two changelog files from actual project history — git tags, completed tasks, decisions, and feature specs. Never one line per task. Always grouped into meaningful entries. Always two audiences: developers and clients. --- ## Two files, always generated together | File | Audience | Format | Location | |---|---|---|---| | `CHANGELOG.md` | Developers | Keep a Changelog, task IDs, decisions | repo root | | `CHANGELOG_CLIENT.md` | Client stakeholders | Plain English, product-update style | repo root | --- ## Triggers | Trigger | What it does | |---|---| | `changelog:` | Generate or update both files for current version | | `changelog: since v1.0` | Generate entries only for changes since a specific tag | --- ## Step 0 — Read all sources Read everything needed before generating a single line. ```bash # Git history and tags git tag --sort=-version:refname 2>/dev/null git log --oneline --no-merges 2>/dev/null git log --format="%H|%ai|%s|%an" --no-merges 2>/dev/null # Version from project files cat package.json 2>/dev/null cat pyproject.toml 2>/dev/null cat setup.py 2>/dev/null # vibe context cat vibe/TASKS.md 2>/dev/null cat vibe/DECISIONS.md 2>/dev/null ls vibe/features/ 2>/dev/null ls vibe/bugs/ 2>/dev/null # Read each feature and bug spec cat vibe/features/*/FEATURE_SPEC.md 2>/dev/null cat vibe/bugs/*/BUG_SPEC.md 2>/dev/null # Existing changelogs — read before writing cat CHANGELOG.md 2>/dev/null cat CHANGELOG_CLIENT.md 2>/dev/null `