checkpointlisted
Install: claude install-skill kai-kou/gem-hunter
# チェックポイントスキル
## 目的
長時間実行パイプライン(各パイプライン・プロジェクト定義)のフェ��ズ境界で **復元可能な状態スナップショット** を作成する。
`/save-session` 型のセッション保存パターンをプロジェクトのフェーズ管理に適用したもの。
## トリガー条件
- `/checkpoint` コマンドを呼び出した時
- 「チェックポイントを作って」「フェーズ境界を記録して」「セーブポイント作成」等の依頼時
- 長時間パイプラインの各 Step 完了後(ステップ単位でコミットし、セッション断・圧縮時の作業消失を防ぐため推奨)
- セッション切れリスクがある作業前(ユーザー確認待ち直前など)
## 実行フロー
### Step 1: 現在のブランチ・状態を確認
```bash
git branch --show-current
git status --short
git log --oneline -3
```
確認事項:
- `main`/`master` ブランチでないこと(直接 push 禁止)
- 未コミットの変更があるかどうか
- 直近のコミット内容(作業コンテキストの把握)
---
### Step 2: 変更をコミット(未コミット変更がある場合)
```bash
git add -A
git commit -m "[{ID}] checkpoint: {フェーズ名} Step {N} 完了({概要})"
git push -u origin {ブランチ名}
```
コミットメッセージ規約:
- `[{ID}]` は対象エンティティの ID(プロジェクト定義・例: `[V015]`)
- `checkpoint:` プレフィックスで検索可能にする
- フェーズ名: プロジェクト定義の各フェーズ名(例: `design` / `build` / `test` / `release`)
- 概要: 何が完了したか(例: `成果物v1生成完了` / `バッチ1完了`)
変更がない場合(git status がクリーン):
- コミットをスキップして Step 3 へ進む
---
### Step 3: 状態スナップショットを Issue コメントに記録
対象エンティティの作業 Issue(`[{ID}] {フェーズ名}: {概要}` 形式・プロジェクト定義)を検索し、チェックポイントコメントを投稿する。
````
## ✅ チェックポイント: {フェーズ名} Step {N}
**日時**: {YYYY-MM-DD HH:MM} JST
**ブランチ**: `{ブランチ名}`
**コミット**: `{commit_sha_short}`
### 完了した作業
- [x] {完了した作業1}
- [x] {完了した作業2}
### 次のステップ(セッション再開時)
- [ ] {次に実行すべきアクション}
- コマンド: `{実行コマンド}`
### 品質チェック状態
| チェック項目 | 状態 | 備考 |
|------------|------|------|
| Done Criteria 達成確認 | ✅/⚠️/❌ | Issue 本文またはコミットに記載した完了条件を満たしているか |
| {チェック1} | ✅/⚠️/❌ | {備考} |
| {チェック2} | ✅/⚠️/❌ | {備考} |
### 失敗・問題記録(What Did NOT