Claude Managed Agentsを使い始める
最初の自律型エージェントを作成します。
このガイドでは、エージェントの作成、環境のセットアップ、セッションの開始、エージェントの応答のストリーミングについて順を追って説明します。
コアコンセプト
| 概念 | 説明 |
|---|---|
| Agent(エージェント) | モデル、システムプロンプト、ツール、MCPサーバー、およびスキル |
| Environment(環境) | セッションが実行される場所の設定:Anthropicが管理するクラウドサンドボックス、または独自のインフラストラクチャ上のセルフホスト型サンドボックス |
| Session(セッション) | 環境内で実行中のエージェントインスタンス。特定のタスクを実行し、出力を生成します |
| Events(イベント) | アプリケーションとエージェントの間でやり取りされるメッセージ(ユーザーターン、ツール結果、ステータス更新) |
前提条件
CLIをインストールする
brew install anthropics/tap/antインストールを確認します。
ant --versionSDKをインストールする
pip install anthropicAPIキーを環境変数として設定します。
export ANTHROPIC_API_KEY="your-api-key-here"最初のセッションを作成する
エージェントを作成する
モデル、システムプロンプト、利用可能なツールを定義するエージェントを作成します。
ant apply coding-assistant.mdcoding-assistant.md--- name: Coding Assistant model: claude-opus-5 tools: - type: agent_toolset_20260401 --- You are a helpful coding assistant. Write clean, well-documented code.agent_toolset_20260401ツールタイプは、事前構築済みのエージェントツール一式(bash、ファイル操作、ウェブ検索など)を有効にします。完全な一覧とツールごとの設定オプションについては、ツールを参照してください。返された
agent.idを保存してください(CLIのant applyはこれを出力し、claude-lock.jsonに記録します)。作成するすべてのセッションでこれを参照します。環境を作成する
環境は、エージェントが実行されるサンドボックスを定義します。
ant apply environment.yamlenvironment.yamlname: quickstart-env config: type: cloud networking: type: unrestricted返された
environment.idを保存してください(ant applyを使用した場合はclaude-lock.jsonにも記録されます)。作成するすべてのセッションでこれを参照します。セッションを開始する
エージェントと環境を参照するセッションを作成します。
session = client.beta.sessions.create( agent=agent.id, environment_id=environment.id, title="Quickstart session", ) print(f"Session ID: {session.id}")メッセージを送信して応答をストリーミングする
ストリームを開き、ユーザーイベントを送信してから、到着したイベントを順次処理します。
with client.beta.sessions.events.stream(session.id) as stream: # ストリームが開いた後にユーザーメッセージを送信 client.beta.sessions.events.send( session.id, events=[ { "type": "user.message", "content": [ { "type": "text", "text": "Create a Python script that generates the first 20 Fibonacci numbers and saves them to fibonacci.txt", }, ], }, ], ) # ストリーミングイベントを処理 for event in stream: match event.type: case "agent.message": for block in event.content: if block.type == "text": print(block.text, end="") case "agent.tool_use": print(f"\n[Using tool: {event.name}]") case "session.status_idle": print("\n\nAgent finished.") breakエージェントはPythonスクリプトを作成し、サンドボックス内で実行して、出力ファイルが作成されたことを確認します。出力は次のようになります。
I'll create a Python script that generates the first 20 Fibonacci numbers and saves them to a file. [Using tool: write] [Using tool: bash] The script ran successfully. Let me verify the output file. [Using tool: bash] fibonacci.txt contains the first 20 Fibonacci numbers (0 through 4181). Agent finished.
何が起きているか
ユーザーイベントを送信すると、Claude Managed Agentsは次のことを行います。
- サンドボックスをプロビジョニングする: 環境の設定によって、どのように構築されるかが決まります。
- エージェントループを実行する: Claudeはメッセージに基づいて、どのツールを使用するかを判断します。
- ツールを実行する: ファイルの書き込み、bashコマンド、その他のツール呼び出しはサンドボックス内で実行されます。
- イベントをストリーミングする: エージェントの作業中、リアルタイムで更新を受け取ります。
- アイドル状態になる: エージェントは、これ以上行うことがなくなると
session.status_idleイベントを発行します。
完全なアプリを構築する
これらのクイックスタートはそれぞれ、Claude Managed Agentsを人気のチャットフレームワークと組み合わせて、完全に実行可能なアプリケーションを作成します。いずれの場合も、フレームワークがチャット画面をレンダリングし、マネージドセッションがサーバー側でエージェントループを実行します。セッションはトランスクリプトを保持し、サンドボックス内でツールを実行し、フロントエンドがレンダリングするイベントをストリーミングします。
VercelのChat SDKで構築されたブラウザチャット内のリサーチアナリストです。各会話は1つの永続的なセッションであり、ライブフィードにツール呼び出しが表示される間に返信をストリーミングします。Chat SDKアダプターを差し替えることで、同じハンドラーをSlack、Teams、Discord、またはWhatsAppに移行できます。
assistant-uiのプリミティブから構築されたチャット内のスプレッドシートアナリストです。セッションがスレッド一覧となり、1つのreducerがセッションのイベントログをメッセージとツールカードに変換し、各bashコマンドは実行前にインラインの許可/拒否ゲートをレンダリングします。
CopilotKitチャット内のパーソナルファイナンスアシスタントです。Claude Managed Agents用のAG-UIアダプターが各チャットスレッドをマネージドセッションにマッピングして返信をトークンごとにストリーミングし、カスタムツールが会話内にインタラクティブなチャートをインラインでレンダリングします。
次のステップ
再利用可能でバージョン管理されたエージェント設定を作成する
ネットワークとサンドボックスの設定をカスタマイズする
エージェントに特定のツールを有効にする
イベントを処理し、実行中のエージェントを操縦する
定期的なcronスケジュールでエージェントを実行する
ドキュメントコーパスを一度だけナレッジwikiに蒸留し、繰り返される質問にわずかなコストで回答する
Was this page helpful?