Anthropic 推出 Claude Managed Agents(让 Agentic AI 工作流成为现实)

作者:AI拉呱(Errol Yan)
定位:AI领域深度内容与实战方法分享

Claude Managed Agents

Claude Managed Agents 让你不再浪费时间去拼接脚本让Agent工作。

我测试了全新的 Claude Managed Agents,发现了 AI Agent 工作流中缺失的一环。

首先,如果你一直在使用 AI Agent 或构建它们,你就会知道这个常见的问题。

你在逻辑上花的时间比产品还多。

Agent 循环、工具执行、上下文管理、沙箱隔离和会话处理;所有这些都只能由你从头开始连接,在写任何真正的业务逻辑之前。

当任务进行到一半出现问题时,你又回到了调试基础设施而不是交付产品。

这就是 Claude Managed Agents 承诺解决的问题。 Anthropic 不会再给你一个需要包装的 API,而是直接提供一个运行时。

这是一个完全托管的云环境,Claude 可以自行读取文件、运行命令、浏览网页和执行代码。会话连续性和上下文管理已经处理好了。我花时间进行了全面审查,看看它是否兑现了承诺。

Claude Managed Agents

Anthropic 推出了两个产品:

  • 首先是 Claude Managed Agents — 一个完全托管的 Agent 运行环境,运行在 Anthropic 的基础设施上。你定义 Agent,发送任务,Anthropic 的云处理其他一切:容器、工具、执行和会话。
  • 其次是 Claude Agent SDK(前身为 Claude Code SDK)— 一个 Python 和 TypeScript 库,将驱动 Claude Code 的相同 Agent 循环嵌入到你自己的应用中。你自己托管它,但所有困难的部分都是预构建的。

两者解决相同的问题,但区别在于 Agent 在哪里运行。

  • SDK — Agent 在你自己的基础设施内运行
  • Managed Agents — Agent 在 Anthropic 的云上运行,完全托管

对于阅读本文的大多数开发者来说,Managed Agents 是更重要的版本,本文将重点介绍 Claude Managed Agents。

四个构建块

Managed Agents 围绕四个概念构建。一旦理解了这些,整个系统就清楚了。

Claude Managed Agents

你的应用向运行在 Anthropic 云中的会话发送事件,其中 Agent 和环境已经配置好

  • Agent — 你的配置:模型、系统提示、工具、MCP 服务器和技能。定义一次,通过 ID 在每个会话中引用。
  • Environment — 带有预安装包(Python、Node.js、Go 等)的云容器、网络访问规则和挂载文件。这是你的 Agent 工作空间。
  • Session — 你的 Agent 在环境中的一个运行实例,执行特定任务。文件、对话历史和上下文在整个生命周期内保持不变。
  • Events — 在你的应用和 Agent 之间流动的消息:用户轮次、工具结果、状态更新和流式响应。

以下是代码中的样子。你创建一次 Agent:

import anthropic

client = anthropic.Anthropic()

# 创建 Agent — 做一次,通过 ID 重用
agent = client.beta.agents.create(
    model="claude-sonnet-4-6",
    system="你是一个软件工程师。修复 bug,运行测试,并报告结果。",
    tools=[{"type": "bash"}, {"type": "file_operations"}, {"type": "web_search"}],
    name="bug-fixer"
)

print(agent.id)  # 保存这个 — 你将在会话中引用它

然后启动一个会话并发送任务:

# 创建一个包含 Agent 所需包的环境
environment = client.beta.environments.create(
    packages=["pytest", "requests"]
)

# 启动一个��用你的 Agent 和环境的会话
session = client.beta.sessions.create(
    agent_id=agent.id,
    environment_id=environment.id
)

# 将你的任务作为事件发送
response = client.beta.sessions.events.create(
    session_id=session.id,
    content="找出并修复 auth.py 中失败的测试"
)

这是完整的设置,包括一个 Agent 定义、环境和会话;然后 Claude 从那里开始。

Agent 循环是如何工作的

当你启动会话时,Claude 不会响应一次然后等待。

它运行一个持续的循环:接收提示、评估任务、调用工具、处理结果、重复;直到任务完成。每一个完整的往返就是一轮。

Agent Loop Claude Managed Agents

Claude 在每轮自主地评估、调用工具、处理结果并重复,直到任务完成或达到限制

对于一个实际任务是这样的:“找出并修复 auth.py 中失败的测试”。

  • 第 1 轮 — Claude 通过 Bash 运行测试套件。返回三个失败。
  • 第 2 轮 — Claude 读取测试文件以理解问题。
  • 第 3 轮 — Claude 编辑文件并重新运行测试。三个全部通过。
  • 最后一轮 — Claude 返回没有工具调用的文本响应。任务完成。

以下是代码中的会话样子:

import anthropic

client = anthropic.Anthropic()

async for event in client.beta.sessions.stream(
    session_id=session.id,
    event={
        "type": "user",
        "content": "找出并修复 auth.py 中失败的测试"
    }
):
    # 看看每轮 Claude 在做什么
    if event.type == "assistant_message":
        print(event.content)

    # 捕获最终结果
    if event.type == "result":
        print(f"完成: {event.result}")
        print(f"使用的轮数: {event.num_turns}")
        print(f"成本: ${event.total_cost_usd:.4f}")
        session_id = event.session_id  # 保存以便稍后恢复

这个流让你全程可见:每轮实时发生的每个工具调用和结果。

上下文管理

大多数 DIY Agent 设置失败的地方是上下文。

每轮都会添加到上下文窗口:提示、工具定义、文件读取、命令输出和对话历史。一旦达到限制,会话就会死亡。

Managed Agents 自动处理这个。

当上下文窗口接近其限制时,系统通过总结较旧的历史来压缩对话以释放空间,同时保持最近的交换和关键决策完整。

这种方法允许会话无中断地继续。

三个控制

Effort level — 控制每轮 Claude 推理的深度。

Effort Level

要深思熟虑地设置,因为它会影响代币使用和成本。

Max turns and budget — 在循环失控之前设置上限。

session = client.beta.sessions.create(
    agent_id=agent.id,
    environment_id=environment.id,
    max_turns=20,           # 20 轮后停止
    max_budget_usd=0.50     # 或者当花费达到 $0.50
)

当任一限制达到时,会话返回一个明确的子类型结果,这样你就知道为什么停止了,如果需要可以用会话 ID 恢复。

Permission mode — 控制 Claude 在不询问的情况下能做什么。

  • _default_ — 通过回调 gates 任何未预先批准的内容
  • _acceptEdits_ — 自动批准文件编辑,仍然 gates shell 命令
  • _bypassPermissions_ — 在隔离容器和 CI 中无提示地运行一切

你可以在任务中途引导它

当会话运行时,你可以发送额外的事件来重定向它、添加上下文或停止它。

# 发送会话中途的纠正
client.beta.sessions.events.create(
    session_id=session.id,
    content="实际上���只��复 auth_token 测试 — 不要管 login 测试"
)

如果 Claude 走向错误的方向,你不需要等它完成。

会话也是持久的;你可以捕获会话 ID,你可以在中断的地方继续。

# 恢复之前的会话
async for event in client.beta.sessions.stream(
    session_id="sess_abc123",   # 来自之前的运行
    event={"type": "user", "content": "继续 — 现在也修复 payment 模块"}
):
    if event.type == "result":
        print(event.result)

Claude Managed Agent 工具

手动构建 Agent 时最大的时间浪费之一是工具执行。

编写包装器、处理错误以及将结果管理回上下文。使用 Managed Agents,这些工作已经完成。

以下是完整的工具集:

Claude Managed Agent Tools

Claude Managed Agents 中所有内置工具,按类别分组

文件操作

  • _Read_ — 读取容器中的任何文件
  • _Write_ — 创建新文件
  • _Edit_ — 修改现有文件

搜索

  • _Glob_ — 按模式查找文件
  • _Grep_ — 用正则表达式搜索内容

执行

  • _Bash_ — 运行 shell 命令、脚本、git 操作、安装包、运行测试

Web

  • _WebSearch_ — 搜索互联网
  • _WebFetch_ — 从任何 URL 获取和解析完整页面内容

编排

  • _Task_ — 生成用于隔离工作的子代理
  • _Skill_ — 调用可重用的工作流
  • _AskUserQuestion_ — 暂停并请求人工输入
  • _TodoWrite_ — 在会话中跟踪多步骤工作

除了内置工具,你还可以通过 MCP 服务器连接外部服务并定义带有自己的处理程序的自定义工具。

入门

Claude Managed Agents 目前处于测试阶段。

默认情况下为所有 API 账户启用访问;如果你已经有 Claude API 密钥,就可以开始。

以下是您需要的:

  • 来自 platform.claude.com 的 Claude API 密钥
  • 所有请求上的 _managed-agents-2026-04-01_ 测试版 header
  • Python 或 TypeScript SDK — SDK 自动设置 header

安装 SDK:

pip install anthropic

设置你的 API 密钥:

export ANTHROPIC_API_KEY=your-api-key

你的第一个工作 Agent 不到 20 行:

import anthropic
import asyncio

client = anthropic.Anthropic()

async def main():
    agent = client.beta.agents.create(
        model="claude-sonnet-4-6",
        system="你是一个有用的工程助手。",
        tools=[{"type": "bash"}, {"type": "file_operations"}],
        name="my-first-agent"
    )

    environment = client.beta.environments.create(
        packages=["pytest"]
    )
    
    session = client.beta.sessions.create(
        agent_id=agent.id,
        environment_id=environment.id,
        max_turns=10,
        max_budget_usd=0.25
    )
    
    async for event in client.beta.sessions.stream(
        session_id=session.id,
        event={"type": "user", "content": "列出这个目录中的所有 Python 文件"}
    ):
        if event.type == "result":
            print(event.result)
            print(f"成本: ${event.total_cost_usd:.4f}")

asyncio.run(main())

三个功能

  • Outcomes
  • 多代理协调
  • 持久内存

所有功能都在研究预览中,需要在 claude.com/form/claude-managed-agents 单独申请访问。

最终想法

Claude Managed Agents 是一个绝妙的想法;Agent 循环、上下文管理、工具执行和会话连续性。

过去几周的基础设施工作现在变成了配置文件和 API 调用。这是快速构建生产级 Agent 的一大步。

权衡是输出质量仍然取决于输入质量��

你试过 Claude Managed Agents 吗?你的体验如何?在下方评论中告诉我你的想法。

Claude Code 大师课程

Claude Code Masterclass Course

每天,我都在努力构建终极的 Claude Code 课程,展示如何创建工作流来协调多个 Agent 完成复杂的开发任务。它即将发布。

它将把你从本文中学到的知识带到完整自动化的下一层。

Claude Code 的新功能每天都在添加,跟上它们很难。

该课程探讨 Agent、Hooks、高级工作流和许多开发者可能不知道的生产力技术。

一旦你加入,你将在新功能推出时收到所有更新。

该课程将涵盖:

  • 高级子代理模式和工作流
  • 生产级 hook 配置
  • 外部工具的 MCP 服务器集成
  • 团队协作策略
  • 企业部署模式
  • 我咨询工作中的真实案例研究

如果你有兴趣在 Claude Code 课程发布时收到通知,点击此处加入早期访问列表 →

目前,我已有 47,000+ 名已注册的开发人员

我将与列表中的人分享独家预览、早期访问价格和奖励材料。


关注 AI拉呱

如果这篇内容对你有启发,欢迎关注「AI拉呱」,获取更多 AI 前沿洞察、实战教程与趋势解读。

下期在看

下期将继续带来该主题的进阶拆解与实操案例,建议先收藏本文,避免错过更新。

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐