Claude Agent SDKでエージェントを構築する

Claude Agent SDK エンジニアリング 6分で読めます

Claude Agent SDK(旧称 Claude Code SDK)は、Claude Codeを支えているエージェントの仕組みを、自分のアプリケーションから直接利用できるようにする開発キットです。ツール実行・ファイル操作・コンテキスト管理といったエージェントのループを自前で組まずに、Claudeを核とした自律的なエージェントを構築できます。

概要

大規模言語モデルを「エージェント」として動かすには、モデルにツールを渡し、モデルの出力に応じてツールを実行し、その結果を再びモデルに戻す、というループ(エージェントループ)が必要です。Claude Agent SDK は、このループやコンテキスト管理、ファイル・ターミナル操作といった土台をあらかじめ用意しており、開発者は「何をさせたいか」に集中できます。

SDK は TypeScript 版と Python 版が提供されています。Claude Code と同じエンジンを使うため、コード編集・コマンド実行・検索などのツールをそのまま活用できます。

Claude Agent SDKとは

もともと「Claude Code SDK」という名前でしたが、Claude Code のコマンドライン用途にとどまらず、汎用的なエージェント構築に使えることを反映して「Claude Agent SDK」に改称されました。カスタマーサポート、コードレビュー、リサーチ、社内業務の自動化など、ファイルやツールを操作しながら多段のタスクをこなすエージェントを作れます。

SDK が提供する主な要素は、(1) Claudeとのメッセージのやり取り、(2) 組み込みツール(ファイル読み書き・シェル実行・検索など)、(3) 権限やツール許可の制御、(4) サブエージェントやフックといった拡張ポイントです。

セットアップ

TypeScript の場合は npm パッケージを、Python の場合は pip パッケージをインストールします。APIキー(ANTHROPIC_API_KEY)を環境変数に設定しておきます。

# TypeScript / Node.js
npm install @anthropic-ai/claude-agent-sdk

# Python
pip install claude-agent-sdk

APIキーは Anthropic Console で発行します。キーはコードに直書きせず、環境変数やシークレット管理から読み込んでください。

基本的な使い方

SDK ではプロンプト(やらせたいこと)を渡すと、Claudeが必要に応じてツールを呼び出しながらタスクを進めます。TypeScript の最小例は次のようになります(実際のAPI名は最新のドキュメントで確認してください)。

import { query } from "@anthropic-ai/claude-agent-sdk";

for await (const message of query({
  prompt: "このリポジトリのREADMEを読んで、要点を3行にまとめて",
  options: { model: "claude-opus-4-8" }
})) {
  console.log(message);
}

エージェントの応答はストリームとして順次届き、ツール実行の要求や結果もメッセージとして流れてきます。使えるツールや作業ディレクトリ、権限モード(自動許可の範囲)はオプションで制御できます。

ベストプラクティス

最新のAPI・パッケージ名・対応機能は公式ドキュメントを参照してください。本ページは非公式の日本語まとめです。