← ClaudeAtlas

changelog-generatorlisted

Manage a project's changelog automatically. Creates per-event markdown entries under `changelog/` and regenerates a single human-readable `CHANGELOG.html` at repo root. Triggered when the user says "push", "commit", "update changelog", "write changelog", "準備 push", or at session start to backfill any pending entries from `.git/pending-changelogs.log`. Each HTML event shows date, author, branch chips, summary, file list, and a GitHub commit diff link. Also retroactively backfills commits pushed without changelog (via optional pre-push hook ledger). HTML is machine-generated — never edit it by hand, always edit the source markdown and regenerate.
Saigetsu233/harness-jp-si · ★ 0 · Code & Development · score 57
Install: claude install-skill Saigetsu233/harness-jp-si
# Changelog Generator (Standalone, single-file skill) 任意の git repo で動作する独立 skill。Claude Code に装入するだけで使える。 ## 装入 (Claude Code) このファイルを以下のいずれかの場所に配置するだけで Claude が自動認識する: | 配置場所 | スコープ | | --- | --- | | `~/.claude/skills/changelog-generator/SKILL.md` | ユーザ全 repo で利用可 (推奨) | | `<repo>/.claude/skills/changelog-generator/SKILL.md` | 当該 repo のみ | 配置後、何もしなくて OK。次回 Claude Code 起動時に skill が認識される。 ## 使い方 ``` ユーザ: 「何か変更した。push する前に changelog 書いて」 ↓ Claude が本 skill を発動: - changelog/<YYYYMMDD>-<slug>.md を作成 - CHANGELOG.html を再生成 ↓ ユーザ: git add . && git commit && git push ``` --- ## Path 約定 | 項目 | Path | | --- | --- | | Markdown source | `changelog/*.md` (`README.md` 除外) | | 生成 HTML (機械生成、手編集禁止) | `CHANGELOG.html` (repo root) | | Pending ledger (任意 hook 利用時) | `.git/pending-changelogs.log` | 最初の発動時に `changelog/` が無ければ自動作成。 --- ## 発動タイミング - **セッション開始時** — `.git/pending-changelogs.log` が存在し非空なら Step 0 を実行 - ユーザが「push」「準備 push」「commit」「update changelog」と述べた時 - ユーザが `changelog/` に新規 `.md` を作った時 - ユーザが明示的に「changelog HTML を再生成して」と依頼した時 --- ## 実行ステップ ### Step 0: Pending ledger 追溯処理 (skill 発動時の最優先) ```bash [ -s .git/pending-changelogs.log ] && cat .git/pending-changelogs.log ``` ledger format: `commit_hash|ISO_date|author|subject|comma_files` 各 entry について: 1. `git show <hash> --stat` で実変更を確認 2. `changelog/<YYYYMMDD>-<slug>.md` を **追溯エントリ** として作成 - slug は subject から kebab-case で生成 - 内容に `> 追溯記録: hash <full-hash>` を必ず明記 3. 補完後、ledger から該当行を削除: ```bash sed -i.bak "