gemini-use-claude-acp について
gemini-use-claude-acpは、GeminiからClaude Code ACPアダプターに単一のプロンプトを送り、応答を標準出力へストリーミングします。Claudeの見解やMCP対応のコーディング支援が必要なタスク向けで、セッションは保持しません。
主な機能
- 01Claude Code ACPサブプロセスの起動
- 02プロンプト送信と応答のストリーミング
- 03CLAUDE_MODELによるモデル選択
- 04TARGET_CWDによる作業ディレクトリ指定
活用シーン
- 01問題についてClaudeの意見を求める
- 02複数段階のコーディングタスクを委任
- 03別モデルの視点を得る
MCP 対応
ACP経由でClaude Codeに接続します。起動したClaudeセッションでは、filesystemやshellを含むMCPツールを利用できます。
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ genericservice/ claude-skills --skill gemini-use-claude-acpインストール後、Claude Code で/gemini-use-claude-acpを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
scripts/.gitignoreclaude-delegate.mjspackage.jsonpnpm-lock.yaml詳細
Gemini → ACP 経由の Claude
Claude Code ACP アダプターのサブプロセスを起動し、プロンプトを送信して、応答を標準出力にストリーミングし、正常に終了します。永続的なセッションはありません。プロンプト1件に対して、応答は1件です。
使用する場面
- MCP ツールにアクセスしながら、複雑な複数ステップのエージェント型コーディングを行う必要がある場合
- 特定の問題について Claude の推論を得たい場合
- ユーザーが「Claude に聞いて」「これには Claude を使って」などと言った場合
- 別のモデルのセカンドオピニオンがほしい場合
セットアップ(初回のみ)
cd ~/.gemini/skills/gemini-use-claude-acp/scripts
pnpm install
これにより、ローカルの node_modules/ に @agentclientprotocol/sdk がインストールされます。以降の実行では、この手順はスキップされます。
使い方
CLAUDE_MODEL=claude-sonnet-4-6 \
TARGET_CWD=/path/to/project \
node ~/.gemini/skills/gemini-use-claude-acp/scripts/claude-delegate.mjs \
"Refactor the auth module to use JWT tokens. The code is in src/auth/."
Claude が生成した応答は、標準出力にストリーミングされます。キャプチャするには、次のようにします。
response=$(node ~/.gemini/skills/gemini-use-claude-acp/scripts/claude-delegate.mjs "your prompt")
環境変数
| 変数 | デフォルト | 説明 |
|---|---|---|
CLAUDE_MODEL | claude-sonnet-4-6 | 使用するモデル(ACP の unstable_setSessionModel で適用) |
TARGET_CWD | 現在の作業ディレクトリ | Claude のセッションに渡す作業ディレクトリ |
仕組み
- 次の設定で
pnpm dlx @zed-industries/claude-code-acpを起動します。CLAUDE_CODE_SKIP_PERMISSIONS=1— すべてのツール呼び出しを自動承認しますTERM=dumb— 出力に ANSI エスケープシーケンスが含まれないようにしますCLAUDECODEを解除 — 別の Claude セッション内でアダプターを起動した際に、起動が拒否されないようにします~/.local/binをPATHの先頭に追加 —claudeバイナリが見つかるようにします
@agentclientprotocol/sdkのClientSideConnectionとndJsonStreamを使用して接続します- ACP 経由で
initialize→newSession→unstable_setSessionModel→promptを送信します agent_message_chunkの差分を受信次第、標準出力にストリーミングします- プロンプトへの応答が完了したら、サブプロセスを終了します
プロンプト作成のヒント
- 以前の会話履歴がない新しいセッションなので、関連するコンテキストをすべてプロンプト文字列に含めてください
- Claude にファイルを読み取り・編集させたい場合は、絶対パスでファイルを指定してください
- プロンプトは焦点を絞り、1回の呼び出しにつき明確なタスクを1つにしてください
- セッション中、Claude は MCP ツール(ファイルシステム、シェルなど)を使用できます
エラー処理
スクリプトがゼロ以外の終了コードで終了した場合は、標準エラー出力で次の項目を確認してください。
pnpm dlxのダウンロード失敗(ネットワーク、認証)- Claude の認証エラー —
claudeCLI が認証済みであることを確認してください CLAUDECODE環境変数が設定されている — Claude Code 内で実行中であることを示します。アダプターは入れ子での起動を拒否します- ACP の初期化失敗
スクリプトは再試行しません。エラーをユーザーに伝え、根本原因を修正してから再実行するよう案内してください。
コメント
Markdown 対応