Appearance
调用时序图
这一页不讲抽象定义,只把几条最容易混淆的链路画出来。
1. codex exec
这是最短的一条链,更像命令执行。
text
user / script
->
codex exec "prompt"
->
Codex runtime
->
tool calls / model steps
->
stdout / json events / final message特点:
- one-shot
- 适合脚本、CI、批处理
- 宿主控制面最弱
2. Zed 接 Codex
text
Zed editor
->
ACP over stdio
->
codex-acp
->
Codex runtime / thread manager
->
tool calls / approvals / events
->
ACP updates back to Zed宿主控制点:
- session 生命周期
- prompt / cancel / resume
- 工具调用 UI
- diff / terminal / approvals
关键判断:
Zed 不是在“包一层 codex exec”,而是在“把 Codex 变成一个外部 agent 进程”。
3. Zed 接 Claude Code
text
Zed editor
->
ACP
->
Claude adapter
->
Claude Agent SDK / Claude Code
->
streamed events / tool interactions
->
ACP updates back to Zed这条链和 Zed + Codex 很像,区别主要在适配器背后接的不是同一个 runtime。
4. OpenClaw 直连 provider
text
OpenClaw
->
OpenAI-compatible / provider API
->
model response stream
->
OpenClaw session / channel / UI特点:
- 最薄
- 最容易做统一路由
- 上游 agent 的本地执行语义较弱
5. OpenClaw 作为 ACP bridge
text
editor / acpx
->
openclaw acp
->
OpenClaw gateway
->
provider or external agent backend这里 OpenClaw 本身不是被嵌入的 agent,而是桥。
6. OpenClaw 反向拉起外部 agent
text
OpenClaw
->
acpx / ACP backend plugin
->
external harness
->
Codex / Claude / Gemini这里 OpenClaw 又变成宿主。
7. Multica 接 Claude Code
text
Multica backend
->
local daemon
->
claude --output-format stream-json -p <prompt>
->
Claude Code
->
JSON lines on stdout
->
Multica Message stream关键点:
- 没有 ACP
- 没有单独 adapter
- 直接消费 CLI 的结构化输出
8. Multica 接 Codex
text
Multica backend
->
local daemon
->
codex app-server --listen stdio://
->
JSON-RPC: initialize -> thread/start -> turn/start
->
thread / item / turn notifications
->
Multica Message stream关键点:
- 也没有 ACP
- 不是
codex exec - 它把 Codex 当作长期运行的 app-server
9. 这几条链该怎么一眼区分
| 链路 | 你看到的关键词 | 本质 |
|---|---|---|
codex exec | exec, --json, prompt in/prompt out | 命令式运行 |
Zed -> codex-acp | ACP, adapter, external agent | IDE 嵌入 |
OpenClaw -> provider | provider, gateway, responses API | 模型路由 |
OpenClaw -> acpx | spawn, harness, bridge | 外部 agent 编排 |
Multica -> claude | stream-json, stdout lines | CLI 流式消费 |
Multica -> codex | app-server, thread/start, turn/start | server 式运行时接入 |
10. 最短结论
如果你只是想快速判断一条集成链路属于哪类,问自己两个问题就够了:
- 宿主是在“发一个命令”,还是“管理一个会话”?
- 上游返回的是“输出流”,还是“线程/回合/审批级事件”?
这两个问题基本就能把 exec、CLI stream、ACP、app-server 全部分开。