最近 Anthropic 推出了 Claude Managed Agents。这是一套用来构建和部署云端 Agent 的 API。和常见的 Agent 框架不太一样,它的核心其实是一个叫 Harness 的编排引擎:把工具调用、上下文管理、错误恢复这些事都帮你处理了,而且会随着模型能力一起升级。

之前 Anthropic 的产品线有一个明显的断层。面向消费者有 claude.aiClaude Code,面向开发者有 Messages API。但如果一家企业想基于 Claude 做一个长时间运行的、能自主调用工具的 Agent,它需要自己搭沙箱、做状态管理、处理权限、写错误恢复逻辑。这些基础设施工作可能比 Agent 本身的业务逻辑还重

Managed Agents 就是来填这个空的。你可以直接在 Anthropic 的云服务上跑一个 Agent,它自带环境、工具和执行能力。你只需要告诉它要做什么,然后接收结果就行了。

四大核心概念

Managed Agents 构建在四个相互协作的核心概念之上。如果你使用过 Claude Code 或 Agent SDK,这个思维模型会感觉很熟悉。

1. Agent(智能体)

Agent 可以理解为一份可复用的配置:用哪个模型、系统提示词是什么、能用哪些工具、要不要接 MCP 服务,都在这里定义。创建之后会拿到一个 Agent ID,后面可以在不同会话里反复使用。

from anthropic import Anthropicclient = Anthropic()agent = client.beta.agents.create(    name="Code Reviewer",    model="claude-sonnet-4-6",    system="You are a senior code reviewer. Review code for bugs, performance issues, and security vulnerabilities. Be direct and specific.",    tools=[{"type": "agent_toolset_20260401"}],)print(agent.id)  # ag_01ABC...

agent_toolset_20260401 基本就是一套「开箱即用」的工具组合:包括 Bash、文件读写(Read / Write / Edit)、代码搜索(Glob / Grep),还有 Web 访问(Web Search / Web Fetch)。这些能力也不是强制全开,你可以按需要关掉,比如不想让它执行 shell 命令,就直接禁用。

另外,Agent 是带版本的。每次更新都会生成一个新版本,你可以查看历史记录,或者把某个会话固定在指定版本上。这在生产环境里挺有用——可以先用新版本跑一轮测试,没问题再切过去。

2. Environment(环境)

Environment 可以理解为智能体的运行模板,用来定义它「在什么环境里干活」。这里可以配置依赖包、网络规则,以及需要挂载的文件。

environment = client.beta.environments.create(    name="python-dev",    config={        "type": "cloud",        "packages": {            "pip": ["pytest", "requests", "pandas"],            "apt": ["git", "curl"],        },        "networking": {"type": "unrestricted"},    },)

你可以用 pipnpmaptcargogemgo 提前装好依赖。而且同一个环境会被缓存,后续会话启动会更快,不用每次都重新装一遍。

网络默认是 unrestricted,也可以切到 limited,再配一个域名白名单。如果你的智能体会处理敏感数据,这样可以把它能访问的范围限制得很清楚。

另外,你还可以把 GitHub 仓库直接挂进环境里:

environment = client.beta.environments.create(    name="my-repo-env",    config={        "type": "cloud",        "github": {            "repository": "myorg/myrepo",            "branch": "main",        },        "packages": {            "pip": ["pytest"],        },        "networking": {"type": "unrestricted"},    },)

会话启动时会自动 clone 下来,用起来就像本地项目一样。配合代码审查类的智能体,可以很方便地做自动化 PR 检查。

3. Session(会话)

Session 可以理解为智能体真正「干活」的地方,是运行在环境里的一个实例。每个会话都有独立的容器,包含自己的文件系统、进程和网络,不会互相影响。

session = client.beta.sessions.create(    agent=agent.id,    environment_id=environment.id,)print(session.id)      # ses_01XYZ...print(session.status)  # "running"

会话会一直存在,直到你手动关闭,或者超时结束。在这期间,智能体可以在多轮对话之间保留状态,用起来有点像 Claude Code 里的连续对话。

4. Events(事件)

Events 就是你和正在运行的会话之间的「通信通道」。你通过服务器发送事件(SSE),把消息发给智能体,同时也能实时接收它的响应、工具调用和状态更新。

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": "Review the code in src/ for security issues"}],    }])    # 流式传输响应    for event in stream:        if event.type == "agent.message":            for block in event.content:                print(block.text, end="")        elif event.type == "agent.tool_use":            print(f"\n[Using tool: {event.name}]")        elif event.type == "session.status_idle":            print("\n[Agent finished]")            break

因为是流式的,你可以看到它在做什么:什么时候读文件、什么时候跑命令、什么时候去查 Web,整个过程都是可见的。必要的时候,也可以中途打断它。

完整实战示例

下面是一个完整的工作示例,创建一个编码助手、给它任务,然后实时看它执行的过程。

from anthropic import Anthropicclient = Anthropic()# 1. 创建智能体agent = client.beta.agents.create(    name="Python Developer",    model="claude-sonnet-4-6",    system="""You are an expert Python developer. When given a task:1. Plan your approach first2. Write clean, well-tested code3. Run the tests to verify everything works4. Fix any issues before reporting completion""",    tools=[{"type": "agent_toolset_20260401"}],)# 2. 创建包含常用 Python 包的环境environment = client.beta.environments.create(    name="python-env",    config={        "type": "cloud",        "packages": {            "pip": ["pytest", "requests", "pydantic", "fastapi", "uvicorn"],        },        "networking": {"type": "unrestricted"},    },)# 3. 启动会话session = client.beta.sessions.create(    agent=agent.id,    environment_id=environment.id,)# 4. 给它一个任务并流式传输响应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": """            Build a FastAPI app with:            - A /health endpoint            - A /fibonacci/{n} endpoint that returns the nth fibonacci number            - Input validation (n must be between 1 and 1000)            - Unit tests for both endpoints            Run the tests and make sure they all pass.        """}],    }])    for event in stream:        if event.type == "agent.message":            for block in event.content:                if hasattr(block, 'text'):                    print(block.text, end="")        elif event.type == "agent.tool_use":            print(f"\n  → {event.name}")        elif event.type == "session.status_idle":            break# 5. 在同一会话中发送后续消息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": "Now add a /prime/{n} endpoint that checks if n is prime. Add tests for it too."}],    }])    for event in stream:        if event.type == "agent.message":            for block in event.content:                if hasattr(block, 'text'):                    print(block.text, end="")        elif event.type == "session.status_idle":            break

智能体会自己走完整个流程:先想怎么做,再写代码、建文件、装依赖、跑测试,最后把结果返回给你。

因为 Session 是持续存在的,后面的任务可以直接基于前面已经写好的代码继续做,不需要重新来一遍。

本质上,这就是和 Claude Code 一样的那套 ReAct(Reason → Act → Observe)循环。不同的是,这一整套运行环境和调度逻辑都已经帮你搭好了,你只需要给任务就行。

自定义工具和 MCP 服务器

内置工具已经能覆盖不少场景,但一旦需要接入你自己的系统,就要用到扩展能力了。Managed Agents 提供了两种方式。

自定义工具

你可以用 JSON Schema 定义工具接口。当智能体决定调用时,会发出一个结构化请求,你的服务去执行,然后把结果再回传给它。

agent = client.beta.agents.create(    name="Deploy Assistant",    model="claude-sonnet-4-6",    system="You help with deployments. Use the deploy tool to trigger deployments.",    tools=[        {"type": "agent_toolset_20260401"},        {            "type": "custom",            "name": "trigger_deploy",            "description": "Trigger a deployment to a specified environment",            "input_schema": {                "type": "object",                "properties": {                    "service": {"type": "string", "description": "Service name"},                    "environment": {"type": "string", "enum": ["staging", "production"]},                    "version": {"type": "string", "description": "Version tag to deploy"},                },                "required": ["service", "environment", "version"],            },        },    ],)

比如智能体调用 trigger_deploy,你在事件流里接住这个请求,执行部署逻辑,再把结果返回。这种方式可以很方便地接入内部 API、数据库、CI/CD 流水线等。

MCP 服务器

如果你了解 MCP,这一块就更省事了。Managed Agents 可以直接连到 MCP 服务器,相当于复用一整套现成工具。比如 Slack、GitHub、Jira 这些,只要有 MCP 接口,基本不需要自己再写一层集成,直接就能用。

多智能体编排(研究预览版)

这里开始变得有意思了。Managed Agents 提供了一个多智能体编排的研究预览。你可以定义一个「协调器」智能体,把任务拆分后分配给多个「工作者」智能体来完成。

每个工作者在自己的上下文里运行,互不干扰,但它们共享同一个容器和文件系统。换句话说,对话是隔离的,但工作结果是共享的。

一个比较实际的例子:协调器把代码审查和测试分别交给两个智能体处理。

# 创建专业智能体reviewer = client.beta.agents.create(    name="Code Reviewer",    model="claude-sonnet-4-6",    system="You are an expert code reviewer. Focus on code quality, bugs, and security.",    tools=[{"type": "agent_toolset_20260401"}],)tester = client.beta.agents.create(    name="Test Writer",    model="claude-sonnet-4-6",    system="You write comprehensive test suites. Focus on edge cases and error handling.",    tools=[{"type": "agent_toolset_20260401"}],)# 创建可以委托给专业智能体的协调器coordinator = client.beta.agents.create(    name="Tech Lead",    model="claude-opus-4-6",    system="""You are a tech lead managing a code review process. You have two team members:- Code Reviewer: Reviews code for quality, bugs, and security- Test Writer: Writes comprehensive testsDelegate review and testing tasks to the appropriate specialist, then synthesize their findings into a final report.""",    tools=[{"type": "agent_toolset_20260401"}],    agents=[        {"agent_id": reviewer.id, "name": "Code Reviewer"},        {"agent_id": tester.id, "name": "Test Writer"},    ],)

协调器负责什么时候拆任务、怎么拆,然后把各个结果收回来,最后统一整理输出。因为大家共享同一套文件系统,测试智能体可以直接看到审查智能体标出来的问题,再针对这些地方补测试,整个流程是串起来的。

目前的限制是只支持一层分工:协调器 → 工作者,工作者不能再继续往下拆。不过即便这样,这个模式已经挺实用了。可以把它理解成一套「AI 版 CI/CD 流水线」:不同智能体分别做 lint、测试、安全扫描、部署,各自处理,然后由协调器统一收口。

与其他方法的对比

Anthropic 现在的智能体相关产品其实有点重叠,可以简单按「你要自己管多少东西」来理解:

方法 你需要管什么 适合场景
Messages API 全部(循环、工具、容器) 需要完全自定义
Agent SDK 工具执行、容器 想用工具,但自己托管
Managed Agents 只管提示词和任务 后端自动化
Claude Code CLI 基本不用管 本地交互式开发
Claude Cowork 不用管 非技术用户

如果换成更实际一点的选型思路,可以这么看:

使用 Messages API 当你需要完全控制整个 Agent 流程,比如自己决定每一步怎么走、用什么模型,或者有一些很定制化的需求。。

使用 Agent SDK 当你想用 Claude Code 那一套成熟工具(文件操作、搜索、bash),但又希望所有东西跑在自己的环境里。

使用 Managed Agents 当你只想把 Agent 跑起来,不想管基础设施。很适合做后端自动化,比如 PR 审查、代码生成流水线、测试、文档生成这些。

使用 Claude Code 当你是在本地写代码,需要一个能随时帮你改代码、查问题的助手。

定价详解

Managed Agents 的费用其实可以拆成两块:token + 运行时间

1)Token 费用(和普通 API 一样)

模型 输入 输出
Opus 4.6 $5/MTok $25/MTok
Sonnet 4.6 $3/MTok $15/MTok
Haiku 4.5 $1/MTok $5/MTok

2)会话运行时间

按会话计费:$0.08 / 小时,精确到毫秒。只有在运行中的时间才收费,空闲不算钱。

可以用一个简单的例子来感受一下:

一次用 Opus 4.6 跑了大约 1 小时的编码任务,消耗 50K 输入 token + 15K 输出 token,总成本大概是:

  • • 输入:$0.25
  • • 输出:$0.375
  • • 运行时间:$0.08
  • 总计:约 $0.705

从成本结构来看,其实挺好理解的:

  • • token 是「思考成本」
  • • runtime 是「环境成本」

而且 runtime 这部分其实不贵。你拿它和自己在 AWS 上搭一套(EC2 + 容器 + 调度 + 工具链)对比,会发现时间成本和工程复杂度往往更高。

还有几个容易忽略的点:

  • Web 搜索:$10 / 1000 次
  • 提示词缓存:命中缓存只算 0.1x,这点挺关键,因为 Agent 通常有很长的上下文

可以构建什么

下面这些是我觉得比较有意思、也比较实用的用法:

自动化 PR 审查

把 GitHub 仓库挂进来,做一个代码审查的智能体,每次有 PR 就跑一轮。它可以读 diff、查 bug、看安全问题、跑测试,然后直接给出审查结果。如果用多智能体,还可以把安全、性能、代码质量拆开,各自处理。

自愈 CI/CD

CI 挂了的时候,自动拉起一个智能体,把报错信息和代码给它。它去分析原因、写修复、再开一个 PR。对于 flaky 测试或者简单回归问题,这种方式能省掉不少人工排查时间。

文档生成

让智能体直接读代码库,生成或更新 API 文档、README、变更日志这些。因为它能跑代码、调命令,所以连示例代码都可以顺手验证一遍,而不是「看起来对」。

数据流水线调试

数据任务出问题时,拉一个能看代码、日志、监控的智能体(可以通过 MCP 接入)。它可以一路追问题、找原因,甚至直接给出修复方案。

代码迁移

比如要从一个框架迁到另一个,可以做一个专门的迁移智能体。给它旧代码和新框架文档,让它一块一块地改,而不是一次性全推翻。

快速上手

安装其实很简单,常见语言基本都支持:Python、TypeScript、Java、Go、C#、Ruby、PHP。

# Pythonpip install anthropic# TypeScriptnpm install @anthropic-ai/sdk# CLIbrew install anthropics/tap/ant

用的时候有一个小点要注意:所有请求需要带上 managed-agents-2026-04-01 这个 beta 头。不过如果你直接用 client.beta.agents 这一套接口,SDK 会帮你自动处理。

另外,一些还在预览阶段的功能(比如多智能体、内存、结果管理)需要单独申请开通[1]。文档也已经比较全了,可以直接去官方文档[2]看详细用法。

写到最后

Managed Agents 其实代表了 Anthropic 的一个明显变化:从「提供模型能力」,走向「提供完整的智能体运行平台」。以前是你调用 API、自己把循环和工具这些东西拼起来;现在更像是你定义任务,执行这件事交给平台。

我觉得可以用 AWS 来类比:从 EC2(什么都自己管)到 Lambda(只写逻辑,其他交给平台)。Anthropic 也在走类似的路径:从 Messages API,到现在的 Managed Agents。多智能体的预览版本,其实已经在暗示下一步:不是一个 Agent,而是一组分工明确的 Agent,一起完成任务。

换句话说,以后可能不是「写一个系统」,而是「配置一组智能体」。

如果你之前自己搭过 Agent,就会知道有多少时间花在这些事情上:循环控制、工具调用、执行环境、上下文管理……

Managed Agents 做的事情其实很简单:把这些基础设施都收走,让你只用关心任务本身。

学AI大模型的正确顺序,千万不要搞错了

🤔2026年AI风口已来!各行各业的AI渗透肉眼可见,超多公司要么转型做AI相关产品,要么高薪挖AI技术人才,机遇直接摆在眼前!

有往AI方向发展,或者本身有后端编程基础的朋友,直接冲AI大模型应用开发转岗超合适!

就算暂时不打算转岗,了解大模型、RAG、Prompt、Agent这些热门概念,能上手做简单项目,也绝对是求职加分王🔋

在这里插入图片描述

📝给大家整理了超全最新的AI大模型应用开发学习清单和资料,手把手帮你快速入门!👇👇

学习路线:

✅大模型基础认知—大模型核心原理、发展历程、主流模型(GPT、文心一言等)特点解析
✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑
✅开发基础能力—Python进阶、API接口调用、大模型开发框架(LangChain等)实操
✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用
✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代
✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经

以上6大模块,看似清晰好上手,实则每个部分都有扎实的核心内容需要吃透!

我把大模型的学习全流程已经整理📚好了!抓住AI时代风口,轻松解锁职业新可能,希望大家都能把握机遇,实现薪资/职业跃迁~

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐