Claude Code Agent SDK: 2026年版 完全開発者ガイド

2026年版のClaude Code Agent SDK完全ガイド。インストール、エージェントループ、ツール、サブエージェント、MCP連携、そして実運用に必要な機能ギャップの埋め方を解説します。

by AnyCap

暗いネイビーと紫のグラデーション背景に回路パターンが広がり、発光する AI エージェント SDK のコードが表示されたコードエディタ画面

Anthropic の Agent SDK は、Claude Code をターミナル用アシスタントから、自分のワークフローに組み込めるプログラム可能で自動化可能な AI エージェントへと変えます。このガイドでは、インストール、エージェントループ、ツール連携、MCP サーバー、サブエージェントのオーケストレーション、そして本番運用で埋めるべき機能ギャップまで、すべてを解説します。


Claude Code Agent SDK とは?

Claude Code Agent SDK は、Claude Agent SDKClaude Code SDK とも呼ばれ、Claude を搭載した自律型 AI エージェントを構築するための Anthropic の Python および TypeScript ライブラリです。Claude Code CLI を支えるのと同じエージェントループ、ツールシステム、サンドボックス実行環境をラップし、それを自分のコードから呼び出せる SDK として提供します。

この SDK は、AI エージェントを単なる対話型ではなく、プログラム可能にするという Anthropic の 2026 年初頭の取り組みの一環として公開されました。

Claude API を直接使う場合との違い

機能 Claude API Claude Agent SDK
エージェントループ 自分で構築 内蔵: 計画 → 実行 → 観測 → 繰り返し
ファイルシステムアクセス なし ファイルの読み取り、書き込み、編集
シェル実行 なし サンドボックス内で Bash コマンドを実行
ツール呼び出し 手動で関数定義 内蔵ツール + MCP サーバー対応
サブエージェント 利用不可 並列エージェントワーカーを起動
コンテキスト管理 手動 自動圧縮と要約

現在 Claude API を使っていて、手動のツール処理を伴うエージェントループを自前実装しているなら、Agent SDK は何百行ものボイラープレートを置き換えます。


インストールとセットアップ

前提条件

  • Python 3.10+ または TypeScript/Node.js 20+
  • Anthropic API キー または Claude Code Pro/Max/Enterprise サブスクリプション
  • Claude Code CLI のインストール済み環境。SDK はこれをランタイムとして使います

ステップ 1: Claude Code CLI をインストール

npm install -g @anthropic-ai/claude-code

または claude.ai/download のネイティブインストーラーを使ってください。

ステップ 2: Agent SDK をインストール

Python:

pip install claude-agent-sdk

TypeScript:

npm install @anthropic-ai/claude-agent-sdk

ステップ 3: 認証する

claude login

OAuth フローに従ってください。API キーはローカルに保存され、SDK が自動で利用します。


最初のエージェント: バグ発見器

以下は、ディレクトリ内のバグをスキャンする最小構成の Python エージェントです。

from claude_agent_sdk import Agent, tool

@tool
def read_file(path: str) -> str:
    """ファイルを読み取り、その内容を返します。"""
    with open(path, 'r') as f:
        return f.read()

@tool  
def list_files(directory: str = ".") -> list:
    """ディレクトリ内のすべてのファイルを一覧表示します。"""
    import os
    return os.listdir(directory)

agent = Agent(
    system_prompt="あなたはコードレビュアーです。バグを見つけ、修正案を提案してください。",
    tools=[read_file, list_files],
    model="claude-sonnet-4-20250514"
)

result = agent.run("./src のコードをセキュリティ問題の観点でレビューしてください")
print(result.output)

内部で何が起きているか

  1. エージェントがタスクを受け取り、システムプロンプトを読みます
  2. コードベースを把握するために list_files("./src") を呼び出します
  3. 各ソースファイルに対して read_file(path) を呼び出します
  4. Claude の推論能力でコードを分析します
  5. 行番号と修正提案を含む結果を返します

SDK がループ全体を処理するので、plan-act-observe のロジックを自分で書く必要はありません。


コア概念

エージェントループ

タスク → 計画 → ツール呼び出し → 結果を観測 → 再計画 → ... → 最終回答

各イテレーションで:

  1. Claude が次に何をするかを決める
  2. 必要に応じてツールを呼び出す
  3. ツール出力を受け取る
  4. 続行するか終了するかを判断する

SDK は、古いターンを要約する圧縮処理とサブエージェント委譲により、コンテキストウィンドウの制限を自動で管理します。

ツールと tool デコレータ

ツールは、エージェントに公開する関数です。SDK にはいくつかの内蔵ツールがあります。

# 内蔵のファイル操作。自動で利用可能
agent = Agent(
    tools=["read", "write", "edit", "glob", "grep", "bash", "task"]
)

カスタムツールは @tool デコレータを使います。

from claude_agent_sdk import tool

@tool
def search_docs(query: str, max_results: int = 5) -> str:
    """指定したクエリで社内ドキュメントを検索します。"""
    # 検索の実装
    return results

agent = Agent(tools=[search_docs])

サブエージェント: 並列処理

サブエージェントを使うと、独立した Claude インスタンスを並列作業用に起動できます。

agent = Agent(
    system_prompt="あなたはコードベースをレビューするテックリードです。",
    tools=["task"]  # サブエージェント起動を有効化
)

result = agent.run("""
    ./frontend/ と ./backend/ を並列でレビューしてください。
    各ディレクトリにサブエージェントを使い、その後で結果をまとめてください。
""")

サブエージェントは分離されたコンテキストで実行され、独立して結果を返します。これが Claude Code 自体の大規模操作の扱い方です。

MCP サーバー連携

SDK は Model Context Protocol サーバー、つまりエージェントにツールを提供する外部サービスをサポートします。

agent = Agent(
    mcp_servers=[
        {
            "command": "npx",
            "args": ["-y", "@anthropic-ai/mcp-server-filesystem"],
            "env": {"ALLOWED_DIRECTORIES": "/project"}
        }
    ]
)

MCP サーバーは、データベースアクセス、API 連携、サードパーティサービスなどを追加できます。


Agent SDK でできないことと、そのギャップの埋め方

Claude Code Agent SDK は、エージェントにファイルアクセス、シェル実行、コード操作を提供します。ですが、5 つの大きな機能ギャップがあります。

1. 画像生成

エージェントは画像 API を呼ぶコードを書くことはできますが、画像を直接生成したり見ることはできません。UI を作る、デザインを試作する、ドキュメントを作成するエージェントにとって、これは実際の制約です。

解決策: 画像生成を扱う機能ランタイムをエージェントに与えてください。設定を 1 行加えるだけで、テキストから画像を生成し、デザインを反復し、結果を埋め込めます。

2. 動画生成

動画はさらに手が届きません。エージェントは ffmpeg コマンドを書くことはできますが、新しい動画コンテンツを生成することはできません。

3. 根拠付きのウェブ検索

Claude Code エージェントは curl や fetch API を使えますが、根拠や引用付きの意味論的なウェブ検索はできません。これは、リサーチエージェント、コンテンツエージェント、最新情報を必要とするワークフローで重要です。

4. クラウドストレージとファイル共有

SDK のファイルシステムアクセスはローカルのみです。成果物を保存する、人間とファイルを共有する、セッションをまたいでデータを保持する必要があるなら、クラウドストレージが必要です。

5. 公開とデプロイ

エージェントが成果物を作れても、それをオンラインに公開するには、ウェブページ、共有可能なレポート、デプロイ済みアプリなど、別のインフラが必要です。

ワンコマンドの解決策

5 つの別々の MCP サーバーを、それぞれ独自の API キー、保守負担、トークンオーバーヘッド付きで設定する代わりに、画像生成、動画、ウェブ検索、クラウドストレージ、公開を 1 つのエンドポイントにまとめた 機能ランタイム を使えます。

たとえば AnyCap は、画像生成、動画、ウェブ検索、クラウドストレージ、ページ公開という 5 つの機能を 1 つの CLI で提供するため、設定にかかる時間は数時間ではなく数分で済みます。


本番運用での考慮事項

コンテキストウィンドウ管理

Agent SDK はコンテキスト圧縮を自動で処理しますが、100 ターン以上続く長時間稼働のエージェントでは、次を推奨します。

  • サブエージェントを使う 大きな並列タスクでは、順次処理よりもサブエージェントを使う
  • システムプロンプトを簡潔に保つ システムプロンプト内の各トークンは毎ターンのオーバーヘッドになる
  • 大きなファイルをコンテキストに読み込まない ツールが要約を返せるならその方がよい

コスト管理

SDK を使った典型的なエージェントセッションのコストは、タスクの複雑さに応じて 0.50 ドルから 3.00 ドル程度です。コストを抑えるには:

  • max_turns を設定して暴走ループを防ぐ
  • 単純なサブエージェントには Haiku、メインエージェントには Sonnet を使う
  • Anthropic のコンソールダッシュボードで使用量を監視する

セキュリティ

SDK はコマンドをサンドボックス内で実行しますが、それでも次は守るべきです。

  • ALLOWED_DIRECTORIES でファイルシステムアクセスを制限する
  • 本番エージェントに認証情報や .env ファイルへのアクセスを与えない
  • 非対話モードではエージェントの動作を確認する

Claude Code SDK と Claude Agent SDK: 違いは何か?

これらの用語はしばしば同じ意味で使われますが、区別があります。

Claude Code SDK Claude Agent SDK
範囲 Claude Code とやり取りするための低レベル API より高レベルなエージェントフレームワーク
Python パッケージ claude-agent-sdk の一部 主なインターフェースは claude-agent-sdk
ユースケース Claude Code セッションのプログラム制御 自律エージェントの構築
ドキュメント code.claude.com/docs/en/agent-sdk code.claude.com/docs/en/agent-sdk/overview

実際には、ほとんどの開発者が Agent SDK を入口として使います。低レベルの SDK API は、カスタムセッション管理のような高度な用途向けです。


Claude Code CLI ではなく Agent SDK を使うべき場面

シナリオ 使うもの
対話型コーディングセッション Claude Code CLI
単発のコードレビュー Claude Code CLI
自動化された PR レビューパイプライン Agent SDK
定期実行のデータ処理 Agent SDK
CI/CD 連携 Agent SDK
多段階のリサーチエージェント Agent SDK
Claude の上に製品を作る Agent SDK

目安はシンプルです。コマンドを打つなら CLI。Claude を呼び出すコードを書くなら SDK です。


まとめ

Claude Code Agent SDK は、Claude をターミナルの相棒からプログラム可能なエージェントランタイムへと変えます。内蔵のファイル操作、シェルアクセス、サブエージェントのオーケストレーション、MCP サーバー対応により、エージェント基盤の重い部分を担います。

ただし、ファイルを読むだけで bash を実行するだけのエージェントは、半分しか完成していません。ウェブ検索、画像や動画の生成、成果物のクラウド保存、結果の公開までできるエージェントを作るには、機能レイヤーが必要です。SDK はエージェントに頭脳を与え、AnyCap のような機能ランタイムは目、手、そして声を与えます。