ralph-loop について
Ralph Wiggum は、複数回の反復や定期的な振り返りが必要な複雑な作業向けに、ペースを制御できる長期開発ループを実行します。チェックリストで進捗を管理し、独立したタスクをサブエージェントに委任できます。
主な機能
- 01反復ループでタスクを進行
- 02タスク内容を保存して進捗を管理
- 03設定した間隔で振り返り
- 04チェックリスト項目をサブエージェントに委任
- 05ループの一時停止、再開、アーカイブ、整理
活用シーン
- 01複雑な開発作業を段階的に完了
- 02依存する複数の手順をチェックリストで管理
- 03独立したタスクを別々のサブエージェントに委任
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ zenobi-us/ dotfiles --skill ralph-loopインストール後、Claude Code で/ralph-loopを入力して読み込まれたか確認します。
詳細
Ralph Wiggum - 長時間実行型開発ループ
ペースを制御しながら、長時間にわたって反復的な開発ループを実行します。
使用する場面
- 複数回の反復が必要な複雑なタスク
- 相互に積み重なる、多数の個別ステップを含むタスク
- 定期的な振り返りが役立つ作業
単発の簡単なタスクや小規模な修正には使用しないでください。
エージェントツール
ralph_start を呼び出して、自分自身でループを開始します。
ralph_start({
name: "loop-name",
taskContent: "# Task\n\n## Goals\n- Goal 1\n\n## Checklist\n- [ ] Item 1\n- [ ] Item 2",
maxIterations: 50, // Default: 50
itemsPerIteration: 3, // Optional: suggest N items per turn
reflectEvery: 10, // Optional: reflect every N iterations
useSubagents: true, // Optional: delegate each task to subagent
subagentAgent: "default" // Optional: subagent name (default: 'default')
})
ループの動作
- タスクの内容は
.ralph/<name>.mdに保存されます - 各イテレーションでタスクに取り組み、ファイルを更新します
ralph_doneツールを呼び出して、次のイテレーションに進みます- 完了したら、
<promise>COMPLETE</promise>を出力します - 完了時、または最大イテレーション数(デフォルトは50)に達した時点でループが終了します
ユーザーコマンド
/ralph start <name|path>- 新しいループを開始します/ralph resume <name>- ループを再開します/ralph stop- ループを一時停止します(エージェントがアイドル状態のとき)/ralph-stop- アクティブなループを停止します(アイドル状態のときのみ)/ralph status- ループを表示します/ralph list --archived- アーカイブ済みのループを表示します/ralph archive <name>- ループをアーカイブに移動します/ralph clean [--all]- 完了したループを整理します/ralph cancel <name>- ループを削除します/ralph nuke [--yes]- すべての .ralph データを削除します
ストリーミング中にループを中断するにはESCを押し、再開するには通常のメッセージを送信します。ループを終了するには、アイドル状態になってから /ralph-stop を実行します。
タスクファイルの形式
# Task Title
Brief description.
## Goals
- Goal 1
- Goal 2
## Checklist
- [ ] Item 1
- [ ] Item 2
- [x] Completed item
## Notes
(Update with progress, decisions, blockers)
サブエージェントモード
チェックリストの各タスクを、個別のサブエージェントスレッドに委任します。
/ralph start my-tasks --use-subagents --subagent-agent default
仕組み:
- 未完了のチェックリスト項目(
- [ ] Task)を抽出します - 各タスクを新しいサブエージェントスレッドに委任します(1タスク=1サブエージェント)
- サブエージェントがタスクを完了し、完了済みとしてマークします(
- [x] Task) - メインループが進行を調整し、追跡します
- 失敗時は自動的に再試行します(2回まで)
メリット:
- タスクごとに新しいコンテキストを使用できます(汚染がありません)
- 実行が分離されるため、失敗が連鎖しません
- タスクの追跡と進捗の報告が明確です
- 独立した個別タスクに適しています
使用する場面:
- タスクが独立している(状態を共有しない)
- 各タスクが個別に実行するのに十分な規模である
- タスク間を明確に分離したい
- タスクリストが事前に明確に定義されている
ベストプラクティス
- 明確なチェックリスト:作業を個別の項目に分割します
- 進めながら更新:項目を完了としてマークし、メモを追加します
- 行き詰まったら振り返る:振り返りを行い、進め方を再検討します(通常モード)
- 適切に完了する:本当に完了した場合にのみ、完了マーカーを出力します
- サブエージェントモード:境界が明確な独立タスクに使用します
コメント
Markdown 対応