ankuro.dev
← ブログ一覧に戻る
Claude CodeをAI司令塔にして、Kiro CLIを自動で使い分ける環境を作った
2026-03-16#Claude Code#Kiro#MCP#AI#AWS

Claude CodeをAI司令塔にして、Kiro CLIを自動で使い分ける環境を作った

「Claude Codeに全部やらせるのは便利だけど、トークンの消費が気になる」

そう思って調べていたら、MCP Server経由で外部AIツールをClaude Codeから呼び出せることを知った。

せっかくなら、IaC生成やコードレビューはAWSのKiro CLIに任せて、Claude Codeは判断・設計・統合だけに集中させたい。そんな構成を実際に作ってみた。


作った構成

Claude Code(司令塔)
        ↓
   MCP Server(ai-orchestrator)
        ↓
   Kiro CLI(重い生成タスクを担当)

Claude Codeが「このタスクはKiroに任せる」と判断したら、MCP Server経由でKiro CLIを呼び出して結果を受け取る。Claude自身は判断・整形・回答に専念する。


必要なもの

  • Claude Code(インストール済み前提)
  • WSL2(Ubuntu 22.04)
  • Kiro CLI
  • GitHub CLI(gh
  • Node.js 20以上(WSL内)

Kiro CLIのインストール

KiroはAmazonが開発したAIエージェントIDE。CLIも提供されており、ターミナルから自由にプロンプトを送れる。

# WSL内で実行
sudo apt-get install -y unzip
curl -fsSL https://cli.kiro.dev/install | bash

インストール後、ログインする。

kiro-cli

起動するとサインイン画面が出る。AWS Builder ID(無料)またはGoogle/GitHubアカウントで認証できる。会社のAWS組織アカウント(IAM Identity Center)でもログイン可能。


GitHub CLIのインストール

# 最新版を入れるためにリポジトリを追加
curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null
sudo apt update && sudo apt install gh -y

# ログイン
gh auth login

躓いたこと:Copilot CLIは使えなかった

最初の設計ではGitHub Copilot CLIをMCPから呼び出す予定だった。ところが2つの問題にぶつかった。

@github/copilot-cli がnpmから削除済み

設計ドキュメントに書いていた npm install -g @github/copilot-cli を試したところ、404エラーで存在しなかった。すでに廃止されていた。

gh copilot はシェルコマンド専用

後継の gh copilot をインストールして試したが、このコマンドはシェルコマンドの提案・説明に特化した設計になっており、コードレビューや自由なプロンプト送信には対応していない。

# できること
gh copilot suggest "gitでファイルを元に戻したい"
gh copilot explain "git rebase -i HEAD~3"

# できないこと
gh copilot explain "このdiffをレビューして..."  # → Invalid command format エラー

「GitHubのCopilotだからコードレビューもできるはず」と思っていたが、CLIとしての用途は限定的だった。Copilotを自由なプロンプトで使うにはGitHub Copilot API(別途申請が必要)が必要になる。

結果として、自由なプロンプト送信に対応しているKiro CLIに切り替えた。


MCP Serverの作成

Claude CodeはMCP(Model Context Protocol)を通じて外部ツールを呼び出せる。ここではKiro CLIをラップするMCPサーバーをTypeScriptで作る。

ディレクトリ構成

ai-orchestrator/
├── src/
│   ├── tools/
│   │   ├── kiro_review_diff.ts
│   │   ├── kiro_generate_tests.ts
│   │   └── kiro_generate_iac.ts
│   ├── runners/
│   │   └── kiro.ts
│   ├── prompts/
│   │   └── templates.ts
│   └── index.ts
├── package.json
└── tsconfig.json

実装のポイント

Kiro CLIは --no-interactive オプションで非対話モードで動く。

// runners/kiro.ts
export async function runKiroChat(prompt: string): Promise<string> {
  const { stdout, stderr } = await execFileAsync(
    "/home/your-user/.local/bin/kiro-cli",
    ["chat", "--no-interactive", "--trust-all-tools", prompt],
    { timeout: 60000 }
  );
  return stdout || stderr;
}

作成する3つのMCPツール

ツール名 役割
kiro_review_diff git diffをレビュー
kiro_generate_tests ユニットテストを生成
kiro_generate_iac CloudFormation/Terraformを生成

ビルド

cd ai-orchestrator
npm install
npm run build

Claude CodeへのMCP登録

# userスコープで登録(全プロジェクトで使える)
claude mcp add --scope user ai-orchestrator -- wsl node "/path/to/ai-orchestrator/dist/index.js"

接続確認:

claude mcp list
# ai-orchestrator: wsl node ... - ✓ Connected

自動使い分けの設定

~/.claude/CLAUDE.md に以下を書いておくと、Claude Codeが自動でMCPツールを選択するようになる。

## MCP ツールの使い分けルール

| タスク | 使うツール |
|---|---|
| git diff のレビュー | `kiro_review_diff` |
| ユニットテストの生成 | `kiro_generate_tests` |
| AWS IaC の生成 | `kiro_generate_iac` |

これ以降は「S3のCloudFormationを書いて」と言うだけで、Claudeが自動で kiro_generate_iac を呼び出してくれる。


やってみてわかったこと

Kiroに向いているタスク(委譲すると効果的)

  • テスト生成(パターンが定型的)
  • IaC生成(フォーマットが決まっている)
  • diffレビュー(明確な基準がある)

Claudeが直接やった方がいいタスク

  • コードの説明・要約(文脈の理解が必要)
  • リファクタリング提案(会話履歴を踏まえた判断が必要)
  • 設計・アーキテクチャの相談(推論能力が活きる)

定型的な生成はKiro、判断が必要なものはClaude——この棲み分けが今のところベストだと感じている。


まとめ

  • Kiro CLIはWSL2で動く。--no-interactive で非対話モード対応
  • MCP Serverを作ればClaude CodeからKiroを自動呼び出しできる
  • ~/.claude/CLAUDE.md にルールを書けば全プロジェクトで自動適用される
  • gh copilot CLIはシェルコマンド専用でコードレビューには使えない(注意)

Claude CodeとKiroを組み合わせることで、トークン消費を抑えながら生成品質を維持できる環境が作れた。AWSを使う機会が多い人には特に kiro_generate_iac が便利だと思う。

今回作ったMCP ServerのコードはGitHubに公開している。

ankuro-dev/ai-orchestrator