frankbria/ralph-claude-code
Autonomous AI development loop for Claude Code with intelligent exit detection
解決する問題
Ralph は、単一の Claude Code 呼び出しを完全な無人開発サイクルに変える問題を解決します。手動で Claude を繰り返しプロンプトする代わりに、Ralph はプロジェクトの指示を読み、コード変更を実行し、進捗を追跡し、プロジェクトが本当に完了するまで繰り返すループで Claude Code を実行します。また、終了シグナルを誤って読み取って永遠に実行されることや、毎時または 5 時間の API 制限を使い果たすことなど、このようなループの 2 つの一般的な障害モードから保護します。
仕組み
Ralph はサイクルを実行します: .ralph/PROMPT.md からプロジェクトの指示をロードし、現在のコンテキストで Claude Code を実行し、タスクリストとログを更新します。完了は二重条件ゲートを使用してチェックします: 完了インジケータのヒューリスティックなカウント(自然言語パターンから少なくとも 2 つ)と、Claude の出力に明示的な EXIT_SIGNAL: true の両方が存在する必要があります。どちらかが欠けている場合、ループは続行します。Ralph はまた、連続した完了シグナルの後に強制終了するサーキットブレーカー、毎時上限(デフォルト 100 コール)のレート制限、3 層検出を備えた 5 時間 API 制限検出器、およびコンテキスト保持のための --resume を使用したセッション管理を使用します。--live でライブ出力をストリーミングしたり、Docker または E2B サンドボックスで実行したり、git 状態を自動バックアップしたりできます。
対象読者
Ralph は、Claude Code を使用し、より長い多段階のコーディングタスクを自律エージェントループに委任したい開発者向けです。製品要件文書(PRD)や GitHub イシューを、最小限の手動プロンプトで動作するコードベースに変換するのに特に役立ちます。また、明確に定義されたタスクリストで無人進捗を必要とするチームにも適しています。
ハイライト
- 二重条件の終了検出(完了インジケータ + 明示的な EXIT_SIGNAL)により、早期終了や無限ループを回避。
- 毎時リセットのレート制限とサーキットブレーカーにより、API の過剰使用や暴走ループを防止。
--resumeによるセッション継続(セッションハイジャックなし)と設定可能なセッション有効期限(デフォルト 24 時間)。- タイムアウトガード、JSON 解析、テキストフォールバックを含む 5 時間 API 制限の 3 層検出。
- プロジェクトタイプを自動検出し、beads、GitHub Issues、または PRD からタスクをインポートするインタラクティブな
ralph-enableウィザード。 ralph-importは、markdown、テキスト、JSON、DOCX、PDF の要件文書を構造化された Ralph プロジェクトに変換します。- リソース制限とコスト追跡を備えた Docker および E2B クラウドサンドボックス実行。
- オプションのライブストリーミング、デスクトップ通知、ドライランモード、ロールバック付きの自動 git バックアップブランチ。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト