ralph-loop について
ralph-loop は、元のプロンプトと前回までの作業をエージェントに繰り返し渡し、開発タスクを進めるスキルです。ループ状態をファイルに記録し、反復回数の上限や任意の完了条件を設定できます。
主な機能
- 01各ターンでタスクのプロンプトを再投入
- 02スクラッチパッドファイルへの状態記録
- 03反復回数の上限設定
- 04完了条件の設定
活用シーン
- 01開発タスクの反復作業
- 02エージェントの作業回数の制限
- 03指定条件を満たした時点での終了
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ cursor/ 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 対応