Anthropic 托管代理 (Managed Agents) 有何不同?(深度解析)

BBetter Stack
Computing/SoftwareSmall Business/StartupsManagementInternet Technology

Transcript

00:00:00Claude 团队发布了 Claude 托管智能体(Managed Agents),他们称其为
00:00:09继智能体 SDK 之后的又一次进化。
00:00:11这能让你在不写一行代码的情况下,创建自定义智能体。
00:00:16这些智能体运行在 Anthropic 自己的托管基础设施上,它拥有非常酷的架构,
00:00:22非常适合发布安全、可扩展、生产就绪的智能体,它们几乎可以
00:00:27做任何你想做的事。
00:00:28它们还能根据你的知识库回答客户咨询,甚至能为你进行日常研究,
00:00:32并在特定时间通过 Slack 发送给你。
00:00:36但为什么会有人用这个,而不是在自己的 VPS 上安装 Claude Code 呢?
00:00:40点击订阅,让我们一探究竟。
00:00:46但在开始之前,让我们先聊聊 Anthropic,因为他们最近几周
00:00:49一直很忙。
00:00:50我是说,他们最近阻止了人们在第三方工具(如 OpenClaw)上
00:00:55使用 Claude 订阅,大家认为这是因为托管智能体的推出,但它们
00:01:00并不完全是一回事。
00:01:01我的意思是,我会说 OpenClaw 有点像 Linux。
00:01:04它是属于折腾者的智能体。
00:01:06你自己选硬件,选模型,处理安全问题
00:01:11以及其间的一切。
00:01:12而 Claude 托管智能体,我敢说它像苹果,因为你不需要
00:01:17做任何这些事情。
00:01:19Claude 负责处理基础设施和安全,你只需用简单的英语告诉它你想要什么,
00:01:24它就会着手构建你完美的智能体。
00:01:28事实上,让我通过一个简单且非常个人化的例子,向你展示这有多容易。
00:01:34我有一个私有的 GitHub 仓库,里面包含了我从 NHS 应用中抓取的
00:01:39所有医疗信息。
00:01:40我想通过 Slack 与这些数据通信或获取信息。
00:01:45这样我就能在桌面端、移动端,基本上任何地方使用它。
00:01:49在这两点之间,我希望 Claude 托管智能体完成抓取数据的工作,
00:01:54也就是利用工具获取正确信息,并以我能理解的方式进行转换。
00:02:01就是这样。
00:02:02首先,我可以进入 Claude 控制台,选择新的“托管智能体”选项,
00:02:07然后在这里用自然语言从头开始创建我的智能体。
00:02:11它将通过 curl 命令与 Claude API 通信,并将任何必要的
00:02:16代码托管在 Anthropic 的基础设施上。
00:02:19但我也可以在任何我喜欢的语言中使用托管智能体技能。
00:02:23在这个例子中,我会选择 TypeScript,这个技能将使用 TypeScript 版
00:02:29Claude SDK 为我创建一个智能体。
00:02:31为此,你需要拥有此版本或更高版本的 Claude 代码,因为它内置了
00:02:36托管智能体技能。
00:02:38在我的案例中,我的版本更高,可以使用斜杠
00:02:42Claude API 命令加上 managed agents onboarding 来触发该技能。
00:02:46按下回车后,它问我是否知道想要构建什么样的智能体,
00:02:50我并不确定,但让我们看看它会怎么做。
00:02:52它告诉我它将引导我完成这三个步骤:
00:02:55工具、技能、文件和仓库,然后是环境和身份。
00:02:59令人惊讶的是,它确实使用了大量的上下文,所以可能会有一些压缩,
00:03:04但我们拭目以待。
00:03:05总之,我会给它一个指令,创建一个医疗智能体,它能读取私有 GitHub 仓库中的
00:03:10Markdown 文件,像医生一样理解信息,并让我能通过
00:03:15Slack 与之交流。
00:03:17然后它建议我使用预构建的工具集,比如 read、glob、grep,而不要使用
00:03:22write、edit、bash,因为医生没理由修改仓库,这很合理。
00:03:27它还询问了仓库的 URL,所以我告诉它采用其推荐的工具
00:03:31和权限,并给了它仓库链接。
00:03:35之后,它建议了 B 轮和 C 轮应该是什么,由于这是一个非常
00:03:39基础的智能体,这些都是不言自明的。
00:03:41接着它为我的智能体创建了一个系统提示词,并建议了
00:03:45它应该使用的模型。
00:03:46我打算让它使用 Sonnet,因为我不想在 Opus 上花太多钱。
00:03:49我稍后会解释原因,但除此之外,这看起来不错,我会提供这些
00:03:53凭据以及我需要的语言。
00:03:56现在它已经为我创建了两个 TypeScript 文件。
00:03:59第一个是 setup(设置),用于在 Anthropic 基础设施内部
00:04:04设置环境、智能体和任何必要的技能。
00:04:07第二个是 runtime(运行时),它实际上将负责与
00:04:12Anthropic 服务器通信,并将信息传递给 Slack。
00:04:15现在我将完成所有设置,并在完成后向你们展示效果。
00:04:19运行这个设置文件后,它给了我一个环境 ID,就在这里。
00:04:24它还给了我智能体 ID,也在这里。
00:04:27正如我之前提到的,这些都是在 Anthropic 的基础设施上创建的。
00:04:32所以在 Claude 控制台中,我可以在这里看到我的智能体,以及我刚刚
00:04:36创建的环境。
00:04:37我还创建了我的 Slack 应用,并将所有信息放入了我的 .env 文件中,
00:04:42供这个 apps.ts 文件使用,这意味着如果我运行该文件,它应该会运行我的 Slack 机器人。
00:04:48我可以问它:你正在使用什么模型?
00:04:50过了一会儿,它回复说:我是 Anthropic 制作的 Claude。
00:04:54有什么医疗方面的问题我可以帮您吗?
00:04:56这非常酷。
00:04:57但更酷的是,我可以在 Claude 控制台看到这个会话。
00:05:01是的,我已经测试过几次了,在这里我们可以看到发生的更多细节。
00:05:04如果我把它关掉让窗口变大点,你可以看到用户提出的问题。
00:05:09然后它使用了 Slack 消息工具,接着智能体做出了响应。
00:05:12刚才忘了提到这个的定价是如何运作的。
00:05:15如果我们查看文档,可以看到托管智能体使用的所有 Token
00:05:20都是按照 Claude API 的定价模型计费的,就在这里。
00:05:25所以遗憾的是,你的 Pro、Max 或 Team 订阅对托管智能体没用,此外
00:05:30除了支付 Token 费用外,你还必须为会话付费,即每会话小时
00:05:358 美分。
00:05:36而且只有在会话运行时才会计费。
00:05:38所以如果我回到 Claude 控制台,点击这些空闲会话,
00:05:42我是不会被扣费的。
00:05:43好,让我们用这个机器人做点更有趣的事。
00:05:46我会问它:根据你对我的医疗了解,我可以
00:05:50吃鱿鱼圈吗?
00:05:51现在它已经开始运行 bash 工具从仓库获取信息。
00:05:56它进行了两次文件读取,几秒钟后,它给我发了一条 Slack 消息,告诉
00:06:01我对鱿鱼圈要小心,因为我对虾过敏,这确实是真的。
00:06:06我想说它给的信息有点太多了,谈到了从舌头痒到喉咙肿胀
00:06:11等等。
00:06:12但说实话,它的效果真的很好。
00:06:13事实上,我对智能体进行了一些微调。
00:06:15如果我们在 Claude 控制台点击这里,可以看到有三个版本,表示
00:06:19这个智能体已经被修改了三次。
00:06:21我更改了系统提示词,让它听起来更人性化一些,并将模型
00:06:26从 Opus 改成了 Sonnet。
00:06:27但在 UI 界面中,我可以更改智能体的系统提示词,更改模型
00:06:32以及它有权访问的工具,这对测试非常有用。
00:06:35差不多就是这样了。
00:06:36除了我在与 Claude 反复沟通中弄清楚的一些细微代码调整外,
00:06:41构建一个智能体就是这么简单。
00:06:44不需要学习 Claude 智能体 SDK 是如何运作的。
00:06:47你只需通过技能与 Claude 交流,就能创建属于你自己的智能体。
00:06:51但这一切在底层是如何运作的呢?
00:06:54Anthropic 写了一篇非常详细的文章介绍其工作原理,我会在
00:06:58描述栏中放一个链接。
00:07:00但我认为整个架构由三个核心组件组成。
00:07:05即会话(Session)、马甲(Harness)和编排(Orchestration),这并不是说沙箱和工具不
00:07:09重要,但我认为这三个非常独特。
00:07:12马甲也被称为系统的“手”,是使用 Claude 模型的地方。
00:07:17它也被称为无状态路由器,因为它负责将工具调用、资源和 MCP 路由到
00:07:23相关位置,或者在沙箱环境中运行代码并编辑文件。
00:07:28稍后我会谈到将工具调用与实际马甲
00:07:32本身分离的好处。
00:07:33这里的会话就像系统的“记忆”,包含马甲的
00:07:37只增日志。
00:07:38你可能认为马甲就是 Claude 代码,但它实际上是专门为
00:07:43托管智能体定制的马甲。
00:07:44稍后我也会解释原因。
00:07:47最后,编排器决定了马甲应该处于什么模式。
00:07:51例如构建、计划等等。
00:07:54而且重要的是,如果当前的马甲失败了,它会创建一个新的马甲。
00:07:58想象一下,你有一个马甲在这里失效或宕机了。
00:08:02编排器可以创建一个新的马甲。
00:08:04由于会话日志与马甲本身是分离的,新马甲可以读取
00:08:09日志来了解之前发生了什么,以及具体从哪里继续。
00:08:13事实上,整个系统的设计就是为了扩展。
00:08:15所以你可以拥有任意数量的模型和环境,该架构
00:08:20都能够处理。
00:08:21这种架构的另一个好处是安全方面。
00:08:25如果我回到 Claude 控制台并点击凭据库,你可以看到
00:08:30凭据存储在一个安全的位置。
00:08:32如果我在本地运行智能体,那可能是 .env 文件或我自定的
00:08:36某种方案。
00:08:37但如果我使用 Claude 控制台或 UI,那么所有的凭据都存储
00:08:41在这里。
00:08:42这样做的好处是这些凭据是在运行时调用的。
00:08:45所以如果你有一个特定于 MCP 的 API 密钥或工具密钥,马甲或模型
00:08:50对此一无所知,也无法访问它。
00:08:54例如,如果我需要调用天气 MCP 工具并且拥有该 API 密钥,马甲
00:09:00会调用该工具,而 API 密钥将存在于工具调用本身或 MCP 中。
00:09:05它将在运行时被使用。
00:09:07同样,如果沙箱需要使用密钥,那也会存储在库中。
00:09:12它也会在运行时被使用,模型不会知道它。
00:09:15事实上,它甚至不知道自己的 Anthropic API 密钥,因为那也是
00:09:20在运行时使用的。
00:09:21我强烈建议阅读这篇文章的其余部分,以详细了解整个系统
00:09:25是如何搭建的,它确实非常独特。
00:09:28老实说,我非常享受创建 Claude 托管智能体的过程。
00:09:31虽然有人认为这会像 OpenAI 的
00:09:36智能体一样走向消亡。
00:09:37如果 OpenAI 的智能体还没凉,请在评论区告诉我,因为我没怎么
00:09:39听到关于它们的消息。
00:09:40但我认为这个会存在很长时间,纯粹是因为创建智能体太容易了。
00:09:45你不需要学习 SDK,如果你不想的话,也不需要使用
00:09:46终端来创建一个,而且你几乎可以在 UI 内部完成
00:09:51所有的 MCP 服务器和工具的对接,
00:09:56这对于不想写任何代码的人来说非常友好。
00:10:01但我必须说一件有点令人失望的事情,那就是你必须使用
00:10:06API Token 或通过 API 计费来付费,因为作为 Claude Pro 订阅者,
00:10:12我非常希望能在托管智能体上使用我的额度,也就是 Pro 范围内的额度,
00:10:17这样我就不用为两样不同的东西付钱了。
00:10:20但公平地说,如果你使用 Sonnet 或 Haiku 这样较便宜的模型,它并不算贵得离谱。
00:10:26尽管它是经过筛选的,正如你所见,它让你能够访问 Notion、
00:10:31Slack MCP 服务器等等,但如果你想创建一些超出这些范围的
00:10:36东西,那么你就得自己写代码,而 OpenClaw 在这方面
00:10:40非常出色。
00:10:41OpenClaw 非常开放,名字里就有体现,它有很多频道,从 Telegram 到
00:10:46Discord 再到 WhatsApp,而如果你想用托管智能体实现同样的功能,
00:10:51你可能需要自己编写解决方案,或者让 Claude 为你编写一个。

Key Takeaway

Anthropic 托管智能体通过将会话日志与无状态路由器分离的云端架构,让开发者能以每小时 0.08 美元的固定成本加上 API 消耗,在无代码环境下部署安全、可扩展且具备记忆功能的生产级 AI 助手。

Highlights

Anthropic 托管智能体使用户能够通过自然语言创建自定义智能体,无需编写任何代码即可在 Anthropic 的云基础设施上运行。

托管智能体的使用成本由两部分组成:每会话小时 0.08 美元的固定费用加上 Claude API 标准的 Token 消耗费用。

系统架构由会话(Session)、马甲(Harness)和编排器(Orchestration)三个核心组件组成,实现了计算与状态的分离。

安全性通过运行时凭据调用实现,模型和马甲在运行过程中无法直接访问存储在安全库中的 API 密钥或敏感数据。

用户可以通过 Claude SDK(需升级至特定版本)使用 TypeScript 编写 setup 和 runtime 文件,从而在 Slack 等第三方平台上部署智能体。

托管智能体支持预构建工具集,如读取 GitHub 私有仓库的 Markdown 文件,并能根据过敏史等个人数据提供定制化的医疗建议。

Timeline

托管智能体与第三方工具的区别

  • 托管智能体是继智能体 SDK 之后的进化版本,支持在 Anthropic 官方基础设施上运行。
  • OpenClaw 等第三方工具类似于 Linux,需要用户自行处理硬件选择、模型配置和安全维护。
  • 托管智能体类似于苹果的封闭生态,由官方负责所有底层安全和基础设施,用户仅需提供自然语言指令。

这一部分对比了手动构建智能体与使用托管服务的差异。托管智能体通过减少基础设施的复杂性,使创建能够回答客户咨询、进行日常研究并集成到 Slack 的工具变得更加简单。这种演进旨在提供一个生产就绪且易于扩展的环境。

通过 TypeScript 和自然语言构建医疗智能体

  • 在 Claude 控制台或通过 Claude SDK 的 TypeScript 技能可以触发智能体的入职流程。
  • 构建过程分为工具、技能、文件仓库、环境和身份等五个核心配置步骤。
  • 系统会自动生成 setup 和 runtime 两个 TypeScript 文件,分别用于环境初始化和与 Anthropic 服务器的实时通信。

实例演示了如何创建一个读取私有 GitHub 仓库医疗数据的智能体。用户只需指定仓库 URL 并选择 read、glob 和 grep 等权限工具,Claude 就能生成处理逻辑。该案例成功实现了通过 Slack 询问医疗建议,智能体能准确调取用户文件并以类似医生的口吻进行回复。

定价模式与会话管理

  • 托管智能体不包含在 Claude Pro 或 Team 订阅中,必须通过 API 计费系统独立付费。
  • 计费标准为活跃会话每小时 0.08 美元,空闲会话不产生费用。
  • 控制台 UI 支持实时修改系统提示词、更换模型(如从 Opus 切换为更经济的 Sonnet)以及管理工具访问权限。

定价机制强调了按需付费的特点,用户需要为实际运行的会话时间买单。在测试案例中,智能体能够通过调用 bash 工具发现用户对虾过敏,并据此警告用户不要食用鱿鱼圈。这种即时的工具调用和数据读取展示了托管环境在实际生产中的可靠性。

会话、马甲与编排器的底层架构

  • 马甲作为系统的“手”,负责将工具调用和资源请求路由到相关位置,而不保存任何状态。
  • 会话作为系统的“记忆”,通过只增日志记录所有操作,使新马甲能在旧马甲失效时接管进度。
  • 编排器负责管理马甲的不同工作模式,并确保在发生硬件或软件故障时实现无缝切换。

底层架构的设计核心是解耦。这种将会话日志与执行环境(马甲)分离的方式,不仅增强了系统的容错能力,还允许系统根据需求横向扩展任意数量的模型和环境。当一个执行单元崩溃时,新生成的单元可以通过读取独立的会话日志快速恢复上下文。

运行时凭据保护与安全优势

  • 凭据库在运行时动态注入 API 密钥,模型本身在任何时候都无法直接读取密钥内容。
  • API 密钥仅存在于工具调用或 MCP 本身中,确保了代码执行环境与敏感信息的隔离。
  • 对于需要高度定制化或集成 Telegram、WhatsApp 等非官方支持平台的场景,开源工具 OpenClaw 仍具备优势。

安全架构通过凭据隔离防止了密钥泄露,即便智能体代码被恶意篡改,敏感数据依然存储在安全的中央库中。最后总结指出,虽然托管智能体对不写代码的用户非常友好,但对于追求极致灵活性和广泛第三方集成的开发者,开源方案依然不可替代。

Community Posts

View all posts