ralph-loop について
ralph-loop は、各ターンの後に同じタスクのプロンプトをエージェントへ再送する反復開発ループを開始するスキルです。ループ状態を記録し、任意の反復上限と完了宣言を設定できます。
主な機能
- 01ループ状態ファイルの作成
- 02反復上限の設定
- 03任意の完了宣言の設定
- 04各ターン後のタスクプロンプト再送
活用シーン
- 01エージェントでタスクを反復実行
- 02反復作業に安全上限を設定
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ poteto/ plugins --skill ralph-loopインストール後、Claude Code で/ralph-loopを入力して読み込まれたか確認します。
詳細
Ralph ループ
トリガー
ユーザーが Ralph ループの開始を希望しています。これは、各ターン後に同じプロンプトが再入力され、エージェントが反復ごとに自身の前回の作業を確認する反復型の開発ループです。
ワークフロー
-
ユーザーのタスクプロンプトと、任意のパラメーターを収集します。
max_iterations(数値。デフォルトは無制限を意味する 0)completion_promise(テキスト。設定しない場合は"null")
-
ディレクトリ
.cursor/ralph/が存在しない場合は作成し、次の正確な形式で状態ファイル.cursor/ralph/scratchpad.mdを書き込みます。--- iteration: 1 max_iterations: <N or 0> completion_promise: "<TEXT>" or null --- <the user's task prompt goes here>例:
--- iteration: 1 max_iterations: 20 completion_promise: "COMPLETE" --- Build a REST API for todos with CRUD operations, input validation, and tests. -
Ralph ループが有効になったことをユーザーに伝えてから、タスクに取りかかります。
-
停止フックが各ターンの終了を自動的に検知し、フォローアップメッセージとして同じプロンプトを再入力します。プロンプトの先頭には
[Ralph loop iteration N.]が付いています。
ガードレール
- 完了条件が設定されている場合、その内容が完全かつ確実に真であるときに限り、
<promise>TEXT</promise>を出力できます。 - ループを抜けるために、偽の完了条件を出力しないでください。
- 安全策として
max_iterationsを設定することを、必ず推奨してください。 completion_promiseの値に特殊文字が含まれる場合は、YAML フロントマター内で引用符で囲んでください。
出力
ループが有効になったことを確認し(プロンプト、反復回数の上限、設定されている場合は完了条件を伝えます)、すぐにタスクに取りかかります。
コメント
Markdown 対応