背景
anet 现在内置 3 个 runtime:
claude-agent-sdk — Anthropic 官方 @anthropic-ai/claude-agent-sdk
codex-sdk — OpenAI 官方 @openai/codex-sdk
claude-code-cli — spawn 本机 claude 二进制(不属于 SDK 范畴)
前两个 SDK 在 anet 里的接入语义、能力边界、session 处理、tool 注册、streaming、token 计费、错误处理等没有专门系统化对比。docs-site/docs/guide/runtimes.md 给的是 user-facing how-to,对"想自己接新 SDK"或"想理解 anet 怎么 wrap SDK"的 contributor 不够深。
目标
通信SDK马 出一份 SDK adapter 深度对比,结论落 docs。
调研维度(建议)
| 维度 |
claude-agent-sdk |
codex-sdk |
| package / 版本 |
|
|
| API entry(query / thread / etc.) |
|
|
| Session 语义(id 来源 / 持久化 / resume 接口) |
|
|
| Tool 注册(MCP / 内置) |
|
|
| Streaming(SSE / async iterator / Promise) |
|
|
Token 计费 / 预算(--max-budget 谁实现) |
|
|
| 错误处理 + 重试 |
|
|
| 多 turn 行为 + history 限制 |
|
|
| ANTHROPIC_BASE_URL / 等价机制(路由到 MiniMax / DeepSeek / Codex provider) |
|
|
| settingSources / 项目隔离 |
|
|
| breaking change cadence + 历史 |
|
|
| anet wrapper 关键代码位置 |
agent-node/src/cli.ts:546 区域 |
agent-node/src/cli.ts:673 区域 |
交付物
- 新文件
docs-site/docs/guide/sdk-deep-dive.md + EN 镜像 docs-site/docs/en/guide/sdk-deep-dive.md
- 内容:对比表 + 各 SDK 接入注意事项 + anet wrapper 怎么收敛差异 + 想加新 runtime(gemini-cli / qwen-code 等)应该怎么照葫芦画瓢
.vitepress/config.ts ZH+EN sidebar 加链接到新文件
docs-site/docs/guide/runtimes.md 末尾加"想深入?→ SDK Deep-dive"指引
不要做
- 不改 cli.ts / agent-node 源码(纯文档 + 调研)
- 不发新 npm 版本
- 不动 hub / dashboard
流程
- 按 #15 Phase 0 PR pipeline 走 worktree + PR
- worktree 路径:
~/anet-work/sdk-deep-dive/
- 分支:
docs/sdk-deep-dive
- PR description 用新 template,
Closes # 这个 issue
验收
- 文档构建
npm run build 通过无 dead link
- ZH + EN 内容齐
- sidebar 能跳到新文档
- 对比表至少覆盖上方"调研维度"表里列的项
背景
anet 现在内置 3 个 runtime:
claude-agent-sdk— Anthropic 官方@anthropic-ai/claude-agent-sdkcodex-sdk— OpenAI 官方@openai/codex-sdkclaude-code-cli— spawn 本机claude二进制(不属于 SDK 范畴)前两个 SDK 在 anet 里的接入语义、能力边界、session 处理、tool 注册、streaming、token 计费、错误处理等没有专门系统化对比。
docs-site/docs/guide/runtimes.md给的是 user-facing how-to,对"想自己接新 SDK"或"想理解 anet 怎么 wrap SDK"的 contributor 不够深。目标
通信SDK马 出一份 SDK adapter 深度对比,结论落 docs。
调研维度(建议)
--max-budget谁实现)交付物
docs-site/docs/guide/sdk-deep-dive.md+ EN 镜像docs-site/docs/en/guide/sdk-deep-dive.md.vitepress/config.tsZH+EN sidebar 加链接到新文件docs-site/docs/guide/runtimes.md末尾加"想深入?→ SDK Deep-dive"指引不要做
流程
~/anet-work/sdk-deep-dive/docs/sdk-deep-diveCloses #这个 issue验收
npm run build通过无 dead link