ralph-wiggum
仕様駆動開発による自律的なAIコーディングを実現するスキル。Geoffrey Huntleyのイテレーティブなbashループ手法に基づき、エージェントがspecを一つずつ処理し、受け入れ基準を100%満たした時のみ完了シグナルを出力します。
description の原文を見る
Autonomous AI coding with spec-driven development. Implements Geoffrey Huntley's iterative bash loop methodology where agents work through specs one at a time, outputting a completion signal only when acceptance criteria are 100% met.
SKILL.md 本文
Ralph Wiggum
スペック駆動開発による自律的な AI コーディング
Ralph Wiggum とは?
Ralph Wiggum は、Geoffrey Huntley の反復 bash ループとスペック駆動開発を組み合わせ、完全に自律的な AI 支援ソフトウェア開発を実現します。
重要な洞察:各イテレーションで新しいコンテキスト。各ループは新しいエージェント処理で開始され、クリーンなコンテキストウィンドウを保ちながら、コンテキストのオーバーフロー悪化を防止します。
このスキルを使う場面
Ralph Wiggum は以下の場合に使用してください:
- 実装する複数の仕様・機能がある場合
- AI に自律的にタスクを処理させたい場合
- 受け入れ基準の一貫性のある検証可能な完了が必要な場合
- 長時間のセッションでコンテキストウィンドウの問題を回避したい場合
動作の仕組み
┌─────────────────────────────────────────────────────────────┐
│ RALPH LOOP │
├─────────────────────────────────────────────────────────────┤
│ Loop 1: Pick spec A → Implement → Test → Commit → DONE │
│ Loop 2: Pick spec B → Implement → Test → Commit → DONE │
│ Loop 3: Pick spec C → Implement → Test → Commit → DONE │
│ ... │
│ │
│ Each iteration = Fresh context window │
│ Shared state = Files on disk (specs, plan, history) │
└─────────────────────────────────────────────────────────────┘
インストール
クイックインストール (Skill Installers 経由)
# Vercel の add-skill を使用
npx add-skill fstandhartinger/ralph-wiggum
# OpenSkills を使用
openskills install fstandhartinger/ralph-wiggum
フルセットアップ (推奨)
constitution とインタビュー付きの Ralph Wiggum 完全セットアップ:
# AI エージェントに以下を指示します:
"Set up Ralph Wiggum using https://github.com/fstandhartinger/ralph-wiggum"
エージェントが軽量で快適なセットアップを案内します:
- クイックセットアップ (~1 分) — ディレクトリ作成、スクリプトダウンロード
- プロジェクトインタビュー — ビジョンと目標に焦点を当てる (技術詳細ではなく)
- Constitution — すべてのセッションを導く指針文書の作成
- 次のステップ — スペック作成と Ralph 開始に関する明確な指導
既存プロジェクトの場合、エージェントは技術スタックを自動検出します。インタビューは何を構築し、なぜ構築するのかの理解を優先します。
主要な概念
1. 各ループで新しいコンテキスト
Ralph ループの各イテレーションは新しい AI エージェント処理で開始されます。これにより以下が実現します:
- コンテキストウィンドウのオーバーフローなし
- 時間経過による劣化なし
- 各タスクに対するクリーンスレート
2. ディスク上の共有状態
状態はファイルを通じてループ間に持続します:
specs/— 受け入れ基準を含む機能仕様ralph_history.txt— ブレークスルー、ブロッカー、学習のログIMPLEMENTATION_PLAN.md— オプションの詳細なタスク分割
3. 完了シグナル
エージェントは以下の場合のみ <promise>DONE</promise> を出力します:
- すべての受け入れ基準が検証された
- テストがパスしている
- 変更がコミットおよびプッシュされている
bash ループはこのフレーズをチェックします。見つからない場合は再試行します。
4. テストによるバックプレッシャー
テスト、リント、ビルドはガードレールとして機能します。エージェントは完了シグナルを出力する前に問題を修正する必要があります。
使用方法
スペックの作成
成功の鍵: 各スペックに明確でテスト可能な受け入れ基準が必要です。これはタスクが本当に「完了」したことを Ralph に伝えるものです。
# Feature: User Authentication
## Requirements
- OAuth login with Google
- Session management
- Logout functionality
## Acceptance Criteria
- [ ] User can log in with Google
- [ ] Session persists across page reloads
- [ ] User can log out
- [ ] Tests pass
**Output when complete:** `<promise>DONE</promise>`
良い基準: 「ユーザーが Google でログインでき、セッションが保持される」 悪い基準: 「認証が正しく機能する」
受け入れ基準が具体的であればあるほど、Ralph のパフォーマンスが向上します。
ループの実行
# ビルド開始 (Claude Code)
./scripts/ralph-loop.sh
# 最大イテレーション付き
./scripts/ralph-loop.sh 20
# Codex CLI を使用
./scripts/ralph-loop-codex.sh
ログ (すべての出力をキャプチャ)
すべてのループ実行は全出力を logs/ のログファイルに書き込みます:
- セッションログ:
logs/ralph_*_session_YYYYMMDD_HHMMSS.log(全実行、CLI 出力含む) - イテレーションログ:
logs/ralph_*_iter_N_YYYYMMDD_HHMMSS.log(イテレーション毎の CLI 出力) - Codex 最後のメッセージ:
logs/ralph_codex_output_iter_N_*.txt
2 つのモード
| モード | 目的 | コマンド |
|---|---|---|
| build (デフォルト) | スペック選択、実装、テスト、コミット | ./scripts/ralph-loop.sh |
| plan (オプション) | 詳細なタスク分割を作成 | ./scripts/ralph-loop.sh plan |
主要な原則
Ralph に Ralph させる
AI に自己認識、自己修正、自己改善を信頼してください。パターンを観察してプロンプトを調整してください。
YOLO モード
Ralph が効果的に機能するには、完全な自律性を有効にしてください:
- Claude Code:
--dangerously-skip-permissions - Codex:
--dangerously-bypass-approvals-and-sandbox
⚠️ ご自身の責任で使用してください。 サンドボックス環境でのみ使用してください。
リンク
- GitHub: https://github.com/fstandhartinger/ralph-wiggum
- Website: https://ralph-wiggum.ai
- Original methodology: Geoffrey Huntley's how-to-ralph-wiggum
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- fstandhartinger
- ライセンス
- MIT
- 最終更新
- 不明
Source: https://github.com/fstandhartinger/ralph-wiggum / ライセンス: MIT
関連スキル
agent-browser
AI エージェント向けのブラウザ自動化 CLI です。ウェブサイトとの対話が必要な場合に使用します。ページ遷移、フォーム入力、ボタンクリック、スクリーンショット取得、データ抽出、ウェブアプリのテスト、ブラウザ操作の自動化など、あらゆるブラウザタスクに対応できます。「ウェブサイトを開く」「フォームに記入する」「ボタンをクリックする」「スクリーンショットを取得する」「ページからデータを抽出する」「このウェブアプリをテストする」「サイトにログインする」「ブラウザ操作を自動化する」といった要求や、プログラマティックなウェブ操作が必要なタスクで起動します。
anyskill
AnySkill — あなたのプライベート・スキルクラウド。GitHubを基盤としたリポジトリからエージェントスキルを管理、同期、動的にロードできます。自然言語でクラウドスキルを検索し、オンデマンドでプロンプトを自動ロード、カスタムスキルのアップロードと共有、スキルバンドルの一括インストールが可能です。OpenClaw、Antigravity、Claude Code、Cursorに対応しています。
engram
AIエージェント向けの永続的なメモリシステムです。バグ修正、意思決定、発見、設定変更の後はmem_saveを使用してください。ユーザーが「覚えている」「記憶している」と言及した場合、または以前のセッションと重複する作業を開始する際はmem_searchを使用します。セッション終了前にmem_session_summaryを使用して、コンテキストを保持してください。
skyvern
AI駆動のブラウザ自動化により、任意のウェブサイトを自動化できます。フォーム入力、データ抽出、ファイルダウンロード、ログイン、複数ステップのワークフロー実行など、ユーザーがウェブサイトと連携する必要があるときに使用します。Skyvernは、LLMとコンピュータビジョンを活用して、未知のサイトも自動操作可能です。Python SDK、TypeScript SDK、REST API、MCPサーバー、またはCLIを通じて統合できます。
pinchbench
PinchBenchベンチマークを実行して、OpenClawエージェントの実世界タスクにおけるパフォーマンスを評価できます。モデルの機能テスト、モデル間の比較、ベンチマーク結果のリーダーボード提出、またはOpenClawのセットアップがカレンダー、メール、リサーチ、コーディング、複数ステップのワークフローにどの程度対応しているかを確認する際に使用します。
openui
OpenUIとOpenUI Langを使用してジェネレーティブUIアプリを構築できます。これらはLLM生成インターフェースのためのトークン効率的なオープン標準です。OpenUI、@openuidev、ジェネレーティブUI、LLMからのストリーミングUI、AI向けコンポーネントライブラリ、またはjson-render/A2UIの置き換えについて述べる際に使用します。スキャフォルディング、defineComponent、システムプロンプト、Renderer、およびOpenUI Lang出力のデバッグに対応しています。