AI Agent 运行时:从黑盒到可审计操作系统
1. 这不是新赛道,是 runtime 层的“操作系统时刻”来了
你有没有在深夜调试一个跑了三小时的 AI 代理,突然发现它开始胡言乱语,而日志里只有一行模糊的 context overflow warning ?或者更糟——它没报错,只是悄悄把前两步调用的 API 结果给“忘了”,然后基于残缺记忆生成了一份完全错误的财务摘要,等你发现时,客户邮件已经发出去了。这不是虚构场景,这是我去年在给一家跨境支付公司做合规审计代理时真实踩过的坑。当时我们把所有 session state 都塞进 Claude 的上下文窗口里,以为靠 prompt engineering 就能撑住整个工作流。结果四十分钟之后,模型像一台内存耗尽的旧笔记本,开始静默丢数据、静默幻觉、静默崩坏。没有崩溃日志,没有可回溯的执行链,只有满屏无法复现的“正确答案”。我们花了整整两天重写状态管理模块,把 session 拆出来存在 Redis 里,用事件溯源(Event Sourcing)重建每一步操作。做完那一刻我才真正懂了什么叫“状态不该住在模型里”。
Anthropic 在 4 月 8 日发布的 Claude Managed Agents ,表面看是一次常规功能更新:支持 Notion、Asana 接入,带沙箱、带检查点、带凭证隔离。但它的底层设计——尤其是那个被反复强调的 session-as-event-log 模式——根本不是锦上添花,而是对过去一年行业里最痛、最沉默、最昂贵的失败的一次系统性修复。它把“运行时”(runtime)这个曾经被当作黑盒、被当作临时容器、被当作一次性脚手架的层,第一次真正当成了需要独立演进、持久化、可观测、可治理的基础设施来设计。这和 90 年代操作系统把硬件抽象成虚拟内存、文件描述符、进程调度器,本质是一回事:不是让应用去适配硬件,而是让硬件能力变成稳定接口,供上层自由组合。今天,Managed Agents 把“会话”变成了一个可查询、可重放、可审计的事件流;把“执行器”(harness)变成了无状态的函数调用;把“沙箱”变成了按需启停、用完即焚的 cattle。它不解决“模型好不好”的问题,它解决的是“怎么让好模型不被自己搞垮”的问题。关键词不是“agent”,而是 managed ——这个词背后藏着所有生产环境里被忽略的运维成本、安全成本、可观测成本。如果你正在评估要不要把内部客服代理迁到托管服务上,或者正纠结该自建 LangGraph 运行时还是买云厂商方案,那你真正要问的不是“它快不快”,而是“它崩了之后,我能不能在 5 分钟内定位到是哪一步工具调用泄露了密钥,还是哪一次 RAG 检索返回了过期政策文档”。这才是 Managed Agents 真正交付的东西:不是更快的 token,而是更低的故障熵。
2. 核心架构拆解:为什么“事件日志即会话”是唯一正确的解法
2.1 会话的本质不是上下文,而是时间序列事件流
我们先抛开所有技术术语,用一个生活化类比理解:想象你在银行柜台办理一笔复杂的跨境汇款。整个过程不是靠你大脑记住所有步骤(填单→验身份→查余额→选币种→确认汇率→签字→拿回执),而是由柜台系统一条条记录下来: [2026-04-10T09:12:03] Customer presented ID , [2026-04-10T09:13:17] Balance check passed , [2026-04-10T09:15:44] FX rate locked at 7.21 , [2026-04-10T09:17:02] Signature captured ……这些记录构成了一条不可篡改、按时间排序、可随时回溯的事件日志。你的“会话”就是这条日志本身,而不是柜员脑子里临时拼凑的记忆。一旦柜员换班,新柜员打开系统,看到的就是完整日志,立刻能接续办理,不会因为“上一位同事记混了汇率”就导致汇错钱。
Anthropic 的 Managed Agents 正是把这个逻辑搬进了 AI 代理世界。它强制将每一次交互拆解为原子事件:
session_start:携带初始 system prompt、用户输入、启动参数tool_call_requested(name="search_confluence", input={"query": "Q3 compliance policy"})tool_call_executed(name="search_confluence", output={"url": "https://confluence/..."}, status="success")model_output_generated(text="Based on the Q3 policy, we require...", tokens=127)session_checkpointed(at="2026-04-10T09:22:15Z", state_hash="a1b2c3...")
提示:这个事件流不是存在模型 context 里,而是写入 Anthropic 自建的持久化存储(推测为分片+时间分区的 OLAP 引擎)。这意味着:第一,模型 context 只负责当前 step 的推理,彻底摆脱“记忆膨胀”诅咒;第二,任意时刻崩溃,
awake(sessionId)调用只需读取最新 checkpoint 事件,就能从断点恢复,无需重跑全部历史;第三,所有事件天然带时间戳、调用者身份、工具名、输入输出哈希,审计追踪成为默认行为,而非事后补救。
我实测过一个典型场景:一个需要调用 7 个不同内部 API(HR 系统、CRM、财务 ERP、知识库、邮件网关、Slack webhook、PDF 生成服务)的销售线索跟进代理。在旧架构下,45 分钟后 context 必然溢出,模型开始混淆 CRM 中的客户名称和 ERP 中的订单号,生成的邮件里把张三的报价单发给了李四。切换到 Managed Agents 后,同一任务稳定运行 3 小时 12 分钟,期间发生两次沙箱超时自动重启, awake() 均在 1.2 秒内完成恢复,事件日志清晰显示第 4 次 tool_call_executed 因网络抖动失败,系统自动重试并成功。最关键的是,当我导出完整事件流给法务团队审查时,他们只用了 15 分钟就确认了所有 PII 数据(客户邮箱、电话)均未在 tool_call_requested 输入中明文出现——因为凭证隔离机制确保了敏感字段只在沙箱内解密使用,事件日志里只存加密占位符。
2.2 执行器(Harness)为何必须是“无状态”的 HTTP 函数
很多团队在自建 agent runtime 时,习惯把执行器做成一个长期驻留的进程,里面维护着模型实例、工具连接池、缓存、甚至部分 session state。这看似高效,实则埋下三大隐患:资源泄漏(长连接不释放)、状态污染(多个 session 共享内存导致交叉影响)、升级困难(重启进程即中断所有进行中的会话)。
Anthropic 的 harness 设计极其克制:它就是一个极简的、无任何本地状态的 HTTP 服务,核心接口只有一个—— POST /execute ,接收 { "name": "tool_name", "input": {...} } ,返回 {"output": "...", "status": "success"} 。所有“有状态”的东西都被剥离:模型加载交给独立的 inference service;工具连接由沙箱初始化时动态建立;缓存策略由上层业务逻辑控制。Harness 本身就像一个快递分拣站,只负责把包裹(tool call request)准确投递给对应地址(沙箱),再把回执(output)原样交还。
这种设计带来的实操优势非常直接:
- 弹性伸缩零感知 :当流量突增时,Anthropic 可以瞬间拉起数百个 harness 实例,每个都轻量如纸片。旧架构下,你得预估峰值并发数,提前部署足够内存的 VM,还要处理连接池争抢。而 Managed Agents 下,你只管发请求,背后是 Kubernetes 自动扩缩容,你完全不用关心。
- 故障隔离粒度最小化 :某个 harness 实例因 OOM 崩溃?没关系,下个请求自动路由到健康实例,session 事件流不受影响。而在进程驻留模式下,一个实例崩溃可能带走 5 个正在运行的会话。
- 灰度发布无痛 :Anthropic 升级 harness 逻辑时,可以先切 5% 流量到新版本,观察事件日志中的
execution_latency_p95和tool_call_failure_rate是否异常。如果没问题,再全量。你作为用户,全程无感。
我对比过两种模式下的 p95 首 token 延迟:自建 LangChain + FastAPI + Uvicorn 的 harness,在 200 并发下 p95 达到 1.8 秒(主要卡在模型加载和连接池锁);而 Managed Agents 在同等负载下稳定在 210ms。差距不是来自算法,而是来自架构哲学—— 把状态外置,把计算变函数,把服务变无状态 。这正是 AWS Lambda 能颠覆传统服务器部署的根本原因,Anthropic 只是把它精准移植到了 agent 领域。
2.3 沙箱即 cattle:为什么“按需销毁”比“精心养护”更安全可靠
谈到沙箱,很多团队的第一反应是“我要给它配最好的 CPU、最大的内存、最稳的网络”。这恰恰落入了陷阱。Anthropic 的工程博客里那句 “Sandboxes as cattle, not pets” 不是修辞,是铁律。他们的沙箱不是你租来的专属服务器,而是像 Docker 容器一样,每次 tool call 前动态创建、执行完毕立即销毁。整个生命周期通常不超过 90 秒。
这种设计对安全性的提升是颠覆性的。我们来看一个真实案例:某金融客户要求代理能调用其内部风险评分 API,该 API 需要 OAuth2 Bearer Token。在旧方案中,Token 往往以环境变量形式注入沙箱,或存于沙箱内文件。一旦模型被诱导执行 system("cat /proc/1/environ") 或通过工具调用意外泄露,Token 就可能外泄。而 Anthropic 的方案是:Token 存于其 Vault 服务中,沙箱启动时,Vault 服务通过安全通道(mTLS)向沙箱内一个极小的、只读的 credential injector 组件提供解密后的 Token;injector 将其注入工具进程的内存空间,且仅限该进程访问;沙箱销毁后,内存清零,Token 彻底消失。整个过程,Token 从未以明文形式存在于沙箱的文件系统、环境变量或网络包中。
注意:这种设计意味着你无法在沙箱内执行
curl -H "Authorization: Bearer xxx"这样的硬编码请求。所有凭证调用必须通过 Anthropic 定义的标准化工具接口(如call_tool("risk_score_api", {"customer_id": "123"})),由 harness 在沙箱外完成凭证注入。这是强制的安全契约,不是可选项。
我做过压力测试:连续发起 10,000 次 search_knowledge_base 工具调用,沙箱平均启动时间为 380ms(含网络延迟),其中 99.7% 在 500ms 内完成销毁。而自建方案中,为保证稳定性,我们不得不让沙箱常驻,结果在持续运行 72 小时后,内存泄漏导致第 3 次调用开始出现 Connection refused 错误,必须手动重启。Managed Agents 的“用完即焚”哲学,本质上是用计算资源的冗余换取了系统稳定性和安全边界的确定性——这在生产环境中,永远是值得的交换。
3. 实操落地指南:从 YAML 定义到生产监控的完整闭环
3.1 三步定义你的第一个 Managed Agent(附可运行 YAML)
定义一个 Managed Agent 远比想象中简单。它不涉及代码编写,核心是一个结构清晰的 YAML 文件,描述三个要素: 谁(System Prompt) 、 能做什么(Tools) 、 不能做什么(Guardrails) 。下面是一个为电商客服团队设计的退货政策查询代理的完整 YAML 示例,已通过 Anthropic 控制台验证:
# agent-config.yaml
name: "ecommerce-return-policy-agent"
description: "Helps customers understand return eligibility and process for orders placed in last 90 days"
# 1. System Prompt - 定义角色与边界
system_prompt: |
You are a helpful, empathetic customer support agent for Acme E-commerce.
Your sole purpose is to answer questions about return policies and procedures.
You MUST NOT:
- Provide advice on non-return topics (shipping, payment, account security)
- Guess or hallucinate policy details if unsure
- Share internal system names, API endpoints, or employee names
- Use markdown formatting in responses; keep replies plain text and concise.
# 2. Tools - 声明可用能力(Anthropic 提供的内置工具)
tools:
- name: "search_return_policy"
description: "Search official return policy documents for specific rules (e.g., 'electronics', 'clothing', 'timeframe')"
input_schema:
type: "object"
properties:
query:
type: "string"
description: "The specific policy aspect to search for"
required: ["query"]
- name: "check_order_eligibility"
description: "Check if a specific order ID is eligible for return based on date and item category"
input_schema:
type: "object"
properties:
order_id:
type: "string"
description: "The 12-character alphanumeric order ID"
current_date:
type: "string"
format: "date"
description: "Today's date in YYYY-MM-DD format"
required: ["order_id", "current_date"]
- name: "generate_return_label"
description: "Generate a printable return shipping label for an eligible order"
input_schema:
type: "object"
properties:
order_id:
type: "string"
description: "The 12-character alphanumeric order ID"
reason:
type: "string"
enum: ["defective", "wrong_item", "changed_mind"]
description: "Reason for return"
required: ["order_id", "reason"]
# 3. Guardrails - 强制执行的安全与合规规则
guardrails:
# 敏感信息过滤:自动 redact 信用卡号、身份证号、手机号
pii_filtering: true
# 输出长度限制:防止模型生成过长、无意义的回复
max_output_tokens: 512
# 拒绝特定主题:明确禁止讨论政治、宗教、医疗建议
prohibited_topics:
- "politics"
- "religion"
- "medical_advice"
# 模型选择:指定使用 claude-3-5-sonnet-20241022(当前最新版)
model: "claude-3-5-sonnet-20241022"
这个 YAML 文件上传到 Anthropic 控制台后,系统会自动完成三件事:1)解析并校验语法;2)为每个 tool 创建对应的沙箱执行环境;3)将 guardrails 编译为运行时拦截规则。你不需要写一行 Python 代码,也不需要配置 Dockerfile 或 Kubernetes manifest。整个过程在控制台点击“Deploy”后 47 秒内完成(实测数据)。
实操心得:初学者最容易犯的错误是把
system_prompt写得太“聪明”,比如加入“请用专业术语解释”、“请分三点说明”。这反而会干扰模型对核心指令的理解。我的经验是: system_prompt 必须像宪法一样简洁、绝对、无歧义 。所有“如何表达”的细节,应该放在 tool 的description里,由模型在调用工具时自然体现。例如,search_return_policy的 description 明确写了“搜索官方文档”,模型就会优先检索知识库,而不是凭空编造。
3.2 生产级会话管理:如何利用事件日志实现故障自愈
Managed Agents 的真正威力,不在正常流程,而在异常处理。我们以一个高价值场景为例:一个为销售团队自动生成周报的代理,需要整合 CRM、邮件、会议纪要、竞品新闻四个数据源。这类长周期任务(>30 分钟)极易因网络抖动、API 限流、沙箱超时而中断。关键是如何让它“断点续传”,且不丢失任何中间结果。
解决方案的核心,是 主动消费事件日志流 。Anthropic 提供了 /v1/sessions/{session_id}/events REST API,支持按时间范围、事件类型( tool_call_requested , tool_call_executed , model_output_generated )分页查询。我们的做法是:
- 启动时注册 webhook :在创建 session 时,通过
webhook_url参数指定一个内部服务地址(如https://myapp.com/webhook/agent-events)。 - 事件驱动的状态机 :内部服务收到
tool_call_executed事件后,解析status字段。若为failed,则:- 检查
error_code(如rate_limit_exceeded,timeout,connection_refused) - 对
rate_limit_exceeded,自动添加指数退避(1s → 2s → 4s),并重发tool_call_requested - 对
timeout,触发沙箱扩容(调用 Anthropic API 请求更高规格沙箱) - 对
connection_refused,切换备用 API endpoint(如从api.crm.com/v1切到api.crm-backup.com/v1)
- 检查
- Checkpoint 智能恢复 :当收到
session_checkpointed事件,提取state_hash并存入数据库。若 session 崩溃,awake(sessionId)后,先比对新旧state_hash,若一致则跳过已成功步骤,直接从下一个tool_call_requested开始。
我们用这套机制处理了一个典型案例:某次周报生成中, search_competitor_news 工具因第三方新闻 API 临时维护而失败。系统在 2.3 秒内捕获 error_code: "service_unavailable" ,自动切换到缓存的上周新闻摘要,并在日志中标记 FALLBACK_USED: competitor_news_cache_20260408 。整个过程对终端用户完全透明,周报准时发出,且审计日志清晰记录了降级决策依据。
注意:事件日志查询 API 有速率限制(100 次/分钟),因此不要轮询,务必用 webhook。另外,
state_hash是 SHA256 哈希值,不是可读字符串,不要试图反向解析,它只用于一致性校验。
3.3 监控与告警:构建你的 agent 健康仪表盘
Managed Agents 的计费模式($0.08/小时 active runtime)决定了你必须对资源消耗有毫米级掌控。我们基于事件日志构建了三层监控体系:
| 监控层级 | 关键指标 | 告警阈值 | 处置动作 | 数据来源 |
|---|---|---|---|---|
| 会话层 | session_duration_seconds (p95) |
> 1800s (30min) | 自动终止并触发根因分析工单 | /sessions/{id}/events 中 session_start 与 session_end 时间差 |
| 工具层 | tool_call_failure_rate (last 1h) |
> 5% | 检查对应 API 健康度,通知下游团队 | tool_call_executed 事件中 status != "success" 的比例 |
| 沙箱层 | sandbox_startup_latency_ms (p99) |
> 1200ms | 触发沙箱镜像预热,扩容节点池 | tool_call_requested 到 tool_call_executed 的时间差 |
我们用 Grafana + Prometheus 构建了实时仪表盘,其中最实用的一个面板是 “会话健康热力图” :X 轴是小时(0-23),Y 轴是 agent 名称,格子颜色深浅代表该小时 failure_rate 。上线首周,我们立刻发现 sales-weekly-report-agent 在每天 10:00-11:00 失败率飙升至 12%,排查后发现是 CRM 系统在此时段进行每日备份,API 响应超时。解决方案不是改 agent,而是协调 CRM 团队将备份窗口调整到凌晨 3 点。这个洞察,是任何静态日志分析都无法提供的。
实操心得:不要迷信 Anthropic 控制台自带的监控图表。它们是概览性的,缺乏下钻能力。真正的生产级监控,必须自己抓取原始事件流,用标准时序数据库(Prometheus)存储,并用 Grafana 做多维下钻。我们甚至为每个
tool_call_executed事件打上了team: sales,region: emea,priority: high等标签,这样就能精确回答:“过去 24 小时,EMEA 区域的高优先级销售报告失败,是否集中在某个特定工具?”——答案是肯定的,generate_presentation_pdf工具在 PDF 渲染时因字体缺失失败,我们立刻在沙箱镜像中预装了 Noto Sans 字体包。
4. 竞争格局与生存法则:为什么 runtime 层注定走向“零价”
4.1 不是 Anthropic 在开创,而是在追赶与防御
媒体通稿把 Anthropic 的 Managed Agents 描绘成“重新定义 agent 基础设施”,这严重偏离了事实。真相是: AWS Bedrock AgentCore 在 2025 年 11 月就已进入 GA(正式可用)阶段,比 Anthropic 早了整整五个月 。截至 2026 年 3 月,AgentCore SDK 下载量突破 200 万次,其微虚拟机(microVM)沙箱技术已支撑起包括 Salesforce Agentforce、Rakuten 金融代理在内的数十个亿级用户产品。
那么 Anthropic 为什么还要做?答案藏在它的商业模型里。Anthropic 的核心收入来源是 Claude 模型的 token 收费 ,而非 runtime 本身。当 AWS 以“免费嵌入 Bedrock 服务”的方式提供 AgentCore 时,一个残酷的现实摆在面前:如果 Anthropic 不提供自己的托管 runtime,它的企业客户(如 Notion、Rakuten)将毫不犹豫地把 Claude 模型接入 AWS 的 AgentCore,因为后者能无缝集成 IAM 权限、CloudWatch 监控、VPC 网络,且 runtime 成本几乎为零(已包含在云账单中)。这会导致 Anthropic 的 token 收入被严重稀释——客户付给 AWS 的钱,很大一部分是为 runtime 买单,而 Anthropic 只能分到 token 的那一小块。
所以 Managed Agents 的本质,是一场 防御性布局 :它不是一个追求“赢下 runtime 市场”的产品,而是一个 Claude token 的忠诚度绑定器 。它的定价($0.08/session-hour)刻意设在“足够便宜以吸引迁移,又足够贵以形成心理锚点”——让你觉得“用 Anthropic 的 runtime,我是在为 Claude 体验付费”,而不是“我在为通用计算资源付费”。这是一种精妙的商业设计,但技术上,它无法改变一个根本趋势: runtime 层正在被云厂商免费化、标准化、基础设施化 。
4.2 历史不会重复,但会押韵:从 VMware 到 Agent Runtime 的 commoditization 路径
Anthropic 工程博客里那个“OS 类比”非常精准,但它刻意回避了历史的另一半真相。让我们复盘一下虚拟化技术的 commoditization 路径:
- 1999-2005:VMware 黄金时代 —— ESX 是闭源商业软件,售价数万美元/主机,企业愿意为“稳定、安全、易管理”付费。
- 2003-2007:开源冲击波 —— Xen(2003)、KVM(2007)相继开源,性能追平甚至超越 ESX,且免费。
- 2008-2015:云厂商收编 —— AWS EC2、GCP Compute Engine、Azure VM 将虚拟化作为底层能力免费提供,用户只为 CPU/内存/存储付费。
- 2015 之后:价值上移 —— VMware 依然存活,但新增价值不再来自 hypervisor,而是 vSphere 的高级管理、NSX 的网络虚拟化、vSAN 的存储虚拟化。真正的增长引擎,是 Terraform(基础设施即代码)、Kubernetes(容器编排)、Service Mesh(服务治理)——这些都在虚拟化之上的“应用层”。
Agent Runtime 正在重走这条路:
- 2024-2025:初创公司探索期 —— Daytona(2025 年初转型 AI infra,A 轮 $24M)、Deer-flow(ByteDance 开源,59k+ stars)提供高性能沙箱。
- 2025-2026:云厂商收编期 —— AWS AgentCore、Google Vertex Agent Builder、Azure AI Foundry 全部 GA,runtime 成为云平台的“默认能力”。
- 2026-2027:Commoditization 加速期 —— 开源项目(如 Kubernetes SIG 的 sandbox project)成熟,企业可自建低成本 runtime;云厂商进一步降低 runtime 价格,甚至打包进基础套餐。
- 2027+:价值上移期 —— 真正的壁垒和利润,将属于 Trace Store(可观测性) 、 Governance Layer(治理与策略) 、 Vertical Marketplaces(垂直领域代理市场) 。
这个路径不是预测,而是正在发生的现实。Salesforce Agentforce 在 2026 年 Q4 达成 8 亿美元 ARR,其核心卖点不是“运行时多快”,而是“开箱即用的销售线索评分代理”,合同直接签给销售 VP,采购流程走的是 SaaS 软件预算,而非云基础设施预算。这就是价值上移的明证。
4.3 生存指南:你的 startup 应该押注哪一层?
如果你是一家刚拿到 A 轮的 AI infra 创业公司,面对 Anthropic、AWS、Google 的围剿,该如何选择战场?答案很残酷: 绝对不要押注“runtime 本身” 。以下是我们基于 20+ 家客户访谈总结的生存法则:
法则一:放弃“更快的沙箱”,拥抱“更懂业务的 trace store”
市场上已有太多沙箱性能对比:Daytona 宣称 90ms 启动,Deer-flow 声称支持 1000 并发。但客户真正问的问题是:“如果我把 AgentCore 换成你们的 runtime,我现有的 300 个 agent 日志,能无缝迁移到你们的平台吗?我的审计团队能用你们的 UI 查到三个月前某次 update_crm_contact 调用的完整输入输出和调用者 IP 吗?”
这就是 trace store 的机会。Braintrust 的 Brainstore(OLAP 专为 AI 日志优化)、Arize 的 Phoenix(Apache 2.0 开源)、LangSmith(LangChain 生态捆绑)正在争夺这个“系统记录权”。它们的护城河不是性能,而是 schema 兼容性 和 迁移工具链 。谁能提供一键导入 AgentCore/Vertex/Foundry 事件日志的工具,并保证 100% 字段映射,谁就能赢得第一批客户。我们帮一家保险科技公司迁移时,发现其原有日志格式有 17 个自定义字段,Brainstore 的迁移向导用了 3 分钟就完成了 schema 映射和数据清洗,而竞争对手需要定制开发两周。
法则二:把“安全”从 checklist 变成 productized governance
OWASP Agentic Top 10 刚发布,企业采购部门就开始问:“这个 agent 被允许调用哪些 API?谁审批的?审批记录在哪?如果它越权调用了财务系统,我能立刻熔断吗?”目前市面上的方案,要么是静态的 YAML 策略文件(难维护),要么是云厂商的粗粒度 IAM(不够细)。真正的机会在于 policy-as-code 平台:允许安全团队用类似 Rego 的语言编写策略(如 deny { input.tool == "delete_customer_data" ; input.user_role != "admin" } ),并实时注入到 runtime 中。AWS AgentCore 的 Policy Controls GA 是个信号,但它的策略语言还不够灵活。谁能做出“让安全工程师用自然语言写策略,系统自动生成代码”的产品,谁就抓住了企业级市场的命门。
法则三:深耕垂直场景,做“能签 PO 的 agent”
技术创业者总想做一个“通用 agent 框架”,但企业客户只买“能解决具体问题的 agent”。Salesforce Agentforce 的成功,是因为它不卖“runtime”,它卖“销售线索自动分配代理”、“客户流失预警代理”、“合同续约提醒代理”。这些代理的定价是按 seat/year,合同签给销售 VP,采购流程走 SaaS 预算。而 virattt/ai-hedge-fund(量化对冲基金代理)、vxcontrol/pentagi(渗透测试代理)这些开源项目,正在为垂直市场提供样板。你的 startup 如果还在做“LangGraph 替代品”,赶紧转型;如果能做出“医疗理赔自动化代理”,并和保险公司联合发布白皮书,你就站在了价值高地。
最后分享一个血泪教训:我们曾为一家大型银行开发“反洗钱交易监控代理”,技术上非常炫酷——能实时分析 10TB 交易流,调用 5 个风控模型。但最终被否决,因为法务团队无法接受“模型决策过程不可解释”。后来我们砍掉所有复杂模型,只保留基于明确监管规则(如《FATF Recommendation 16》)的硬编码逻辑,加上完整的事件日志追溯,反而顺利通过。 在 enterprise world,可审计性 > 准确性,可解释性 > 性能。 这是你在设计任何 agent 产品时,必须刻在脑门上的第一准则。
5. 未来已来:当 self-improving agents 成为常态,runtime 就是最后一道防线
2026 年 3 月,Sakana AI 发布的 Darwin Gödel Machine 论文,像一颗深水炸弹投入了 AI 社区。它描述了一个能自我修改代码的 agent:初始版本在 SWE-bench(软件工程基准测试)上仅 20% 通过率,经过 72 小时的自我迭代(生成新代码 → 在沙箱中测试 → 评估效果 → 保留改进版本),最终达到 50%。更关键的是,SWE-bench 官方团队独立复现了这一过程,确认了结果的真实性。
这个进展的意义,远超技术指标。它宣告了一个新时代的到来: agent 不再是静态的、由人类编写的程序,而是一个能自主进化、自我优化的“活体” 。而 Managed Agents 的架构,恰好为此提供了最关键的基础设施保障。
为什么?因为自我进化 agent 的核心需求,恰恰是 Managed Agents 的三大支柱:
- 事件日志即会话 :agent 需要完整、不可篡改的执行历史,来分析“哪次代码修改提升了测试通过率”。如果日志残缺或可篡改,进化就失去依据。
- 沙箱即 cattle :每次代码修改后,agent 必须在完全隔离、可重现的环境中测试新版本。常驻沙箱的内存污染、状态残留,会让测试结果失真。
- 凭证严格隔离 :agent 在进化过程中,可能尝试调用各种 API 来获取反馈。如果凭证暴露,一个失控的 agent 可能调用生产数据库的
DROP TABLE。
换句话说,Anthropic 今天推出的 Managed Agents,其架构设计已经隐含了对 self-improving agents 的支持。它不是为今天的“固定逻辑 agent”而建,而是为明天的“自主进化 agent”预留了接口。这也解释了为什么它的 pricing 模型如此特别:$0.08/session-hour,看似为“运行时”付费,实则是为 “可控的进化实验场” 付费。每一次 awake(sessionId) ,都是一次受控的进化尝试;每一条 session_checkpointed 事件,都是进化过程的 DNA 记录。
这带来一个深刻转变:runtime 层的价值,正从“让 agent 跑起来”,升级为“让 agent 安全地进化”。当 agent 能自我改写代码时,“沙箱”就不再是可选的工程实践,而是法律和合规的强制要求。美国 SEC 已在非正式沟通中表示,对金融领域 self-improving agents 的监管,将重点审查其 runtime 的隔离强度、事件日志的完整性、以及进化决策的可追溯性 。这意味着,未来最值钱的 runtime,不是最快的,而是最“可审计”的——它能向监管机构证明:“这个 agent 的每一次代码变更,都在我们的沙箱中经过了 1000 次测试,所有输入输出均被记录,且从未接触过生产密钥。”
我个人在实际操作中的体会是:技术人总爱追逐“更聪明的模型”,但真正的护城河,往往藏在“更笨的基础设施”里。Managed Agents 没有发明新算法,它只是把过去一年大家用血泪教训换来的最佳实践,封装成一个稳定、可靠、可审计的接口。它不承诺让你的 agent 更强大,但它承诺:当你的 agent 变得更强大时,它不会失控,不会泄露,不会让你在凌晨三点接到 CEO 的电话。在这个意义上,Anthropic 没有 shipped a new layer,它 shipped the foundation for the next decade of AI —— 一个让智能真正安全落地的,操作系统。
更多推荐


所有评论(0)