結論: Claude Agent SDK(旧Claude Code SDK)は、Anthropicが公式提供するAIエージェント自社実装ライブラリです。Claude Codeを動かすのと同じツール・エージェントループ・コンテキスト管理をPythonとTypeScriptで直接プログラムでき、2026年5月時点でGitHub stars 22,000超・npm週間ダウンロード11万超に成長しています。
この記事の要点:
- 要点1: Python版は2026年5月6日にv0.1.75がリリース。フック・サブエージェント・MCP連携・セッション継続すべて実装済み
- 要点2: Sonnet 4.6を使うと1エージェント実行あたり$0.05〜$0.50程度。長コンテキスト追加料金は2026年3月から廃止
- 要点3: OpenAI Agents SDK・LangGraph・AWS Bedrock AgentCoreとの明確な使い分け基準がある
対象読者: AIエージェントの自社実装を検討中のエンジニア・DX推進担当・開発責任者
読了後にできること: Claude Agent SDKのPython/TypeScriptコードを動かして、最初のエージェントを5分で起動できる
「AIエージェントを自社で実装したいけど、どのSDKを選べばいいかわからない」
企業向けAI研修をしていると、この質問を本当によくいただきます。2026年に入ってからOpenAI、Anthropic、AWS、LangChainがそれぞれエージェントSDKをリリースまたは大幅アップデートし、「どれを使えばいいのか」という混乱が一気に増した印象があります。
先日も、DX推進担当の方から「Anthropicのドキュメントを見たら旧Claude Code SDKが消えていてClaude Agent SDKになっていた。移行が必要なのか、そもそも何が変わったのか教えてほしい」というご相談を受けました。名前が変わっただけなのか、機能的に別物なのか、確かにわかりづらいですよね。
この記事では、Claude Agent SDKの最新仕様(2026年5月時点)を、公式ドキュメントとGitHub CHANGELOGを直接確認しながら解説します。コピペして動くPython/TypeScriptのサンプルコード、主要SDKとの比較表、自社実装で踏みがちな落とし穴も全部まとめています。
AIエージェント開発の技術選定、ぜひこの記事を判断材料にしてください。
📅 5月開催|Uravation主催 Zoomウェビナー
- 【5/23(土) 14:00-17:00】AI活用入門講座 — ChatGPT・Gemini・Claude・NotebookLM・Manus 全部触る3時間(早割 ¥3,000、5/16締切 / 通常 ¥4,000)
- 【5/24(日)】Claude Code 活用講座【実践編】 — 活用事例50選と業務実装テクニック(早割 ¥3,000)
講師: 株式会社Uravation代表 佐藤傑(X @SuguruKun_ai) / Yusei Tataka
Claude Agent SDKとは何か — まず5分で動かしてみる
Claude Agent SDKは、2026年にAnthropicが公開した旧Claude Code SDKの後継ライブラリです。「旧SDK」という言い方をしましたが、実態は名称変更+機能大幅追加です。Claude Codeを動かしているのと同じツール実行ループ・コンテキスト管理・ファイル読み書き・Bash実行を、Pythonまたは TypeScript のコードから直接プログラムできます。
公式ドキュメントの説明を引用すると「Build AI agents that autonomously read files, run commands, search the web, edit code, and more」。ファイル読み込み、コマンド実行、ウェブ検索、コード編集が全てビルトインで使えるのが最大の特徴です。自分でツール実行ループを実装する必要がありません。
インストールと最初のエージェント(Python)
pip install claude-agent-sdkimport asyncio
from claude_agent_sdk import query, ClaudeAgentOptions
async def main():
async for message in query(
prompt="このディレクトリにあるPythonファイルを全て列挙して、各ファイルの役割を1行で説明してください",
options=ClaudeAgentOptions(allowed_tools=["Bash", "Glob", "Read"]),
):
if hasattr(message, "result"):
print(message.result)
asyncio.run(main())これだけです。エージェントが自分でGlobでファイルを探し、Readで内容を読み、結果をまとめて返してきます。ツールの実行ループは全部SDKが内部で処理します。
インストールと最初のエージェント(TypeScript)
npm install @anthropic-ai/claude-agent-sdkimport { query } from "@anthropic-ai/claude-agent-sdk";
async function main() {
for await (const message of query({
prompt: "このディレクトリにあるPythonファイルを全て列挙して、各ファイルの役割を1行で説明してください",
options: { allowedTools: ["Bash", "Glob", "Read"] }
})) {
if ("result" in message) console.log(message.result);
}
}
main();TypeScript版はnpm install @anthropic-ai/claude-agent-sdkだけで動きます。Claude Code CLIのネイティブバイナリがオプション依存として同梱されているので、Claude Codeを別途インストールする必要はありません。
なお、APIキーの設定は環境変数1行です。
export ANTHROPIC_API_KEY=your-api-keyAIエージェントの基本概念や導入ステップについては、AIエージェント導入完全ガイドで体系的にまとめています。エージェントの使い方からセキュリティ設計まで網羅しています。
Claude Agent SDKの主要機能5つ — 実装例つき
公式ドキュメントとCHANGELOGを読んで確認した、2026年5月時点での主要機能を実装例つきで解説します。
機能1: ビルトインツール — ファイル読み書き・コマンド実行がすぐ使える
Claude Agent SDKには以下のツールが標準搭載されています。
| ツール名 | 何ができるか |
|---|---|
| Read | ファイルの読み込み |
| Write | 新規ファイルの作成 |
| Edit | 既存ファイルへの精密な編集 |
| Bash | ターミナルコマンド・スクリプト・git操作の実行 |
| Monitor | バックグラウンドスクリプトの出力を1行ずつイベントとして監視 |
| Glob | パターンでファイルを検索(例: **/*.ts) |
| Grep | 正規表現でファイル内容を検索 |
| WebSearch | ウェブ検索 |
| WebFetch | ウェブページの取得・解析 |
| AskUserQuestion | ユーザーへの確認質問(選択肢付き) |
実際に研修先でよく使うのがコードベース調査エージェントです。こんな感じで書くと、TODOコメントを全部まとめてくれます。
async for message in query(
prompt="コードベース全体からTODOコメントを探し、優先度別に整理してください",
options=ClaudeAgentOptions(allowed_tools=["Read", "Glob", "Grep"]),
):
if hasattr(message, "result"):
print(message.result)ポイントはallowed_toolsで許可するツールを明示的に指定すること。不要なツールを渡さないのがセキュリティのベストプラクティスです。
機能2: フック — エージェントの動作に介入する
v0.1.74で大幅強化されたのがフック機能です。エージェントがツールを使う前後・セッション開始終了・ユーザープロンプト送信など、ライフサイクルの各ポイントでカスタムコードを実行できます。
import asyncio
from datetime import datetime
from claude_agent_sdk import query, ClaudeAgentOptions, HookMatcher
async def log_file_change(input_data, tool_use_id, context):
"""ファイル変更をaudit.logに記録するフック"""
file_path = input_data.get("tool_input", {}).get("file_path", "unknown")
with open("./audit.log", "a") as f:
f.write(f"{datetime.now()}: modified {file_path}n")
return {}
async def block_sensitive_files(input_data, tool_use_id, context):
"""本番設定ファイルへの書き込みをブロックするフック"""
file_path = input_data.get("tool_input", {}).get("file_path", "")
if "production" in file_path or ".env.prod" in file_path:
return {"decision": "deny", "reason": "本番設定ファイルへの書き込みは禁止されています"}
return {}
async def main():
async for message in query(
prompt="コードをリファクタリングしてください",
options=ClaudeAgentOptions(
permission_mode="acceptEdits",
hooks={
"PostToolUse": [
HookMatcher(matcher="Edit|Write", hooks=[log_file_change])
],
"PreToolUse": [
HookMatcher(matcher="Write", hooks=[block_sensitive_files])
]
},
),
):
if hasattr(message, "result"):
print(message.result)
asyncio.run(main())v0.1.74以降ではdefer決定(承認の先送り)とupdatedToolOutput(ツール出力をモデルに渡す前に書き換える)も追加されました。企業向けの監査ログ・アクセス制御の実装に使えます。
機能3: サブエージェント — 並列・専門分担でスループットを上げる
Anthropicはサブエージェントを「メインエージェントが集中した子タスクを処理する専門エージェントを生成する」と説明しています。allowedToolsにAgentを含めると使えます。
import asyncio
from claude_agent_sdk import query, ClaudeAgentOptions, AgentDefinition
async def main():
async for message in query(
prompt="code-reviewerエージェントを使ってこのコードベースをレビューしてください",
options=ClaudeAgentOptions(
allowed_tools=["Read", "Glob", "Grep", "Agent"],
agents={
"code-reviewer": AgentDefinition(
description="コード品質・セキュリティの専門レビュアー",
prompt="コードの品質を分析し、改善提案をしてください。セキュリティリスクも確認すること。",
tools=["Read", "Glob", "Grep"],
)
},
),
):
if hasattr(message, "result"):
print(message.result)
asyncio.run(main())サブエージェントのメッセージにはparent_tool_use_idフィールドが付くので、どのサブエージェントから来たメッセージかをトラッキングできます。大規模なコードベース解析・複数ファイルの並列処理に効きます。
Claude Code Sub-Agentsの詳細な使い方(並列タスク委任・実装パターン)についてはClaude Code Sub-Agents完全ガイドも参照してください。
機能4: MCP(Model Context Protocol)— 外部システムと接続する
MCPはデータベース・ブラウザ・外部APIをエージェントに接続するためのプロトコルです。Claude Agent SDKはMCPをネイティブサポートしています。
# Playwright MCPでブラウザ操作エージェントを作る例
import asyncio
from claude_agent_sdk import query, ClaudeAgentOptions
async def main():
async for message in query(
prompt="example.comを開いて、メインコンテンツを要約してください",
options=ClaudeAgentOptions(
mcp_servers={
"playwright": {
"command": "npx",
"args": ["@playwright/mcp@latest"]
}
}
),
):
if hasattr(message, "result"):
print(message.result)
asyncio.run(main())Slack・GitHub・データベースなど、数百のMCPサーバーが公開されています。独自認証コードを書かなくても外部サービスと連携できるのが実務上の大きな利点です。
機能5: セッション継続 — 長いタスクを分割して処理する
v0.1.73で追加されたEager Session Flushingにより、セッションのリアルタイム書き出しが可能になりました。複数回のqueryを通じてコンテキストを保持できます。
import asyncio
from claude_agent_sdk import query, ClaudeAgentOptions, SystemMessage, ResultMessage
async def main():
session_id = None
# 第1回のクエリ — セッションIDを取得
async for message in query(
prompt="認証モジュールを読んで、ざっくり説明してください",
options=ClaudeAgentOptions(allowed_tools=["Read", "Glob"]),
):
if isinstance(message, SystemMessage) and message.subtype == "init":
session_id = message.data["session_id"]
# 第2回のクエリ — 同じセッションで続ける(「それ」が何かをわかってる)
async for message in query(
prompt="それを呼び出している箇所を全部見つけてください",
options=ClaudeAgentOptions(resume=session_id),
):
if isinstance(message, ResultMessage):
print(message.result)
asyncio.run(main())コンテキストが保持されるので、「それ」「さっきの関数」のような自然な会話ができます。長時間のタスクを段階的に処理するときに重宝します。
主要エージェントSDK比較 — Claude・OpenAI・LangGraph・Bedrock AgentCoreの使い分け表
2026年時点で主要なエージェントSDKは4つに集約されています。それぞれの特徴をまとめました。
| 比較軸 | Claude Agent SDK | OpenAI Agents SDK | LangGraph | AWS Bedrock AgentCore SDK |
|---|---|---|---|---|
| 対応モデル | Claude専用(Opus 4.7 / Sonnet 4.6 / Haiku 4.5) | OpenAI専用(GPT-4o / o3 等) | モデル非依存(全主要LLM対応) | Bedrock対応モデル全般(Claude含む) |
| 言語 | Python・TypeScript | Python・TypeScript | Python・JavaScript | Python・Java |
| ツール実行 | ビルトイン(Read/Edit/Bash等) | 自前実装 or Hosted tools | 自前実装 | Lambda関数経由 |
| サブエージェント | AgentDefinitionで宣言的に定義 | Handoffモデル(明示的移譲) | グラフノードとして定義 | Supervisorパターン |
| 状態管理 | セッション環境(ファイルシステム) | コンテキスト変数(セッション内のみ) | リデューサーベース(チェックポイント・タイムトラベル) | DynamoDB連携 |
| MCP対応 | ネイティブサポート | なし(ホスト型ツール経由) | 有(プラグイン経由) | なし(独自プロトコル) |
| クラウド連携 | Bedrock・Vertex AI・Azure対応 | OpenAI APIのみ | プロバイダー非依存 | AWS専用 |
| 料金(Sonnet相当) | $3/$15(input/output per M tokens) | $2.50/$10(GPT-4o mini相当) | 使用モデルに準ずる | $3/$15 + AWS overhead |
| 本番実績 | Autoolize等 5k-50k req/日 実績 | OpenAI製品との統合で多数 | Klarna・Uber・LinkedIn等 | AWS大規模エンタープライズ |
| デバッグ・可観測性 | OpenTelemetryトレース(v0.1.60〜) | Tracing API内蔵 | LangSmith(最も充実) | CloudWatch連携 |
どれを選ぶか — ユースケース別の推奨
| 状況 | 推奨SDK | 理由 |
|---|---|---|
| Claudeを使いたい / Claude Codeの延長でエージェント化したい | Claude Agent SDK | Claude Codeと同一エンジン。最もClaudeの性能を引き出せる |
| OpenAIのモデルで組みたい / GPT系で既存実装がある | OpenAI Agents SDK | OpenAIエコシステムとの親和性が高い |
| 複数モデルを使い分けたい / グラフ構造で複雑なワークフローを組みたい | LangGraph | モデル非依存・グラフ可視化・タイムトラベルデバッグが最強 |
| AWSにすでに乗っている / Lambdaで運用したい | Bedrock AgentCore SDK | AWS IAM・CloudWatch・Lambda との統合がネイティブ |
正直に言うと、Claude Agent SDKはLangGraphほどグラフ構造を可視化できないし、OpenAI Agents SDKのように最新トレーシングが内蔵されているわけでもありません。ただ「Claudeを使う」と決めているなら、公式SDKで一番ドキュメントが整っていて、公式サポートも受けやすい。そこが最大の利点です。
他のAIエージェントプラットフォーム(Salesforce Agentforce)との比較についてはSalesforce Agentforce完全ガイドも参考になります。ノーコードアプローチとSDKアプローチの違いがわかります。
料金体系と実際のコスト — 1エージェント実行でいくらかかるか
Claude Agent SDKの料金は「使用モデルのAPIトークン料金と同じ」です。SDK固有の追加料金は基本的にありません(Managed Agentsを使う場合はセッション実行時間課金が加わります)。
2026年5月時点のモデル別料金(per 1M tokens)
| モデル | Input | Output | キャッシュ読み込み | 用途 |
|---|---|---|---|---|
| claude-opus-4-7 | $5 | $25 | $0.50(Input×10%) | 最高品質・最も複雑なタスク |
| claude-sonnet-4-6 | $3 | $15 | $0.30 | 本番のスイートスポット(推奨) |
| claude-haiku-4-5 | $1 | $5 | $0.10 | 高頻度・軽量タスク・ワーカーエージェント |
重要なポイントが2つあります。
まず、長コンテキスト追加料金が2026年3月13日から廃止されました。90万トークンのリクエストも9,000トークンのリクエストも、1トークンあたりの単価は同じです。大規模コードベース解析で使いやすくなりました。
次に、バッチ処理は50%オフになります。リアルタイム性が不要なタスク(夜間のコード解析・一括ドキュメント生成等)はバッチAPIで半額です。
実際のコスト感(Autoolize社の実績データ)
- 中規模コードベースのバグ修正エージェント: $0.05〜$0.50/実行(Sonnet 4.6)
- リサーチエージェント(Web検索込み、複数ファイル読み込み): $0.20〜$1.00/実行
- 日次バッチ(5,000〜50,000リクエスト/日): Sonnet 4.6で月額$450〜$4,500相当
コスト最適化のポイントはallowed_toolsを絞ることです。不要なツールを渡すとエージェントが余計な探索をして無駄なトークンを消費します。本番環境では必要最小限のツールセットを渡しましょう。
実装例 — よくあるユースケース4パターン
研修や顧問先での実装支援で「これが一番わかりやすい」と言われるパターンをまとめます。
パターン1: コードレビューエージェント(read-only・安全)
import asyncio
from claude_agent_sdk import query, ClaudeAgentOptions
async def code_review_agent(repo_path: str):
"""
指定リポジトリのコードをレビューするread-onlyエージェント
Write系ツールを渡さないことで安全性を担保
"""
async for message in query(
prompt=f"""
{repo_path} のコードをレビューしてください。
以下の観点で確認し、問題点をMarkdownでまとめること:
1. セキュリティリスク(SQLインジェクション・XSS・認証不備等)
2. パフォーマンス問題(N+1クエリ・不要なループ等)
3. コードの可読性・保守性
4. テスト不足
問題点は重要度(CRITICAL/HIGH/MEDIUM/LOW)を付けて列挙すること。
不足している情報があれば最初に質問してください。
""",
options=ClaudeAgentOptions(
allowed_tools=["Read", "Glob", "Grep"], # Write系は渡さない
),
):
if hasattr(message, "result"):
print(message.result)
asyncio.run(code_review_agent("./src"))パターン2: ドキュメント自動生成エージェント
import asyncio
from claude_agent_sdk import query, ClaudeAgentOptions
async def doc_generator_agent():
"""
コードを読んでAPIドキュメントを自動生成するエージェント
"""
async for message in query(
prompt="""
src/ ディレクトリのPythonファイルを全て読んで、
docs/api-reference.md に APIリファレンスを生成してください。
形式:
- 各モジュール・関数・クラスをMarkdownで記述
- 引数・戻り値の型と説明
- 使用例(コードブロック付き)
- 各関数の副作用・注意点
仮定した点は必ず"仮定"と明記してください。
""",
options=ClaudeAgentOptions(
allowed_tools=["Read", "Glob", "Write"],
permission_mode="acceptEdits",
),
):
if hasattr(message, "result"):
print(message.result)
asyncio.run(doc_generator_agent())パターン3: 複数ファイルの並列処理(TypeScript版)
import { query } from "@anthropic-ai/claude-agent-sdk";
async function translateDocuments(files: string[]) {
// 複数エージェントを並列起動して複数ファイルを同時処理
const promises = files.map(async (file) => {
const messages: string[] = [];
for await (const message of query({
prompt: `${file} を日本語に翻訳し、${file.replace('.en.md', '.ja.md')} として保存してください。
専門用語は英語のまま(日本語で括弧説明を付ける)。
翻訳時に補足した情報があれば訳注として追記すること。`,
options: {
allowedTools: ["Read", "Write"],
permissionMode: "acceptEdits"
}
})) {
if ("result" in message) messages.push(message.result as string);
}
return { file, result: messages.join("n") };
});
const results = await Promise.all(promises);
results.forEach(({ file, result }) => {
console.log(`完了: ${file}`);
console.log(result);
});
}
// 10ファイルを並列処理
translateDocuments([
"docs/getting-started.en.md",
"docs/api-reference.en.md",
"docs/troubleshooting.en.md",
// ... 他のファイル
]);パターン4: セキュリティ監査エージェント(フック付き)
import asyncio
import json
from datetime import datetime
from claude_agent_sdk import query, ClaudeAgentOptions, HookMatcher
security_findings = []
async def capture_security_finding(input_data, tool_use_id, context):
"""Bashコマンドの実行を全てログに記録するフック"""
command = input_data.get("tool_input", {}).get("command", "")
security_findings.append({
"timestamp": datetime.now().isoformat(),
"command": command,
"tool_use_id": tool_use_id
})
return {}
async def security_audit_agent():
async for message in query(
prompt="""
このリポジトリのセキュリティ監査を実施してください:
1. .env ファイルや secrets ファイルが git に含まれていないか確認
2. ハードコードされたAPIキー・パスワードがないか検索
3. 依存関係に既知の脆弱性がないか確認(pip audit または npm audit)
4. ファイルパーミッションの問題がないか確認
発見した問題は重大度別に分類して報告すること。
数字と固有名詞は根拠を添えてください。
""",
options=ClaudeAgentOptions(
allowed_tools=["Read", "Glob", "Grep", "Bash"],
hooks={
"PostToolUse": [
HookMatcher(matcher="Bash", hooks=[capture_security_finding])
]
}
),
):
if hasattr(message, "result"):
print(message.result)
# 監査ログを保存
with open("./security-audit-log.json", "w") as f:
json.dump(security_findings, f, ensure_ascii=False, indent=2)
print(f"n監査ログ保存完了: {len(security_findings)} コマンドを記録")
asyncio.run(security_audit_agent())Claude Agent SDK vs 生のAnthropicクライアントSDK — どちらを使うべきか
「Claude Agent SDKじゃなくて、普通のanthropicパッケージじゃダメなの?」という質問も研修でよく受けます。整理します。
Anthropicクライアントライブラリ(anthropicパッケージ)を使うべき場面:
- チャットボット・QA・テキスト生成など、ツール実行を伴わないシンプルな用途
- ツールループを自分で細かく制御したい(カスタムロジックが複雑な)場合
- 他のLLMも組み合わせて使う場合
Claude Agent SDKを使うべき場面:
- ファイル操作・コマンド実行・ウェブ検索などのツール実行が必要なエージェント
- CI/CDパイプライン・本番自動化
- カスタムアプリケーションへのClaude Code機能の組み込み
- 複数のサブエージェントを並列で動かしたい場合
公式ドキュメントにある比較が端的で分かりやすいです。
# クライアントSDK: ツールループを自分で実装する
response = client.messages.create(...)
while response.stop_reason == "tool_use":
result = your_tool_executor(response.tool_use)
response = client.messages.create(tool_result=result, **params)
# Agent SDK: Claudeが自律的にツールを処理する
async for message in query(prompt="auth.pyのバグを修正して"):
print(message)エージェントに「自律的にファイルを読んで考えて実行してほしい」なら迷わずAgent SDKです。
【要注意】よくある失敗パターンと回避策
企業向けAI研修やエージェント実装支援の現場で実際に見てきた失敗パターンを紹介します。
失敗1: allowed_toolsを渡さずにエージェントを動かす
❌ よくある間違い
# allowed_tools を指定しないと、デフォルトで全ツールが使用可能になる
async for message in query(prompt="認証システムを修正してください"):
print(message)⭕ 正しいアプローチ
# 必要最小限のツールだけ渡す
async for message in query(
prompt="認証システムを修正してください",
options=ClaudeAgentOptions(
allowed_tools=["Read", "Edit", "Grep"], # Bashは渡さない(コマンド実行させない)
)
):
print(message)なぜ重要か: 不必要なツールを渡すと、エージェントが意図しない操作(rm -rf等)を実行するリスクがあります。本番環境では最小権限の原則を徹底してください。
失敗2: 本番DBに直接つないでエージェントを動かす
❌ よくある間違い: ステージング環境なしにいきなり本番DBの認証情報をエージェントに渡す
⭕ 正しいアプローチ: ステージングで十分テストしてから本番へ。本番で使う場合もread-onlyユーザーのみ渡す。フックでDELETE/DROP文を検知して拒否する実装を入れる。
実際に顧問先で見たケースですが、「動作確認のつもり」でエージェントに本番DB接続情報を渡したら、エージェントが自分でデータ整理を始めて数千件のレコードを削除しようとしました。フックで止まりましたが、フックを入れていなければアウトでした。
失敗3: セッションをまたぐコンテキストの想定ミス
❌ よくある間違い
# session_idなしで2回目を呼ぶと前回の会話を全く覚えていない
first_result = await run_query("認証モジュールを読んでください")
second_result = await run_query("さっき読んだ部分のバグを直してください") # NG: さっき読んだ = ?⭕ 正しいアプローチ
# session_id を取得して resume で引き継ぐ
session_id = get_session_id_from_first_run()
second_result = await run_query("さっき読んだ部分のバグを直してください", resume=session_id) # OKなぜ重要か: デフォルトではqueryを呼ぶたびに新しいセッションが始まります。前回の会話を参照させたい場合は必ずresume=session_idを指定してください。
失敗4: Opus 4.7でSDKバージョンが古い
❌ エラー: thinking.type.enabled API error
⭕ 対策: Opus 4.7はAgent SDK v0.1.111以上が必要です(TypeScript版は v0.2.111以上)。エラーが出たらpip install --upgrade claude-agent-sdkを実行してください。
pip install --upgrade claude-agent-sdk
# または
npm install @anthropic-ai/claude-agent-sdk@latestBedrock・Vertex AI・Azure対応 — クラウド別の設定方法
Claude Agent SDKはAnthropicのAPIだけでなく、主要クラウドプロバイダー経由でも使えます。
Amazon Bedrock経由
export CLAUDE_CODE_USE_BEDROCK=1
# AWS認証情報を設定(~/.aws/credentials または 環境変数)
export AWS_DEFAULT_REGION=us-east-1
# あとは通常通りqueryを呼ぶだけ
import asyncio
from claude_agent_sdk import query
async def main():
async for message in query(prompt="Bedrockでエージェントを動かす"):
print(message)
asyncio.run(main())Bedrockの料金はAnthropicのAPIと同じレートです(2026年4月時点)。クロスリージョン推論は約10%のプレミアムが加算されます。
Google Vertex AI経由
export CLAUDE_CODE_USE_VERTEX=1
export CLOUD_ML_REGION=us-central1
export ANTHROPIC_VERTEX_PROJECT_ID=your-project-id
# Google Cloud認証
gcloud auth application-default loginMicrosoft Azure AI Foundry経由
export CLAUDE_CODE_USE_FOUNDRY=1
export AZURE_ENDPOINT=https://your-endpoint.openai.azure.com
export AZURE_API_KEY=your-azure-api-keyAWSはIAM管理・監査ログ・VPC内閉域が必要なエンタープライズ向け。GCPはVertex AIの他サービスとの統合が必要な場合。Azureは既存のAzureエコシステムに乗っている場合に選ぶのが自然です。
Managed Agents との使い分け — 自前運用か、Anthropicホスティングか
2026年にリリースされたManaged Agents(Claude Managed Agents)は、AnthropicがエージェントとサンドボックスをホスティングするREST APIサービスです。Agent SDKとどう違うか整理します。
| Agent SDK | Managed Agents | |
|---|---|---|
| 動作場所 | 自社インフラ・自分のプロセス内 | Anthropicが管理するインフラ |
| インターフェース | Python/TypeScriptライブラリ | REST API |
| ファイル操作対象 | 自社インフラのファイルシステム | Anthropic管理のサンドボックス |
| セッション状態 | 自社ファイルシステム上のJSONL | AnthropicホストのイベントログAPI |
| カスタムツール | インプロセスのPython/TS関数 | Claudeがトリガー → あなたが実行して結果を返す |
| 向いているケース | ローカルプロトタイプ・ファイルシステムに直接触れるエージェント | 長期実行・非同期・インフラ管理を任せたい本番エージェント |
一般的なパスは「Agent SDKでローカルプロトタイプ → 本番はManaged Agentsに移行」です。どちらもAnthropicのClaudeモデルを使うので、コード変更は最小限で済みます。
あわせて読みたい: OpenAIのSDKとの比較については、OpenAI Agents SDK完全ガイド2026も参考にしてください。Handoffs・Guardrails・Tracing・GPT-5.5対応の実装詳細を解説しています。
まとめ:今日から始める3つのアクション
Claude Agent SDKは「Claudeでエージェントを自社実装したい」なら現時点で最も手軽で公式サポートが手厚い選択肢です。2026年5月時点でv0.1.75(Python)/ v0.2.121(TypeScript)まで更新され、フック・サブエージェント・MCP・セッション継続が全て使えます。
- 今日やること:
pip install claude-agent-sdkを実行して、この記事のパターン1(コードレビューエージェント)を手元のリポジトリで動かしてみる - 今週中: allowed_toolsを絞ったread-onlyエージェントで、社内のコードベース解析や定例レポート生成を自動化する
- 今月中: フックを実装してaudit.logを出力し、エージェントの動作ログを蓄積。本番化の前提条件を満たす
参考・出典
- Agent SDK overview — Claude Code Docs — Anthropic公式(参照日: 2026-05-06)
- claude-agent-sdk-python CHANGELOG — GitHub anthropics(参照日: 2026-05-06)
- claude-agent-sdk-typescript CHANGELOG — GitHub anthropics(参照日: 2026-05-06)
- Building Agents with the Claude Agent SDK — Anthropic Engineering Blog(参照日: 2026-05-06)
- Pricing — Claude API Docs — Anthropic(参照日: 2026-05-06)
- 2026 AI Agent Framework Showdown — QubitTool(参照日: 2026-05-06)
- AIエージェント観測・評価完全ガイド:LangSmith/Langfuse/RAGAS/DeepEvalで本番品質を可視化
- AIエージェントMemory完全ガイド:Mem0/Zep/Lettaで永続記憶を実装、Core/Archival/Recall 3層モデル
- AI Voiceエージェント7強完全比較:Vapi/Retell/ElevenLabs/Deepgramほか電話AI比較
- AIカスタマーサポート7強完全比較:Decagon/Sierra/Intercom Fin等のCS AI基盤比較
- 士業のAI活用完全ガイド:税理士/社労士/弁護士/司法書士/行政書士の実践プロンプト10選
- Codex×経理 自動化プロンプト10選:経理特化10シーンで最大80%削減
- Codex×Excel自動化プロンプト10選:VBA/Apps Script/Power Query代替
- Codex×業務15選 部署別ガイド:営業/マーケ/人事/法務/経企/情シス/CSの15シーン
著者: 佐藤傑(さとう・すぐる)
株式会社Uravation代表取締役。早稲田大学法学部在学中に生成AIの可能性に魅了され、X(旧Twitter)で活用法を発信(@SuguruKun_ai、フォロワー約10万人)。100社以上の企業向けAI研修・導入支援を展開。著書『AIエージェント仕事術』(SBクリエイティブ)。SoftBank IT連載7回執筆(NewsPicks最大1,125ピックス)。
ご質問・ご相談はお問い合わせフォームからお気軽にどうぞ。
関連記事: MCP(Model Context Protocol)完全実装ガイド — Claude/Codex/Cursor統一プロトコルの実装ガイドです。
関連記事: AIエージェントセキュリティ完全ガイド|OWASP対応 — AIエージェントのセキュリティ実装ガイドです。










