con un clic
retrospective
開発サイクル完了時(実装・レビュー・追加修正まで済んだ後)に使用。教訓の抽出・残タスクの振り分け・RETROSPECTIVE.md 更新を行う。
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Menú
開発サイクル完了時(実装・レビュー・追加修正まで済んだ後)に使用。教訓の抽出・残タスクの振り分け・RETROSPECTIVE.md 更新を行う。
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Basado en la clasificación ocupacional SOC
workspace/plan.md の完成後、実装着手前に使用。計画の影響範囲・不変条件・スコープの漏れを検証する。
GitHub issue から作業を開始するときに使用。実装の前段階(ブランチ作成・調査・計画・計画レビュー)までを行う。
コード変更を伴うタスク(機能追加・バグ修正・リファクタリング)の実装時に使用。実装からコミット作成まで自律的に行う(計画が要る変更は /start-issue へ)。
大きなサイクル完了後や定期メンテナンス時に使用。governance:check(決定的検査)を実行し、機械化できない意味的整合(コマンド直書き grep・npm ラッパー等価・メモリ整合)を検証して報告する(修正はしない)。
UI モード・状態遷移・ガード条件の追加・変更時、または計画レビュー時に使用。既存モードとの直交性・リセット経路・入力分岐・SPEC §8.6 整合を検証する。
worker スレッド・channel・フレーム drain・Tauri listener・スレッド/窓をまたぐ共有状態・フレーム内 live-read を追加/変更したとき、または async 関数を追加/変更したとき、あるいは計画レビュー時に使用。送信から適用までの窓での状態競合リスクを検証する。
| name | retrospective |
| description | 開発サイクル完了時(実装・レビュー・追加修正まで済んだ後)に使用。教訓の抽出・残タスクの振り分け・RETROSPECTIVE.md 更新を行う。 |
| disable-model-invocation | true |
| argument-hint | [対象ブランチ名や作業の概要(省略時は現在のブランチの差分を使用)] |
| allowed-tools | ["Bash(git *)","Bash(gh *)","Read","Edit","Write","Grep","Glob"] |
開発サイクルの振り返りを行う。質問せず自律的に進めること。
対象: $ARGUMENTS
git log main..HEAD --oneline
git diff main..HEAD --stat
workspace/plan.md があれば読み、当初の計画と実際の実装を比較するgh pr view で確認する以下の3観点で分析する:
各教訓について「これは何をした瞬間に必要になるか」を問う(実際の配置先は Step 3 の階梯で決める)。既定で AGENTS.md に足さない——トリガーを持つ教訓は、そのトリガーに紐づく文書へ置く:
#[must_use]・hook・test)の候補.claude/rules/ の候補docs/development-principles.md の候補AGENTS.md「検証の作法」の候補Step 2 で抽出した構造的パターンのうち、今後のサイクルで繰り返し参照する価値があるものを、その教訓が必要になるトリガーに紐づく文書へ置く。AGENTS.md 常時ロードへの追加は既定でも第一候補でもなく、最後の手段である——真に横断的でトリガーを持たない原則だけがそこに値する。単発の出来事ではなく、再発しうるパターンのみ配置する。
上の段から順に検討する(docs/development-principles.md「構造的設計原則と強制の階梯」と AGENTS.md 冒頭の組織原理に対応):
#[must_use]・hook・テストで違反を検出、または構造で不能にできるなら、教訓は「注意書きの追加」ではなく**「機構の追加・強化」**にする。AGENTS.md・各 CLAUDE.md に専用チェックリストや注意書きが要る箇所は「構造が規則を吸収できていない」診断信号である。カナリアで守るのは沈黙する経路だけでよい(放っておいても明示的に失敗するものに見張りは要らない).claude/rules/<X>.md(対象を読むと自動配送される)。既存 rule の paths: に該当するなら本文へ追記、しなければ新設(新設時はカナリア要否を判断)/symmetric-check・/plan-review・/state-check・/cache-check・/persistence-check・/dry-check・/race-check 等)の本文へ。AGENTS.md には「条件別チェック」表に「トリガー → 参照先」の 1 行だけ足す(本文の SSOT は skill 側)docs/development-principles.mdCLAUDE.md(src-tauri/・snotra-core/・snotra-settings/・snotra-egui-runtime/)/Claude Code 固有(コミュニケーション原則・スキル表・委譲/worktree 運用) → ルート CLAUDE.mdAGENTS.md「検証の作法」コア。ここだけが常時ロードに値する検収条件: AGENTS.md が重くなる方向の変更は smell として扱う。ドキュメントが軽くなることを設計改善の検収条件とする(構造が規則を吸収したら対応するチェックリストは削除する)。既存ルール・既存のトリガーで包含できるなら追記しない。同じ教訓の本文を 2 箇所に書かない——AGENTS.md はポインタ、本文はトリガーに紐づく文書に 1 つ(ドリフト防止)。
RETROSPECTIVE.md は上書きファイルであり、サイクルを越えて生き残るタスクを置くと次サイクルの上書きで失われる。Step 2 で洗い出した「実行が必要な項目」のうち、Step 3 で教訓として配置しきれなかったもの(=ドキュメント化でなく実行を要するもの)を、以下の追跡先へ振り分ける(RETROSPECTIVE.md には残さない):
gh pr edit --body 等)。PR が merge されれば自然に閉じるgh issue create)。迷ったら永続側=issue を選ぶ既に完了済みのタスク(merge 済み PR の手順など)は振り分け不要。振り分けた issue 番号 / PR チェックリストは出力に記録する。
Step 3・Step 4 が完了してから、RETROSPECTIVE.md を以下の 2 セクションフォーマットで上書きする。タスク(ネクストアクション)は Step 4 で振り分け済みのため含めない:
# Retrospective — <サイクルの概要>
## よかったこと
### <見出し>
<説明>
---
## 伸びしろ
### <見出し>
<説明>
`<対象>`「<見出し>」 で書く(.claude/rules/governance-docs.md)。RETROSPECTIVE.md は G11 の母集団に入っており、上書きのたびに参照の形が決め直される——ここで散文形に戻すと、着地の照合が毎サイクル失われるサイクルで変更した内容に関連するメモリが MEMORY.md に存在するか確認する。
MEMORY.md はリポジトリ外にある(所在と委譲規約は .claude/skills/health-check/SKILL.md の Check 7 を SSOT とする)。
MEMORY.md を読み、各メモリファイルの説明を確認するdescription で関連性を判断してはならない — 今サイクルで覆した前提・変更した設定・仕様変更のキーワードと概念名で、メモリ本文を grep する(description は本文の派生要約であり、古びた一文がそこに現れるとは限らない。手順の SSOT は health-check の Check 7d)MEMORY.md のインデックスも同期)判断基準: メモリは「コードやドキュメントから読み取れない、セッション横断で有用な情報」のみ保持する。コードの構造やパターンは AGENTS.md / 各 CLAUDE.md の責務。
サイクル末の衛生チェックを実施する(実行責任は /retrospective が負う)。/health-check は user 起動専用(disable-model-invocation)でスキルからは起動できないため、その定義 .claude/skills/health-check/SKILL.md に従い、npm run governance:check の実行(赤は発見事項)と、機械化されていない検査(Check 5 の残置部分・Check 7)を本スキルの責任で実施する(=/health-check を起動しない、という意味である。実行方式はインライン/サブエージェントへの委譲のいずれでもよい)。
サブエージェントへ委譲する場合、Check 7 にはメモリ領域の絶対パスをプロンプトへ明示的に渡す(サブエージェントは system prompt を継承しないため、渡さなければ MEMORY.md を見つけられない)。渡さないなら Check 7 は [Skipped] であり、Skipped が残るまま「All checks passed」と報告しない(#489)。
health-check は「報告のみ・修正しない」定義のため、発見事項の処理は本スキルが担い、Step 3・Step 4 の方針に従って振り分ける:
以下を報告:
Skipped とその処理・根拠)。カテゴリ定義は health-check の出力形式(.claude/skills/health-check/SKILL.md)を SSOT とする——根拠は発見事項でも Skipped でもない実行の証跡で、governance:check の出力(照合母集団の件数行)・Check 7 の実在列挙などが該当する(発見事項カウント・All checks passed 判定には算入しない)