mcpField
C
claude-use-gemini-acp

claude-use-gemini-acp

github.com/genericserviceエージェントワークフロー037 回インストール23 週間前に更新
リポジトリ

claude-use-gemini-acp について

claude-use-gemini-acp は、Claude から ACP 経由で Gemini CLI を呼び出すスキルです。1つのプロンプトを送り、応答をストリーミング出力します。より多くのコンテキスト、Google Search による根拠付け、別モデルの意見が必要なタスクに向いています。

主な機能

  1. 01ACP モードで Gemini CLI を起動
  2. 02新しいセッションでプロンプトを送信
  3. 03応答チャンクを stdout に出力
  4. 04モデル、CLI バージョン、作業ディレクトリの設定
  5. 05完了後にサブプロセスを終了

活用シーン

  1. 01別モデルの意見を求める場面
  2. 02より多くのコンテキストが必要なタスクの委任
  3. 03Gemini に Google Search による根拠付けを求める場面
  4. 04焦点を絞った複数のプロンプトを順に実行

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/genericservice/claude-skills --skill claude-use-gemini-acp

インストール後、Claude Code で/claude-use-gemini-acpを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

scripts/
.gitignore
gemini-delegate.mjs
package.json
pnpm-lock.yaml

詳細

Claude → Gemini via ACP

ACP モードで Gemini CLI のサブプロセスを起動し、プロンプトを送信して、応答を標準出力にストリーミングし、正常に終了します。永続的なセッションはありません。プロンプト 1 件に対して応答 1 件です。

使用する場面

  • Claude のコンテキストウィンドウに収まらないほど多くのコンテキストが必要なタスク
  • Google 検索によるリアルタイムの根拠付けを利用したい場合
  • 別のモデルからセカンドオピニオンを得たい場合
  • ユーザーが「Gemini に聞いて」「これには Gemini を使って」などと指示した場合

セットアップ(初回のみ)

cd ~/.claude/skills/claude-use-gemini-acp/scripts
pnpm install

これにより、@agentclientprotocol/sdk がローカルの node_modules/ にインストールされます。2 回目以降はこの手順が省略されます。pnpm が結果をキャッシュするためです。

使い方

GEMINI_MODEL=gemini-2.5-pro \
TARGET_CWD=/path/to/project \
node ~/.claude/skills/claude-use-gemini-acp/scripts/gemini-delegate.mjs \
  "Summarize the architecture in ARCHITECTURE.md and list the top 3 risks"

Gemini が応答を生成すると、標準出力にストリーミングされます。応答を取得して、回答に利用します。

response=$(node ~/.claude/skills/claude-use-gemini-acp/scripts/gemini-delegate.mjs "your prompt")

環境変数

変数デフォルト値説明
GEMINI_MODELgemini-2.5-pro使用するモデル
GEMINI_CLI_VERSIONnightlygemini-cli パッケージのバージョン(nightly または特定の semver)
TARGET_CWD現在の作業ディレクトリGemini セッションに渡す作業ディレクトリ

仕組み

  1. pnpm dlx @google/gemini-cli@<version> --acp --yolo --model <model> を起動します
  2. @agentclientprotocol/sdk の ClientSideConnection と ndJsonStream を介して接続します
  3. ACP セッションで initialize → newSession → prompt を送信します
  4. agent_message_chunk の差分を受信するたびに標準出力へストリーミングします
  5. プロンプトへの応答が完了したら、サブプロセスを終了します

--yolo フラグ(-y)により、Gemini セッション内のすべてのツール呼び出しが自動的に承認されます。

プロンプト作成のヒント

  • これは過去の履歴がない新しいセッションなので、関連するコンテキストをすべてプロンプト文字列に含めてください
  • Gemini にファイルを読み取らせたい場合は、絶対パスでファイルを指定してください(Gemini はファイルシステムツールを使用できます)
  • プロンプトは、呼び出しごとに明確なタスクを 1 つに絞ってください
  • 複数の手順がある作業では、長大なプロンプトを 1 つ使うのではなく、順番に複数回呼び出してください

エラー処理

スクリプトがゼロ以外の終了コードで終了した場合は、標準エラー出力で次の項目を確認してください。

  • pnpm dlx のダウンロード失敗(ネットワーク、認証)
  • Gemini の認証エラー(gemini auth login が必要な場合があります)
  • ACP の初期化失敗(バージョンの不一致)

スクリプトは再試行しません。失敗した場合はエラーをユーザーに伝え、根本原因を修正してから再実行するよう提案してください。

コメント