Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Was this page helpful?
Claude Managed Agents 提供了一組內置工具,Claude 可以在會話中自主使用這些工具。您可以通過在代理配置中指定工具來控制哪些工具可用。
還支持自定義的用戶定義工具。您的應用程序單獨執行這些工具,並將工具結果發送回 Claude;Claude 可以使用這些結果來繼續執行手頭的任務。
所有 Managed Agents API 請求都需要 managed-agents-2026-04-01 beta 標頭。SDK 會自動設置 beta 標頭。
代理工具集包括以下工具。當您在代理配置中包含工具集時,所有工具默認都是啟用的。
| 工具 | 名稱 | 描述 |
|---|---|---|
| Bash | bash | 在 shell 會話中執行 bash 命令 |
| Read | read | 從本地文件系統讀取文件 |
| Write | write | 將文件寫入本地文件系統 |
| Edit | edit | 在文件中執行字符串替換 |
| Glob | glob | 使用 glob 模式進行快速文件模式匹配 |
| Grep | grep | 使用正則表達式進行文本搜索 |
| Web fetch | web_fetch | 從 URL 獲取內容 |
| Web search | web_search | 在網絡上搜索信息 |
在創建代理時,使用 agent_toolset_20260401 啟用完整工具集。使用 configs 數組禁用特定工具或覆蓋其設置。
要禁用工具,請在其配置條目中設置 enabled: false:
{
"type": "agent_toolset_20260401",
"configs": [
{ "name": "web_fetch", "enabled": false },
{ "name": "web_search", "enabled": false }
]
}要從全部禁用開始,只啟用您需要的工具,請將 default_config.enabled 設置為 false:
{
"type": "agent_toolset_20260401",
"default_config": { "enabled": false },
"configs": [
{ "name": "bash", "enabled": true },
{ "name": "read", "enabled": true },
{ "name": "write", "enabled": true }
]
}除了內置工具外,您還可以定義自定義工具。自定義工具類似於 Messages API 中的用戶定義客戶端工具。
自定義工具允許您擴展 Claude 的功能以執行更多種類的任務。每個工具都定義了一個契約:您指定可用的操作及其返回內容;Claude 決定何時以及如何調用它們。該模型永遠不會自行執行任何操作。它發出結構化請求,您的代碼運行該操作,結果流回對話。
定義工具後,代理將在會話過程中調用這些工具。有關完整流程,請參閱會話事件流。
create_pr、review_pr、merge_pr),不如將它們分組到一個具有 action 參數的單一工具中。更少、更強大的工具可以減少選擇歧義,使您的工具表面更容易讓 Claude 導航。db_query、storage_read)。這使得工具選擇明確,隨著您的庫的增長而不會產生歧義。ant beta:agents create <<'YAML'
name: Coding Assistant
model: claude-opus-4-7
tools:
- type: agent_toolset_20260401
configs:
- name: web_fetch
enabled: false
YAMLant beta:agents create <<'YAML'
name: Weather Agent
model: claude-opus-4-7
tools:
- type: agent_toolset_20260401
- type: custom
name: get_weather
description: Get current weather for a location
input_schema:
type: object
properties:
location:
type: string
description: City name
required:
- location
YAML