🚀 Claudeコード用AI計画システム
GoogleのGemini CLIを計画バックエンドとして統合し、Claude Codeで実装する包括的なAI計画システムです。自動的な計画実行ワークフロー、永続的なコンテキスト管理、およびシームレスなMCP統合を特徴としています。
✨ 主な機能
- 🤖 Gemini 2.5 Pro統合:Googleの最新のGemini CLIを使用した高度な計画機能
- 🔄 コンテキスト管理:計画と実行セッション間での永続的なコンテキスト管理
- 🔁 計画実行ワークフロー:自動的に計画を生成し、それに従って段階的に実装
- 🛠️ Claude Code統合:モデルコンテキストプロトコル(MCP)を介したシームレスな統合
- 📊 進捗監視:計画と実行の進捗をリアルタイムで監視
- 🎯 環境ベースの設定:ハードコードされたデフォルト値はなく、
.envファイルで完全に設定可能
- 🧩 プロンプトベースのライブラリ自動解決:自然言語でスタックを説明するか、構造化されたライブラリ仕様を渡すことができます。
🚀 クイックスタート
前提条件
- Node.js 18以上
- Go 1.19以上(Gemini CLI用)
- Claude Codeがインストールされていること
- Google AI Studioから取得したGemini APIキー
📦 インストール
-
システムをクローンしてセットアップする:
git clone <repository-url>
cd revolver-orchestrator-mcp/
./scripts/setup-gemini-cli.sh
-
環境ファイルを作成して設定する:
cp .env.example .env
.envファイルにGemini APIキー - GEMINI_API_KEYを追加します。
-
依存関係をインストールしてビルドする:
./scripts/install-dependencies.sh
-
Claude統合をセットアップする:
./scripts/setup-claude-integration.sh
このスクリプトは以下のことを行います:
- Claudeのインストールを検出する(コマンドまたはエイリアス)
claude mcp add-jsonを使用してGemini計画MCPサーバーを登録する
- 必要に応じて直接の設定ファイル方法にフォールバックする
- 適切な依存関係でMCPサーバーをビルドする
-
システムをテストする:
./scripts/test-system.sh
💻 使用例
基本的な使用法
計画実行ワークフロー(推奨)
自動的な計画と実装にこのパターンを使用します:
以下の要件を持つReactのTODOアプリケーションを構築します:
- TODOの追加、編集、削除
- TODOを完了としてマークする
- ローカルストレージの永続化
- クリーンでモダンなUI
ワークフロー:
1. このタスクのためのプロジェクトコンテキストを作成する
2. Geminiを使用して詳細な実装計画を生成する
3. 計画を段階的に実行する
このワークフローに自動的に従ってください。
手動の段階的なプロセス
-
プロジェクトコンテキストを作成する:
ReactフロントエンドとNode.jsバックエンドを持つリアルタイムチャットアプリケーションのためのプロジェクトコンテキストを作成する
-
詳細な計画を生成する:
Gemini MCPを使用して、チャットアプリケーションコンテキストの包括的な実装計画を生成する
-
計画を実行する:
必要なすべてのファイルとコンポーネントを作成しながら、計画を段階的に実装する
経験則
一般的に、ツール呼び出しをアクティブにするには、プロンプトに「Plan with Gemini」を含めてください。
簡単な例
ローカルストレージを持つReactのTODOアプリを構築する。まずプロジェクトコンテキストを作成し、Geminiで計画を生成し、その後実装する。
JWT認証を持つタスク管理用のREST APIを作成する。Gemini MCPを使用してアーキテクチャを計画し、その後段階的に実装する。
ReactフロントエンドとNode.jsバックエンドを持つリアルタイムチャットアプリを構築する。まずGeminiで計画を立て、その後実装を実行する。
高度な使用法
アーキテクチャ
┌─────────────────────┐ ┌─────────────────────┐
│ Claude Code │ │ Gemini CLI │
│ (Execution) │────│ (Planning) │
└─────────────────────┘ └─────────────────────┘
│ │
└─────────┬─────────────────┘
│
┌─────────────────────────────────────┐
│ MCP Integration │
│ - Context Management │
│ - Feedback Processing │
│ - Session Coordination │
└─────────────────────────────────────┘
設定
環境設定
すべての設定は.envファイルを介して行われます(ハードコードされたデフォルト値はありません):
# Gemini Configuration
GEMINI_API_KEY=you_gemini_api_key_here
GEMINI_MODEL=gemini-2.5-pro
GEMINI_TEMPERATURE=0.3
GEMINI_MAX_TOKENS=4000
GEMINI_CLI_PATH=gemini
# Context7 MCP URL
CONTEXT7_URL=https://mcp.context7.com/mcp
# System Configuration
LOG_LEVEL=info
CONTEXT_STORAGE_PATH=./contexts
利用可能なモデル
注:Geminiモデルの使用はGemini CLIでは無料ですが制限があります。通常、日常の計画タスクには十分です。
gemini-2.5-pro - 最新かつ最も機能が豊富なモデル(推奨)
gemini-2.5-flash - 汎用的でバランスの良いパフォーマンス
gemini-2.5-flash-lite - 2.5ファミリーの中で最も軽量なモデル
設定に関する注意事項
GEMINI_API_KEYは必須です - Google AI Studioから取得してください。
GEMINI_MODELは計画に使用するモデルを決定します。
GEMINI_TEMPERATUREは応答の創造性を制御します(0.1 - 0.9)。
- 最新のGemini CLIでは
GEMINI_TEMPERATUREとGEMINI_MAX_TOKENSを直接使用しない場合があります。
- システムはすべての設定に環境変数に依存しています。
ツールとユーティリティ
コンテキスト監視
node tools/context-viewer.js <context-id>
./tools/monitor-contexts.sh
システムテスト
./scripts/test-system.sh
cd gemini-cli-mcp-server && npm test
プロジェクト構造
ai-planning-system/
├── gemini-cli-mcp-server/ # Gemini CLI MCP wrapper
│ ├── src/
│ │ ├── services/ # Planning services
│ │ ├── gemini-cli-wrapper.ts # Gemini CLI integration
│ │ └── index.ts # MCP server entry point
│ ├── tsconfig.json # TypeScript configuration
│ └── package.json
├── shared-context/ # Context management
│ ├── types.ts # TypeScript definitions
│ └── context-store.ts # Context storage
├── contexts/ # Stored project contexts
├── examples/ # Usage examples and workflows
│ └── plan-then-execute-workflow.md
├── tools/ # Utility tools
├── scripts/ # Setup and utility scripts
│ ├── setup-gemini-cli.sh # Gemini CLI installation
│ ├── setup-claude-integration.sh # Claude Code setup
│ ├── install-dependencies.sh # Dependency installation
│ └── test-system.sh # System testing
├── .env # Environment configuration
├── CLAUDE.md # Claude Code integration guide
└── README.md
APIリファレンス
MCPツール
create_project_context
プロジェクトの新しい計画コンテキストを作成します。
パラメーター:
projectName: プロジェクトの名前
requirements: プロジェクトの要件と仕様
constraints: 制約条件または制限事項
generate_plan_with_gemini
Gemini CLIを使用して詳細な実装計画を生成します。
パラメーター:
contextId (文字列): プロジェクトコンテキストID(オプション)
projectName (文字列): contextIdが提供されていない場合に必須
requirements (文字列): contextIdが提供されていない場合に必須
constraints (文字列, オプション)
libraries (配列, オプション): Context7からドキュメントを取得するための構造化されたライブラリ仕様
name (文字列): 正規のパッケージまたはリポジトリ名、例: react, next.js, supabase/supabase, tanstack/query
topic (文字列, オプション): 焦点を絞ったトピック、例: routing, auth, storage
tokens (数値, オプション): ドキュメントの概算トークン予算
librariesPrompt (文字列, オプション): 希望するスタックの自然言語による説明; 提供され、librariesが省略された場合、システムは自動的にライブラリを解決します。
librariesまたはlibrariesPromptの少なくとも一方を提供する必要があります。両方が提供された場合、librariesが優先されます。
test_gemini_connection
Gemini CLIへの接続をテストします。
test_context7_connection
Context7 MCPへの接続をテストし、利用可能なツールをリストします。
render_plan_checklist
保存された計画をターミナルで使いやすいチェックリストとしてレンダリングします。
パラメーター:
contextId (必須)
planIndex (オプション、デフォルトは最新のもの)
出力例:
概要: Astro、Tailwind、MDXを使用したパーソナルサイト
依存関係:
- astro@^5.0.0 — コアフレームワーク
- tailwindcss@^4.0.0 — CSSユーティリティフレームワーク
ファイル構造:
- src
- src/components
- src/sections
- src/layouts
- src/pages
- src/content
- src/styles
- src/utils
実装手順:
setup:
- [ ] step-1 Astroプロジェクトを初期化する
- package.jsonを作成する
- astro.config.mjsを作成する
例
Webアプリケーション開発
const context = await createProjectContext(
"E-commerce Platform",
"React frontend, Node.js API, PostgreSQL database, user authentication, product catalog, shopping cart"
);
const plan = await generatePlanWithGemini(context.id);
API開発
const apiContext = await createProjectContext(
"Task Management API",
"RESTful API with authentication, CRUD operations, real-time updates via WebSocket"
);
const apiPlan = await generatePlanWithGemini(apiContext.id);
プロンプトベースのライブラリ解決
構造化された入力例:
{
"projectName": "Next.js + Supabase SaaS",
"requirements": "Subscription app with auth, RLS, and Stripe integration",
"constraints": "Server Components, App Router",
"libraries": [
{ "name": "next.js", "topic": "routing" },
{ "name": "supabase/supabase", "topic": "auth" },
{ "name": "tanstack/query" }
]
}
プロンプトベースの例:
{
"projectName": "Realtime notes",
"requirements": "Next.js app with realtime notes, auth, optimistic UI",
"librariesPrompt": "Use Next.js (App Router), Supabase for auth and storage, and TanStack Query for data fetching"
}
トラブルシューティング
一般的な問題
-
Gemini CLIが見つからない場合:
export PATH=$PATH:$(go env GOPATH)/bin
go install github.com/google-gemini/gemini-cli/cmd/gemini@latest
-
APIキーの問題:
GEMINI_API_KEY="your-key" gemini --model gemini-2.5-pro --prompt "Say hello"
-
MCPサーバーのビルドエラー:
cd gemini-cli-mcp-server
npm install
npm run build
-
セットアップ後にMCPサーバーが表示されない場合:
claude mcp list
-
Claude統合の問題:
./scripts/setup-claude-integration.sh
claude --message "Test the Gemini planning MCP connection"
-
環境変数の問題:
cat .env
./scripts/test-system.sh
パフォーマンスのヒント
-
より高速な応答を得るには:
.envファイルでgemini-1.5-flashモデルを使用します。
- より焦点のある要件を提供します。
- 大きなプロジェクトを小さなコンテキストに分割します。
-
より良い計画品質を得るには:
gemini-2.5-proモデルを使用します(推奨)。
- 詳細な要件と制約を提供します。
- 特定の技術の好みを含めます。
デバッグコマンド
GEMINI_API_KEY="your-key" gemini --model gemini-2.5-pro --prompt "Test message"
cd gemini-cli-mcp-server && node build/index.js
env | grep GEMINI
コントリビュートについて
- リポジトリをフォークする
- 機能ブランチを作成する
- 変更を加える
- テストを追加する
- プルリクエストを送信する
📄 ライセンス
MITライセンス - 詳細はLICENSEファイルを参照してください。
追加リソース
- CLAUDE.md - Claude Code統合の詳細ガイド
- examples/plan-then-execute-workflow.md - 包括的なワークフローの例
- scripts/setup-claude-integration.sh - 自動化されたセットアップスクリプト
サポート
問題や質問については、以下の手順を行ってください:
- 上記のトラブルシューティングセクションを確認する
examples/plan-then-execute-workflow.mdの例を確認する
- システムの健全性をテストする:
./scripts/test-system.sh
- MCPサーバーの状態を確認する:
claude mcp list
- MCP統合をテストする:
claude --message "Test the Gemini planning MCP connection"
- 環境変数を確認する:
env | grep GEMINI
- 詳細なエラー情報とログを添えて問題を開く
ヘルプを得る方法
- セットアップの問題:
./scripts/setup-claude-integration.shを再度実行します。
- 計画の問題:Gemini CLIが動作することを確認します:
GEMINI_API_KEY="your-key" gemini --model gemini-2.5-pro --prompt "Hello"
- MCPの問題:
~/.config/claude/mcp_settings.jsonが存在し、正しいパスが設定されていることを確認します。
- ビルドの問題:
cd gemini-cli-mcp-server && npm install && npm run buildを実行します。
このプロジェクトはAI開発コミュニティのために愛情を込めて作られました。