ralph-review について
ralph-reviewは、実行前にRalphの計画とbdタスクグラフの欠陥を確認するエージェントスキルです。グラフ構造を検証した後、サブエージェントにレビューを依頼します。
主な機能
- 01エピックと子タスクの構造検証
- 02循環と実行可能タスクの確認
- 03親子関係とラベル集合の比較
- 04参照文書に基づく計画レビュー
- 05高・中 severity の問題を報告
活用シーン
- 01Ralphの実行前の計画確認
- 02欠落タスクや孤立タスクの発見
- 03タスクの依存関係と説明の確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ jimweller/ clanker-skills --skill ralph-reviewインストール後、Claude Code で/ralph-reviewを入力して読み込まれたか確認します。
詳細
STARTER_CHARACTER = 🔍
Ralph レビュー
ralph の計画と bd グラフに欠陥がないかレビューするサブエージェントを起動します。
起動
ランチャーが bd グラフを検証し、グラフの状態を取得してから、サブエージェントを起動します。
1. bd グラフを検証する
スラッグを導出し、実行エピックを特定します。
PROJECT_ROOT=$(git rev-parse --show-toplevel)
SLUG=$(git branch --show-current | tr '/' '-')
EPIC=$(bd list -t epic -l "ralph:${SLUG}" --json | jq -r '[.[] | select(.status=="open")] | .[0].id // empty')
構造チェックを実行します。各失敗は HIGH の指摘事項です。
- ラベル
ralph:${SLUG}を持つ未完了のエピックがちょうど 1 つある bd dep cyclesでサイクルが報告されない- エピックに子が 1 つ以上ある(
bd list --parent "$EPIC") - 準備完了のタスクが 1 つ以上ある(
bd ready --parent "$EPIC") - すべての子に説明がある
- 親の集合(
bd list --parent "$EPIC")がラベルの集合(エピックを除くbd list --label "ralph:${SLUG}")と一致する
孤立ノードがないか確認します(MEDIUM)。
HIGH の指摘事項がある場合は、直接報告して停止します。レビューの前にグラフが健全でなければなりません。
2. グラフの状態を取得する
bd list --parent "$EPIC" --json
bd ready --parent "$EPIC" --json
bd list --label "ralph:${SLUG}" --json
3. サブエージェントを起動する
以下のレビュー用プロンプトを使ってサブエージェントを起動します。<PROJECT_ROOT>、<SLUG>、<EPIC>、グラフ検証の指摘事項、取得したグラフの状態を置き換えます。
グラフ検証の指摘事項を先頭に付けて、応答をそのまま中継します。
レビュープロンプト
あなたは計画のレビュアーです。計画を読み、グラフの状態と照らして評価し、欠陥がないか確認してください。
ソース
<PROJECT_ROOT>/.llmtmp/ralph-plan.md を読みます。次に ## Inputs セクションを見つけ、plan documents: の行を解析します。カンマで分割し、空白を削除して、各パスを読みます。これらは計画文書です。計画担当者が参照した将来の意図を示す文書(PRD、設計メモなど)です。計画には、それらの内容が忠実に反映されていなければなりません。計画文書の要件を省略、矛盾、または古い参照をしている場合は、計画を指摘してください。
Ralph ループの仕組み
ralph ループは、自律的かつ反復的な実行の仕組みです。2 つのモードで同じ成果物を共有します。
- セッション内(ralph-loop プラグイン):Stop フックが同じ Claude セッションにプロンプトを再投入します。
- 外部(scripts/ralph.sh):bash の while ループが反復ごとに新しい
claude --printを起動します。
仕組み:
- bd グラフがステートマシンです。各実行は専用のエピック配下にまとめられます。並行するワークツリーは
--parentによるフィルタリングで分離されます。 - 実行エピックはラベル
ralph:<slug>を持ちます。各子タスクには--parent <epic>と同じラベルの両方を設定します。孤立の検出には、この 2 つのシグナルを独立して使用します。 - 計画の「Run Identity」セクションには、スラッグとエピック ID がそのまま記録されています。エージェントは各反復で計画からそれらを読み取ります。
- 1 回の反復につきタスクは 1 つです。エージェントは
bd ready --parent <epic> --jsonを読み取り、最初の結果を選んで説明に従って実行し、タスクを完了してから停止します。 - 準備完了のキューが空になったら、エージェントはエピックを完了し、センチネルを出力します。
- すべてのアクションは bd タスクです(ブランチ作成、BEGIN タグ、コード、ドキュメント、END タグ)。すべて実行エピックを親に設定します。
- 各 bead の説明には、ファイル、検証コマンド、コミットメッセージなど、完全な指示が含まれています。
- 実行全体に適用される規約は、すべての説明ではなく ralph-plan.md に記載します。
- 環境は前提条件です。認証情報、ツールチェーン、ランタイム依存関係は、オペレーターの責任です。
許容されるパターン(指摘しないでください):タスクをまとめて一括化すること、部分的な完了、ワークフローの起動ではなく実行 ID として ralph:<slug> ラベルを使うこと。
該当する指摘
指摘とは、実行前に作成者が修正すべき欠陥、抜け漏れ、またはリスクです。適合性は前提条件であり、指摘ではありません。重大度は HIGH または MEDIUM のみです。それより重大度の低い内容は省略してください。
HIGH:ralph:<slug> に該当する未完了のエピックが 0 件または複数ある;説明が空である;グラフに循環がある;エピックに子がない;子はあるが着手可能なタスクがない;親とラベルの設定が一致しない;タスクごとのワークフローが bd close の後も停止せずに続行する;タスクごとのワークフローで、センチネルの前にエピックを閉じる処理が抜けている;Run Identity セクションがない;plan documents: 行を含む Inputs セクションがない;計画が計画ドキュメントと矛盾している;Approach の説明で、依存関係のエッジが強制していない順序を明示している。
MEDIUM:説明に検証コマンドまたはコミットメッセージがない;複数タスクのグラフに孤立したタスクがある;README.md/CLAUDE.md/.llmdocs/ に触れるタスクで、ドキュメントスキル(/docs、$docs)を実行せず、作成者が編集している。
評価項目
以下の欠陥パターンのみを対象にレビューしてください。見つかった欠陥のみを報告してください。それ以外は報告しないでください。
- 目標の明確さ - 目標が曖昧である;新しいコンテキストでの反復作業では、計画だけから成功を判断できない
- タスクの分割 - 粒度が適切でない;タスクを個別に完了できない;タスクが不足または重複している;手法名がタイトルに使われている;新しいコンテキストで作業する担当者に必要な説明の詳細が不足している
- 順序付けと依存関係 - エッジが不適切である;
bd readyの順序で誤った結果になる;暗黙の依存関係に明示的なエッジがない;循環がある;孤立したノードがある - 計画の完全性 - 規約/ツール/コマンドが不足している;ビルド/テスト/lint コマンドが不正確である;タスクごとのワークフローが不明確である;Run Identity がない;ワークフローにエピックのスコープ指定がない;エピックを閉じる処理がない;STOP の指示がない;
ralph/ブランチおよび BEGIN/END タグがない;ドキュメントスキルに委任せず、インラインで編集している - リスクと抜け漏れ - 自律実行が失敗する;人間の判断が必要なタスクがある;リポジトリが壊れた状態で残るタスクがある
- 実現可能性 - 1 回の反復では現実的に完了できないタスクがある;新しいコンテキストでの自律作業では完了できないタスクがある
出力形式
# Ralph Loop Review
## Goal Clarity
## Task Decomposition
## Sequencing and Dependencies
## Plan Completeness
## Risk and Gaps
## Feasibility
## Summary
指摘の形式:- **[high]** タイトル。説明。 または - **[medium]** タイトル。説明。
各セクション見出しを必ず含めてください。欠陥のみを各セクションの下に記載してください。セクションに欠陥がない場合は、「該当する指摘はありません。」と記載してください。
要約:全体的な評価と、優先度の高い上位 3 つの推奨事項。
タスク ID とセクション名を引用してください。レビューのみを出力してください。