跳转至

Runtime Adapter

Runtime Adapter 用于隔离底层智能体框架差异。

为什么需要 Adapter

Claude Code、Codex、OpenAI Agents SDK 各自优势不同:

  • Claude Code / Claude Agent SDK:适合复杂代码任务、subagents、hooks、MCP 工具调用。
  • Codex SDK:适合程序化控制 Codex thread/run,集成到研发工作流和内部工具。
  • OpenAI Agents SDK:适合自己掌控 orchestration、tools、handoffs、guardrails、tracing。

如果业务层直接依赖某个 SDK,后续会很难切换或混用。因此需要抽象一层统一接口。

建议接口

text AgentRuntime - start_session(context) - run_task(session_id, instruction, tools, policy) - continue_task(session_id, message) - cancel_task(session_id) - get_trace(session_id) - export_artifacts(session_id)

Adapter 应该处理什么

  • session/thread 生命周期。
  • prompt 和上下文注入。
  • 工具注册与工具调用协议转换。
  • sandbox / permission 配置。
  • trace / log 标准化。
  • 错误处理与重试。
  • token、成本和延迟统计。

Adapter 不应该处理什么

  • 不应该承载业务流程。
  • 不应该硬编码部门规则。
  • 不应该直接访问内部系统。
  • 不应该绕过 policy 层。

初始支持建议

第一阶段可以只做两个 adapter:

  1. codex_adapter:用于研发服务类任务。
  2. openai_agents_adapterclaude_adapter:用于通用企业流程类任务。

等 harness 层稳定后,再补充更多 runtime。