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