開始使用 Claude Managed Agents
建立您的第一個自主代理。
本指南將引導您建立代理、設定環境、啟動工作階段,以及串流代理回應。
核心概念
| 概念 | 說明 |
|---|---|
| Agent(代理) | 模型、系統提示、工具、MCP 伺服器與技能 |
| Environment(環境) | 工作階段執行位置的設定:由 Anthropic 管理的雲端沙箱,或在您自己的基礎設施上自行託管的沙箱 |
| Session(工作階段) | 在環境中執行的代理實例,負責執行特定任務並產生輸出 |
| Events(事件) | 您的應用程式與代理之間交換的訊息(使用者輪次、工具結果、狀態更新) |
先決條件
- 一個 Claude Console 帳戶
- 一組 API 金鑰
安裝 CLI
brew install anthropics/tap/ant檢查安裝:
ant --version安裝 SDK
pip install anthropic將您的 API 金鑰設定為環境變數:
export ANTHROPIC_API_KEY="your-api-key-here"建立您的第一個工作階段
建立代理
建立一個定義模型、「system prompt」(系統提示)與可用工具的代理。
AGENT_ID=$(ant beta:agents create --transform id --raw-output < coding-assistant.agent.yaml) echo "Agent ID: $AGENT_ID"coding-assistant.agent.yamlname: Coding Assistant model: id: claude-opus-5 system: You are a helpful coding assistant. Write clean, well-documented code. tools: - type: agent_toolset_20260401agent_toolset_20260401工具類型會啟用完整的預建代理工具集(bash、檔案操作、網頁搜尋等)。請參閱工具以取得完整清單與各工具的設定選項。儲存回傳的
agent.id。您將在建立的每個工作階段中參照它。建立環境
環境定義了代理執行所在的沙箱。
ENVIRONMENT_ID=$(ant beta:environments create --transform id --raw-output < quickstart.environment.yaml) echo "Environment ID: $ENVIRONMENT_ID"quickstart.environment.yamlname: quickstart-env config: type: cloud networking: type: unrestricted儲存回傳的
environment.id。您將在建立的每個工作階段中參照它。啟動工作階段
建立一個參照您的代理與環境的工作階段。
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 建構的瀏覽器聊天研究分析師。每段對話都是一個持久的工作階段,會串流其回覆,同時即時動態顯示工具呼叫。更換 Chat SDK 轉接器即可將相同的處理程式移至 Slack、Teams、Discord 或 WhatsApp。
以 assistant-ui 基本元件建構的聊天試算表分析師。工作階段即為對話串清單,一個 reducer 將工作階段事件記錄轉換為訊息與工具卡片,且每個 bash 指令在執行前都會呈現內嵌的允許/拒絕閘門。
CopilotKit 聊天中的個人理財助理。Claude Managed Agents 的 AG-UI 轉接器將每個聊天對話串對應至一個受管理的工作階段,並逐 token 串流回覆,而自訂工具則在對話中內嵌呈現互動式圖表。
後續步驟
Was this page helpful?