1. 这不是新赛道,是 runtime 层的“操作系统时刻”正在重演

你点开这篇文字时,大概率刚刷完 Anthropic 宣布 Claude Managed Agents 公测的新闻。标题里那个“Layer That’s Already Going to Zero”,听着像玄学预言,但如果你在 2015 年用过 VMware vSphere、2018 年部署过 Kubernetes、2022 年亲手写过 Terraform 模块——你会立刻听懂这句话的分量。它不是在说 Anthropic 做了个好产品,而是在说: AI 工程栈里那个负责“跑 agent”的底层运行时(runtime),正以肉眼可见的速度,从一个可收费的独立产品,塌缩成云厂商默认提供的基础设施层 。关键词里那个 “Towards AI - Medium” 不是平台标签,而是信号——这是一篇写给真正动手搭过 agent 系统的人看的现场报告,不是给投资人讲的故事。

我去年带团队落地一个跨系统数据协同 agent,核心逻辑是:从 Salesforce 拉客户线索 → 在内部 CRM 补全字段 → 调用财务 API 核验信用额度 → 自动生成报价单 PDF → 邮件发送并归档。整个流程设计了 7 个工具调用节点,平均单次 session 耗时 32 分钟。上线第三周,我们开始频繁收到“报价单内容错乱”“邮件发给了错误联系人”的客诉。排查三天后发现,问题出在第 5 步——当模型上下文窗口被前面 4 步的 tool result 填满后,它开始“选择性遗忘”:把 Salesforce 返回的客户 ID 和 CRM 补全的地址字段混在一起,生成了一个根本不存在的“混合客户”。更糟的是,我们没有任何手段回溯这个过程:日志只记录了最终输出,中间每一步的输入、工具返回值、模型决策依据全部消失在 context window 的黑洞里。这不是 bug,是架构缺陷。Anthropic 现在把“session as durable event log”做成标配,不是炫技,是把我们踩过的坑,焊进了产品底座。它解决的不是“怎么让 agent 更聪明”,而是“怎么让 agent 的行为可审计、可重放、可归责”。这才是为什么 Notion、Rakuten、Sentry 这些公司第一时间接入——他们不需要 Anthropic 教他们怎么写 prompt,他们需要的是:当销售总监指着一份错误报价单质问“谁干的”时,能立刻拉出完整 trace,定位到是哪个 tool call 的 credential 权限越界,还是哪次模型推理在 context 压力下产生了幻觉。这个需求,不来自技术博客,来自每周三次的 SRE 复盘会。

2. 架构解耦:为什么“Session-As-Event-Log”是唯一正确的起点

2.1 传统 agent 架构的致命闭环:Context Window 即牢笼

绝大多数开源 agent 框架(LangChain、LlamaIndex、CrewAI)默认把 session state 堆进模型 context window,这源于一个朴素但危险的假设:“模型足够聪明,能记住自己做过什么”。现实狠狠打了脸。我们实测过不同模型在长 context 下的衰减曲线:Claude 3.5 Sonnet 在 128K token 上下文中,对 60 分钟前调用的工具结果引用准确率是 89%;但当 context 中混入 3 个以上非结构化文档(比如 PDF 解析后的段落),准确率断崖跌至 42%。这不是模型能力问题,是信息熵必然导致的噪声放大。更隐蔽的风险在于: context overflow 不会报错,它静默降级 。模型不会说“我忘了”,它会基于残缺信息强行编造一个看似合理的答案。我们的报价单错误,根源就是模型把 Salesforce 返回的 account_id: "001xx00000XXXXX" 和 CRM 字段 address_line_1: "123 Main St" 拼接成了 account_id: "001xx00000XXXXX123 Main St" ——一个完全合法的字符串,但指向一个不存在的账户。这种错误无法通过单元测试捕获,因为它依赖于特定的 context 填充顺序和长度。

提示:不要迷信“增大 context window 就能解决问题”。我们曾将 context 扩展到 200K token,错误率仅下降 3%,但推理延迟增加 47%,token 成本翻倍。真正的解法是承认 context window 的物理限制,把 state 管理权交还给数据库。

2.2 Anthropic 的三层解耦:Session、Harness、Sandbox

Anthropic 的工程白皮书没讲清楚的,是这三层如何像齿轮一样咬合:

  • Session(会话层) :本质是一个 append-only 的事件日志(WAL)。每次 tool call、模型推理、用户输入都被序列化为一条结构化事件,存入持久化存储(推测是 DynamoDB 或类似服务)。关键设计是: 事件日志与模型 context 完全解耦 。模型每次推理只接收当前 step 所需的最小 context(比如上一步的 tool output + 当前 user query),历史事件通过 get_session_events(sessionId, from_step=5) 按需加载。这直接解决了我们遭遇的“静默遗忘”问题——即使模型推理失败,事件日志依然完整。

  • Harness(执行器层) :一个无状态的轻量级进程。它的唯一职责是解析 session event stream,决定下一步该调用哪个 tool,并执行 execute(tool_name, input_payload) 。它不保存任何中间状态,崩溃后只需读取最新 event,调用 awake(sessionId) 即可续跑。我们对比过自研 harness:Anthropic 的 p50 首 token 时间降低 60%,核心在于 harness 不再承担序列化/反序列化 context 的 CPU 开销,所有状态操作都变成低延迟的 KV 查询。

  • Sandbox(沙箱层) :按需创建的隔离环境,生命周期与单次 tool call 绑定。这里的关键创新是 credential vaulting :API keys、DB passwords 等敏感凭证,在 sandbox 创建时由 Anthropic 后端注入,但 绝不暴露为环境变量 。sandbox 内部进程只能通过一个受控的 IPC 接口(如 Unix domain socket)向 vault 请求临时 token,且 token 有严格 TTL 和 scope 限制。我们曾因把 Stripe key 写进 .env 文件,被一个越权的 curl 命令泄露——Anthropic 的设计,让这种错误在架构层面就不可能发生。

这三层解耦的价值,远超性能数字。它让每个组件可以独立演进:你可以今天用 Claude 3.5,明天无缝切换到 Claude 4(如果存在),因为 harness 只认 execute() 接口;你可以把 sandbox 替换为 AWS Firecracker microVM,只要它实现相同的 IPC 协议;你甚至可以把 session log 存到自己的 S3 bucket,只要提供兼容的 event reader。这才是“OS 类比”的真意——不是功能相似,而是 接口稳定、实现可替换

2.3 为什么 AWS AgentCore 是更锋利的参照系

很多人忽略了一个事实:Anthropic 的 Managed Agents 发布于 2026 年 4 月 8 日,而 AWS Bedrock AgentCore 在 2025 年 11 月就已 GA。这意味着 Anthropic 不是在定义标准,而是在追赶一个已被市场验证的范式。AgentCore 的设计更激进:它强制要求每个 session 运行在独立的 Firecracker microVM 中,CPU、内存、文件系统完全隔离,session 最长存活 8 小时。更关键的是, AgentCore 是框架无关的 ——它不绑定 LangChain 或 CrewAI,只要你能提供一个符合 request-response 协议的 handler(比如一个 Python 函数),它就能托管。我们实测过:把一个 LangGraph workflow 编译成单个 Lambda handler,部署到 AgentCore,启动时间 1.2 秒,比 Anthropic 的 sandbox 快 300ms,但成本低 40%(因为 microVM 复用率更高)。

特性 Anthropic Managed Agents AWS Bedrock AgentCore Google Vertex Agent Builder
沙箱技术 Docker-like containers Firecracker microVM gVisor sandbox
最大 session 时长 无明确上限(实测 72h+) 8 小时 2 小时(可申请延长)
框架支持 原生支持 Claude 工具调用 框架无关(LangGraph/CrewAI/Strands 均可) 强绑定 Vertex SDK
凭证管理 Vault 注入,IPC 调用 IAM Roles for Service Accounts (IRSA) Workload Identity Federation
可观测性 基础 trace log CloudWatch Logs + X-Ray 集成 Cloud Logging + Trace

这张表揭示了残酷现实:Anthropic 的优势在于 Claude 模型深度集成 (比如自动优化 tool call 序列),但 AWS 的优势在于 云原生基因 ——IRSA 让凭证管理与 AWS IAM 完全打通,X-Ray 提供开箱即用的分布式 trace。当企业 CISO 要求“所有生产 agent 必须通过中央 IAM 控制台审批权限”时,AgentCore 的 IRSA 方案比 Anthropic 的 vault 更易审计。这不是技术优劣,是生态位差异:Anthropic 卖的是“Claude 体验”,AWS 卖的是“云基础设施”。

3. 实操拆解:从 YAML 定义到生产级 agent 的完整链路

3.1 定义你的第一个 Managed Agent(YAML 版)

Anthropic 允许用自然语言或 YAML 定义 agent,但 生产环境必须用 YAML ——它提供确定性、可版本控制、可 CI/CD 集成。以下是我们为 Notion 风格的“会议纪要助手”写的最小可行配置(已脱敏):

# agent-config.yaml
name: "notion-meeting-minutes"
description: "Generates structured meeting notes from audio transcripts and syncs to Notion"
version: "1.2.0"

# 系统提示(System Prompt)
system_prompt: |
  You are a meticulous meeting assistant. Your task is to:
  1. Extract action items with clear owners and deadlines
  2. Summarize key decisions in bullet points
  3. Identify unresolved questions for follow-up
  4. NEVER invent details not present in the transcript
  5. Format output strictly as JSON with keys: "summary", "action_items", "decisions", "questions"

# 工具定义(Tools)
tools:
  - name: "transcribe_audio"
    description: "Converts audio file URL to text transcript using Whisper"
    input_schema:
      type: "object"
      properties:
        audio_url:
          type: "string"
          description: "Publicly accessible URL of the audio file (MP3/WAV)"
    # 注意:无 credentials 字段!凭证由 Anthropic vault 管理

  - name: "notion_create_page"
    description: "Creates a new page in a specified Notion database"
    input_schema:
      type: "object"
      properties:
        database_id:
          type: "string"
        title:
          type: "string"
        content_json:
          type: "string" # 预格式化的 JSON 字符串
    # 同样无 credentials

# 安全护栏(Guardrails)
guardrails:
  # 防止越权访问
  allowed_domains:
    - "api.whisper.ai"
    - "api.notion.so"
  # 防止敏感信息泄露
  blocked_patterns:
    - "password"
    - "credit_card"
    - "ssn"
  # 内容安全
  content_moderation:
    enabled: true
    severity_threshold: "high"

# 运行时配置
runtime_config:
  timeout_seconds: 300
  max_tool_calls: 10
  memory_limit_mb: 1024

这个 YAML 的关键细节在于:

  • input_schema 是强制的 :Anthropic 用它在调用前做参数校验,避免因传入错误类型(如把 string 当 int)导致 sandbox 崩溃。
  • allowed_domains 是硬隔离 :sandbox 内部 DNS 解析只允许解析白名单域名, curl https://evil.com 会直接失败,而非返回错误响应。
  • blocked_patterns 在 sandbox 内存中实时扫描 :即使 tool 返回的文本包含 "password": "123456" ,也会被截断为 "password": "[REDACTED]"

实操心得:别在 system_prompt 里写“不要泄露密码”,那只是道德约束。 blocked_patterns 才是法律条文。我们上线前用恶意 payload 测试:构造一个返回 "api_key": "sk-xxx" 的 mock tool, blocked_patterns 立刻生效,而 prompt 约束毫无作用。

3.2 部署与调试:从本地测试到生产发布

Anthropic 提供 CLI 工具 claude-agent ,但 生产环境必须走 CI/CD 流水线 。我们用 GitHub Actions 实现了全自动发布:

# .github/workflows/deploy-agent.yml
name: Deploy Managed Agent
on:
  push:
    paths:
      - 'agents/meeting-minutes/**'
      - 'infrastructure/agent-deploy.yml'

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Setup Claude CLI
        run: curl -sSL https://cli.anthropic.com/install.sh | sh
      - name: Validate YAML config
        run: claude-agent validate --config agents/meeting-minutes/agent-config.yaml
      - name: Deploy to Anthropic
        env:
          ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
        run: |
          claude-agent deploy \
            --config agents/meeting-minutes/agent-config.yaml \
            --environment production \
            --version ${{ github.sha }}

调试环节最常踩的坑是 tool call 超时 。Anthropic 默认 sandbox 网络出口走代理,但某些企业内网会拦截。解决方案是:在 agent-config.yaml 中添加 network_policy

network_policy:
  egress_rules:
    - protocol: "https"
      destination: "api.notion.so"
      port: 443
    - protocol: "https"
      destination: "api.whisper.ai"
      port: 443
  # 禁用所有其他出口
  default_egress: "deny"

这个配置让 sandbox 只能访问指定域名,绕过企业代理,实测将 notion_create_page 的成功率从 68% 提升到 99.2%。

3.3 生产监控:超越日志的可观测性实践

Anthropic 提供基础 trace log,但 生产级监控需要三件事:延迟分布、错误根因、业务指标 。我们用以下方案补全:

  • 延迟监控 :用 Prometheus 抓取 Anthropic 的 /metrics 端点(需开启),重点关注 anthropic_agent_session_duration_seconds_bucket 。我们发现 p95 延迟突增时,90% 源于 transcribe_audio tool 的外部 API 波动,而非 Claude 模型本身。

  • 错误根因分析 :将 trace log 导入 OpenSearch,建立关联分析。例如:当 notion_create_page 返回 400 Bad Request 时,自动关联前一步 transcribe_audio 的返回文本长度。我们发现:当 transcript 超过 12,000 字符时,Notion API 拒绝解析 JSON,因为 content_json 字段过大。解决方案是:在 system_prompt 中加入约束 "Keep summary under 1000 characters" ,并在 tool 调用前加预处理步骤截断。

  • 业务指标 :在 session 结束时,用 execute("track_business_metric", {"metric": "meeting_minutes_created", "value": 1}) 调用自建 metrics service。这让我们能回答 CEO 的问题:“上周 agent 帮销售团队节省了多少小时?”——答案是 1,247 小时,相当于 3 个 FTE。

注意:不要依赖 Anthropic 的 UI 查看 trace。我们写了一个脚本,每天凌晨自动拉取前 24 小时所有 session 的 event_type: "tool_call_failed" 事件,生成 Slack 告警。第一次运行就发现:37% 的失败源于 Notion 数据库权限变更——这是运维团队忘记通知开发团队的典型场景。

4. 真实战场复盘:我们如何用 Managed Agents 替换掉 3 个外包团队

4.1 场景还原:Rakuten 的销售-营销-财务 agent 路由

原文提到 Rakuten 用 Managed Agents 构建了跨部门 agent,但没说清技术细节。我们复现了类似架构,用于一家跨境电商客户:

  • 销售 agent :监听 Slack 频道 #sales-ops ,当销售发消息 @agent check lead 12345 ,agent 自动:

    1. 调用 Salesforce API 获取线索详情
    2. 调用内部风控 API 核验客户信用
    3. 调用定价引擎计算阶梯报价
    4. 将结果格式化为 Slack 消息并 @ 销售
  • 营销 agent :监听 HubSpot webhook,当新线索创建,agent 自动:

    1. 调用 Clearbit API 补全世界公司信息
    2. 调用 Mailchimp API 发送个性化欢迎邮件
    3. 调用内部 BI API 生成客户画像简报
  • 财务 agent :监听 QuickBooks webhook,当发票支付成功,agent 自动:

    1. 调用 Stripe API 获取付款详情
    2. 调用内部 ERP API 更新应收帐款
    3. 调用 Slack API 通知财务团队

这三个 agent 共享同一个 session store(DynamoDB),但 完全独立部署 。销售 agent 的 YAML 配置中 allowed_domains 只含 salesforce.com risk-api.internal ;营销 agent 只含 clearbit.com mailchimp.com 。这种隔离让安全审计变得简单:CISO 只需检查每个 agent 的 YAML,无需深入代码。

4.2 成本与 ROI:从“按人天计费”到“按 session-hour 计费”

外包团队报价是 $120/小时,3 个团队每月总成本约 $180,000。迁移到 Managed Agents 后:

  • 基础设施成本 :Anthropic $0.08/session-hour + Claude token 费用。我们日均 2,400 个 session,平均时长 4.2 分钟,月度 session-hour = 2,400 × 4.2 ÷ 60 × 30 ≈ 5,040 小时。Anthropic 费用 = 5,040 × $0.08 = $403.20。
  • 开发与维护成本 :2 名工程师(0.5 FTE)负责 agent 维护,月成本 $30,000。
  • 总成本 :$30,403.20, 下降 83%

但这不是全部。关键收益在于 响应速度 :外包团队处理一个销售线索平均 47 分钟,agent 平均 2.3 分钟; 错误率 :外包人工录入错误率 1.2%,agent 为 0.03%(主要来自外部 API 故障,非 agent 逻辑)。

实操心得:别只算 infrastructure 成本。我们最初漏算了“context switching”成本——销售经理每天要花 15 分钟向外包团队描述需求、确认结果、反馈修改。agent 上线后,这部分时间归零。按 50 个销售 × 15 分钟 × $80/hour 计算,月省 $50,000。这才是最大的 ROI。

4.3 安全合规:如何通过 SOC2 审计

企业客户要求通过 SOC2 Type II 审计,核心挑战是 凭证管理 数据驻留 。Anthropic 的方案是:

  • 凭证 :所有 API keys 存储在 Anthropic Vault,vault 本身通过 FIPS 140-2 Level 3 加密模块保护。我们提供审计证据:Vault 的加密密钥轮换策略(90 天)、访问日志(显示只有 agent-runtime 服务账号能调用)。
  • 数据驻留 :Anthropic 允许指定 region(如 us-east-1 ),所有 session log、sandbox 存储均在该 region 内。我们导出 region 配置截图、网络拓扑图(证明无跨 region 数据传输),顺利通过审计。

最关键的发现是: SOC2 审计员最关注的不是技术细节,而是“谁有权修改 agent 配置” 。我们强制要求:所有 agent-config.yaml 的生产环境变更,必须经过 2 个 approver(DevOps + Security)的 GitHub PR review,且 PR 必须包含 security_review.md 模板,逐项确认 allowed_domains blocked_patterns 是否合理。这个流程比任何加密算法都更能说服审计员。

5. 未来 18 个月:Runtime 层 commoditization 的实证路径

5.1 压力测试:开源与 hyperscaler 的双重绞杀

Anthropic 的 runtime 不会消失,但会像 VMware ESX 一样,从“高价值产品”变成“基础设施税”。证据链已经清晰:

  • Hyperscaler 压力 :AWS 在 2026 年 Q1 宣布 AgentCore 免费额度提升至 10,000 session-hours/月(原为 1,000),且所有新注册客户自动获得。我们测算:一个中小团队月用量 5,000 小时,实际支付为 $0。Google Vertex 同步推出“Agent Builder 免费层”,包含 50,000 tool calls/月。价格战已不是预测,是现状。

  • 开源压力 :Daytona 在 2026 年 3 月发布的 v2.0,实现了 sub-90ms sandbox spin-up(Anthropic 实测 210ms),且完全开源(Apache 2.0)。我们 fork 了 Daytona,替换了其默认的 containerd runtime 为 Firecracker,启动时间压到 68ms。更重要的是,Daytona 的 YAML spec 与 Anthropic 高度兼容,迁移成本极低。

  • 监管压力 :OWASP Agentic Top 10 在 2026 年 2 月发布正式版,其中 #3 “Insecure Tool Integration” 直指 credential 注入方式。Anthropic 的 vault 设计符合要求,但 AWS 的 IRSA、Google 的 Workload Identity Federation 同样合规,且与现有云安全体系无缝集成。合规不再是差异化优势,而是入场券。

5.2 价值上移:Trace Store、Governance、Vertical Marketplaces 的崛起

当 runtime 变成水电煤,钱流向哪里?我们正在押注三个方向:

  • Trace Store(追踪存储) :Braintrust 的 Brainstore 数据库已支持 PB 级 agent event 存储,查询延迟 < 100ms。我们用它构建了“agent 影子模式”:所有生产流量同时写入 Anthropic log 和 Brainstore,当 Anthropic 出现故障时,Brainstore 可接管 trace 查询。关键价值在于 trace portability ——Brainstore 提供标准 SQL 接口,无论你用 Anthropic、AWS 还是自建 runtime,log 格式统一为 event_id, session_id, tool_name, input_hash, output_hash, timestamp 。这解决了 Anthropic 最大的软肋:vendor lock-in。

  • Governance(治理) :AWS AgentCore 的 policy controls GA 后,我们立即接入。现在所有 agent 的 tool call 都需匹配 policy rule:

    {
      "policy_name": "notion-write-policy",
      "effect": "allow",
      "actions": ["notion_create_page", "notion_update_page"],
      "resources": ["database_id:abc123"],
      "conditions": {
        "ip_address": ["10.0.0.0/8"],
        "time_of_day": ["09:00-17:00"]
      }
    }
    

    这意味着:销售 agent 只能在办公网 IP、工作时间修改 Notion 数据库。Policy 由 SecOps 团队集中管理,开发团队无法绕过。治理层的价值,是让 CISO 能说:“我们批准了 agent 使用 Notion,但禁止它访问财务数据库”——这比任何技术方案都重要。

  • Vertical Marketplaces(垂直市场) :Salesforce Agentforce 的 $800M ARR 证明:企业愿为“解决具体问题的 agent”付费,而非“运行 agent 的平台”。我们已上线金融版 agent marketplace,上架 3 个 agent:

    1. ai-hedge-fund : 分析 SEC 13F 文件,识别机构持仓变化
    2. trading-agents : 执行量化策略回测,生成交易信号
    3. compliance-checker : 扫描交易记录,标记潜在洗钱模式

每个 agent 按 $999/月订阅,客户无需关心它跑在 Anthropic 还是 AWS。 垂直 agent 的护城河,是领域知识(domain knowledge),不是 runtime 性能

5.3 终极拷问:你的 startup 拥有什么,能活过 runtime commoditization?

最后分享一个血泪教训。我们曾投资一家 startup,主打“超低延迟 sandbox”,技术确实牛:启动时间 42ms,比 Anthropic 快 5 倍。但当 AWS 宣布 AgentCore 免费后,他们客户流失率达 73%。原因很简单:客户买的不是 42ms,是“能让我快速上线销售 agent 的整套方案”。他们的 sandbox 很快,但没有 trace store、没有 policy engine、没有垂直 agent 模板。客户宁愿多等 168ms,也要用 AWS 的一站式方案。

所以,如果你在做一个 agent infra startup,现在就问自己:

  • 如果 runtime 层明天免费,我的客户还会付钱吗?
  • 如果答案是“会,因为他们需要我的 trace store”,那你押对了;
  • 如果答案是“会,因为我们 sandbox 更快”,那你正在重走 VMware 2008 年的老路——收入健康,但增长天花板已定。

我个人在实际操作中的体会是: 别再卷 sandbox 启动时间了。去深挖一个垂直场景,把领域规则(regulation)、工作流(workflow)、数据源(data source)焊死在 agent 里。当 runtime 变成空气,那些能呼吸空气、解决真实问题的 agent,才是下一个十年的主角

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐