changelog-generatorlisted
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 "