搜索文档

浏览 Awaken Agents 文档
Docs/Awaken Agentsv1.0.0-dev/使用指南/开始判断现有 Anthropic Managed Agents 客户端能否接入 Awaken
提示·你正在阅读发布前文档(v1.0.0-dev)。接口与行为在稳定发布前仍可能变化。

使用指南 · 开始

判断现有 Anthropic Managed Agents 客户端能否接入 Awaken

本页内容

判断现有客户端可以直接接入、需要适配明确约束,还是应改用 Awaken 原生 API。

请在修改现有 Anthropic Managed Agents 客户端前使用本页。先列出客户端所用的 SDK 版本和资源族,再从下面四种结果中选择一项。请求能够到达服务器,不等于整个客户端已经兼容。

先做兼容性判断

查到的结果应采取的动作
资源族标为兼容,客户端所选 SDK 版本已在矩阵中覆盖,并使用必需 beta 与 Awaken 认证修改连接配置,运行一个最小 Session,再验证应用实际使用的操作。
资源族标为有约束兼容,或注明 header 差异迁移前落实该约束,并在客户端中保留明确的适配逻辑,不把它当作无差别替换。
应用需要 Awaken 扩展显式使用文档中的 Awaken 路由或字段,不把这条路径称为 Anthropic baseline 兼容。
SDK 版本或 API 不在表内视为尚未审阅;验证应用实际使用的资源族、改用已文档化的 Awaken 原生 API,或等待兼容性审阅。

当前验证记录覆盖 @anthropic-ai/sdk 0.122.0Python anthropic 1.2.0, 两者在审阅范围内都暴露 127 个生成操作。TypeScript 矩阵还覆盖 0.121.0、0.117.1 和 0.105.0;Python 矩阵覆盖从 0.92.0 到 1.2.0 的全部已选变更点。这些是已测试版本, 不是依赖要求。请按自己的依赖治理选择版本,再用本页判断哪些行为确实经过测试。在 Awaken revision 50d5035c68456c9106626f748cf4c169c2057beb,operation manifest 把当前 SDK 的 127 个方法和 12 条已审阅但 SDK 未生成的文档路由映射到具名可执行场景。兼容范围只包括 本页具名的路径、方法、DTO、错误、helper 与约束。

连接官方 SDK

import Anthropic from '@anthropic-ai/sdk';

const client = new Anthropic({
  baseURL: 'http://localhost:8080',
  apiKey: process.env.AWAKEN_API_KEY ?? 'local',
});

const session = await client.beta.sessions.create({
  agent: process.env.AWAKEN_AGENT_ID,
  environment_id: process.env.AWAKEN_ENVIRONMENT_ID,
});
await client.beta.sessions.events.send(session.id, {
  events: [{
    type: 'user.message',
    content: [{ type: 'text', text: 'Summarize RFC 8259.' }],
  }],
});

只修改 base URL 还不够,还要配置 Awaken 认证。官方 Managed 资源方法会加入所需 beta selector;原始 HTTP 客户端需要自行发送。Awaken 接受 x-api-key: <token>Authorization: Bearer <token>

在迁移整个应用前:

  1. 记录所选 SDK 版本,列出客户端调用的全部资源族。
  2. 配置 baseURL 与 Awaken 认证,并确认 SDK 方法加入预期 beta selector。
  3. 创建一个 Session,发送一个事件,并检查返回的 error envelope。
  4. 落实应用会遇到的全部约束,再验证 retry 与 archive 路径。

如何使用设计引用

本页是兼容与差异声明的唯一公开权威页面。 Managed Agents 协议页只解释该 wire 如何进入 runtime。下文每项有意义的约束都会链接到对应设计页,用于解释所有权、状态变化、 失败处理和部署责任。设计页回答“为什么这样工作”,兼容性判断仍以本页为准。

SDK 验证矩阵

客户端已审阅版本在 Awaken 上运行的证据结果边界
TypeScript @anthropic-ai/sdk当前 0.122.0;变更点 0.121.0、0.117.1 与 0.105.0精确 method、path、query、beta selector、请求与响应 shape、类型化错误、重试、分页、SSE、helper exports、真实进程生命周期和重启恢复当前 0.122.0 有 127 个生成操作。0.122.0 移除 resolveSkillVersion 是上游源码变化,不是 Awaken shim。
Python anthropic当前 1.2.0;从 0.92.0 到 1.1.0 的 12 个已选变更点127 个当前操作均通过同步和异步客户端,另覆盖五个生成 helper 入口、类型化错误、middleware、credential provider、真实进程生命周期、重启恢复和 3,827 个由声明生成的响应 witnessBetaSelfHostedWork.data 有一项已审阅上游类型差异:Python 1.2.0 annotation 缺少 healthcheck 分支,但 wire 与真实 poller 都接受两个分支。
原始 HTTP当前具名路由族Rust wire schema、路由行为、负向准入、持久化与进程替换测试调用方负责认证、anthropic-version 和资源族 beta selector;Awaken 扩展不属于 Anthropic baseline。

需要公开这张矩阵,因为“SDK 兼容”可能在多个位置失效。即使路由存在,生成方法、helper、 重试规则、stream decoder 或响应 DTO 仍可能不同。本表说明测试了哪种客户端和行为;下方资源 矩阵则回答应用可以使用哪些 API 资源族。

上游契约请以 Anthropic 的 Managed Agents 总览Session operations,以及官方 TypeScriptPython SDK 仓库为准。本页记录 Awaken 经过测试的投影与差异,不替代这些上游来源。

Beta header 决策表

服务器会解析逗号分隔和重复的 anthropic-beta header。缺少必需 beta 时返回 Managed invalid_request_error

资源族必需 beta 值与 Managed beta 的关系
Agents、Sessions、Environments、Deployments、Deployment Runs、Vaultsmanaged-agents-2026-04-01必需
Dreamsdreaming-2026-04-21需要专属 beta;不要求 Managed beta
Memory Stores、Memories、Memory Versions当前 SDK 使用 agent-memory-2026-07-22;旧客户端也可单独使用 managed-agents-2026-04-01必须只发送一个 selector;两者同时发送会被拒绝
当前 SDK Beta 与 GA namespace 中的 Files当前 0.122.0 与 Python 1.2.0 的 Beta 方法保留 beta=true,但不再发送旧 Files selector;旧客户端仍可发送 files-api-2025-04-14
当前 SDK Beta 与 GA namespace 中的 Skills 与 Skill Versions当前 0.122.0 与 Python 1.2.0 的 Beta 方法保留 beta=true,但不再发送旧 Skills selector;旧客户端仍可发送 skills-2025-10-02
User ProfilesSDK 0.122.0 发送 user-profiles-2026-08-18;仍接受旧的 user-profiles-2026-03-24需要专属 beta;不要求 Managed beta
Tunnels 与 Certificatesmcp-tunnels-2026-06-22需要专属 beta;不要求 Managed beta
SDK 0.122.0 中的 GA Files、Skills 与 Models没有 beta gate;GA 与 beta 根路径复用同一资源权威
当前 SDK 未生成的 Skill version 单文件路由skills-2025-10-02GET /v1/skills/{id}/versions/{version}/files/{path}?beta=true 要求该 selector

Dreams SDK 方法会自动加入 dreaming beta。Awaken 接受该生成请求,不再要求 /v1/dreams 同时携带 Managed beta。

兼容矩阵

官方 SDK 产品面Awaken 状态边界
Agents 与 Agent Versions兼容创建、列出、读取、更新、归档与版本列表使用官方 Managed 路由和 DTO。
Sessions、Events、Threads 与 Session Resources有约束兼容CRUD/归档、事件历史、事件写入、thread history 与 SSE 路由均已实现;参见Session 与事件及下文约束。
Environments 与 Work兼容Environment 生命周期和 deferred-work lease/ack/heartbeat/stop 路由已实现;物理 Sandbox 创建时机属于 Awaken 执行设计,参见Brain、Hand 与 Session Environment
Deployments 与 Deployment Runs兼容官方 lifecycle 与 run 路由已实现。
Vaults 与 Credentials兼容官方 lifecycle、archive 与 mcp_oauth_validate 路由已实现;secret 保管与最后一跳物化遵循 Awaken 凭据保管设计
Memory Stores、Memories 与 Memory Versions有 header 约束的兼容路径使用 /memories;Memory beta 按上表排他。
Files兼容 GA projection 过渡SDK 0.122.0 GA 与只带 query 的 Beta multipart upload、metadata、content download、list 与 delete 已实现;旧 Files selector 仍选择已审阅的旧投影。
Skills 与 Skill Versions兼容 GA projection 过渡SDK 0.122.0 GA 与只带 query 的 Beta create、version upload、metadata、list 与 delete 已实现;旧 Skills selector 仍可使用,SDK 未生成的单文件路由继续显式门控。
User Profiles兼容已审阅的 beta 过渡CRUD/list 与 enrollment URL 会在各自 beta selector 下接受 0.122.0 的 access_type 词汇和旧版 relationship 词汇。
DreamsDreams beta 下兼容dreaming-2026-04-21 下的 create、retrieve、list、archive 与 cancel 已实现。
Tunnels 与 Certificates兼容Tunnels beta 下的 tunnel lifecycle 与 certificate operation 已实现。
Models兼容SDK 0.122.0 GA 与 beta 的 list/retrieve 已实现;可用性取决于 Awaken 已配置 catalog。

“兼容”只适用于具名 wire contract。模型可用性、凭据、Sandbox capacity 与 backend placement 属于 Awaken 配置,即使 request 合法也可能明确失败。

已知差异与约束

场景当前行为公开设计所有者
SDK 认证与 beta 准入只修改 baseURL 不够;还需要 Awaken 认证与资源族对应的 beta selector。Managed Agents 协议
Session create 中的 vault_ids支持,并冻结进无密钥的 Session baseline。凭据保管Session 与事件
Session update 中的 vault_ids返回 400;不会修改现有 Session 已冻结的凭据 baseline。凭据保管Session 与事件
Vault secret 存储与交付Wire 兼容,但实际安装的开源自托管、云端托管或企业保管组合决定材料权威与最后一跳持有者;兼容不等于使用 Anthropic 托管密钥基础设施。凭据保管与最后一跳物化
Session initial_events 数量0..50;非空 initial_events 不能与 idempotency key 同时使用。Session 与事件
Session initial_events 中的 system.message拒绝;Deployment initial events 使用独立 batch policy,可允许它。Session 与事件
Session initial_events 中的 user.define_outcome最多一个;max_iterations 必须为 1..20Session 与事件
Deployment initial_events必须为 1..50;接受紧跟对应 user message 的末尾 system.message,outcome max_iterations 仍为 1..20Session 与事件
agent.thinking 投影Awaken 从已提交的推理进展投影 SDK 定义的无内容 marker,但永不暴露 provider reasoning text;history 与 replay 保持稳定 event identity。Session 与事件
Session 创建与 Sandbox 创建二者不是同一时刻。接受的 on_tool_use policy 可以让只做 Native 推理的 Session 在第一次 Hand tool 前不创建 Sandbox;本地 filesystem 需求会强制提前实现,非 Native 的延迟创建会被拒绝。Brain、Hand 与 Session Environment
Skill 发现与正文加载允许文件工具的 Session 使用 Anthropic 兼容的 Prompt 目录元数据与 SKILL.md 文件加载,不暴露语义 Skill 工具;禁用全部文件工具的 Native Session 使用 list_skillsSkill。每个 Session 只固定一种投影。使用 Skills 子系统
Files 与 Skills 的 Beta-to-GA 投影当前 SDK Beta 方法发送 beta=true,不再发送旧 dated selector,因此 Awaken 返回 post-GA shape。已审阅旧 selector 仍选择旧投影;SDK 未生成的 Skill 单文件路由继续显式门控。Managed Agents 协议
User Profiles beta 过渡SDK 0.122.0 发送 user-profiles-2026-08-18 并使用 access_type;旧的 user-profiles-2026-03-24 selector 与 relationship 词汇仍供已审阅的旧版客户端使用。Managed Agents 协议
表格之外的 Anthropic API不作兼容承诺;只使用已文档化 Awaken 路由。API 参考

Awaken 扩展

扩展与兼容面共用同一批受治理对象,但不属于 Anthropic baseline。大多数使用独立路由族:

扩展公共表面公开设计所有者
Live Inbox 与完整 resource manifest 替换/v1/awaken/sessions/*Live InboxSession 与事件
持久 run 控制、恢复、pause/resume 与 dead letter/v1/durable/*生产可靠性
Provider、model、credential、Agent authoring 与 webhook subscription 配置/v1/config/*模型发布凭据保管
Sandbox execution 与 dream policy/v1/awaken/*Brain、Hand 与 Session Environment
AI SDK、AG-UI、A2A 与 MCP adapter各自文档化协议路径协议接入矩阵
Application access token 与 workspace path projection/v1/application-access-tokens/v1/workspaces/*治理

少量扩展有意位于兼容形状旁边或内部,因此严格客户端必须显式处理:

扩展位置公开设计所有者
禁用 AgentPOST /v1/agents/{id}/disable配置到执行
在 Session Sandbox 中启动 MCP serverAgent MCP server variant type: "sandbox_stdio"MCPBrain/Hand
注入 Awaken transcriptSessionCreateParams.x_awaken.transcript_prefixSession 与事件
选择 ACP backend profileModelConfig.id 中的 executor=acp:<id> qualifier通过 API 选择模型与 ACP runtime
把上传文件绑定到 Awaken 资源File metadata 字段 purposesession_idlogical_path,以及 purpose list filterSession 与事件
读取 Skill version 中的单个文件GET /v1/skills/{id}/versions/{version}/files/{path}API 参考

这些字段和路由都是扩展;只需要 baseline 行为的客户端不应发送或依赖它们。公共路由族的 唯一索引是 API 参考

执行扩展:Native、ACP 与 A2A

兼容 wire 不固定执行 backend。不可变的已发布 model binding 会选择:

  • Native 进程内 backend;
  • Claude Code、Codex、Gemini、OpenCode 或 Hermes 等受支持 ACP CLI backend;
  • 远程 A2A endpoint。

ACP runtime 选择与 Sandbox placement(localnamespacedockerpodmank8s)是两个独立维度。不同 ACP 实现的精确模型选择、credential delivery 与 session persistence 并不相同。API selector 与发布边界见 通过 API 选择模型与 ACP runtime, 逐 runtime 差异见 ACP runtime 矩阵