SUPER DOLPHINHARNESS DRIVER DOCS

PROVIDER RUNTIME

Provider、审批与恢复

保持 Provider 身份、用户决策、事件可见性和 pending Turn 的恢复语义。

先说结论

Super Dolphin Harness Driver 当前以 Codex App 为集成默认路径。Claude Provider 适配仍在进行、不是默认 Driver,而且不支持子 Agent Orch。两者共享的上层事件模型不代表完整 Driver、审批、恢复或编排能力对等。

怎么理解

Provider 架构分为统一编排、具体适配和运行时桥接三层:

维度Claude CLI(适配中)Codex App(当前默认)
传输每 session 一个 CLI 进程,stdio stream-json每 session 一个 WebSocket,可共享或本地启动 app-server
start/resumeCLI 参数、manifest、--resumethread/startthread/resume RPC
审批permission mode 与 sandbox 启动策略ApprovalManager callback bridge 与用户输入请求
恢复restart 新 CLI、交换 transport、失败回滚reconnect、重启 reader、resume、重放 pending Turn

统一 EventDispatcher 先发布 raw event,再执行公共与 Provider translator,最终映射为 UI 可见的 thread、turn、tool、warning、error 与 token usage 事件。界面不应直接依赖 Provider 私有 event 名。

怎么使用

  1. Thread start/resume 提供完整 Provider 身份、CWD、模型和 Prompt snapshot。
  2. Driver 在启动或 acquire 前同步 provider-native Skill mirrors。
  3. Provider session 建立后注册到 SessionManager,并把 raw 事件翻译到统一事件面。
  4. Codex 的审批请求进入 ApprovalManager;用户决策按 request identity 回写,重复通知被去重。
  5. Turn 完成后,统一事件与持久状态共同驱动 UI、编排和恢复判断。

常见问题

  • Provider identity 只有部分字段:start/resume/fork fail-fast,不从另一身份目录拼接缺失字段。
  • Codex transport 断开:恢复经过 shutdown、generation、互斥和 retry budget;随后固定执行 reconnect、reader restart、thread/resume 与 pending Turn replay。
  • Claude 配置变化:Configure 只暂存 model/effort;下一次运行通过 staged restart 生效。新 transport 未 ready 时回滚旧 transport。
  • 审批未处理:Composer 和相关动作保持阻塞;不能把超时自动解释为批准。
  • 原始错误事件:通过统一 translator 显示,不能用空消息或静默重试抹掉。

适用范围

  • Claude 和 Codex 的审批能力并不对称;Claude 当前主要依赖启动 permission policy,不具备同样的 callback bridge。
  • Claude 当前不支持 Harness Driver 的子 Agent Orch;Google Antigravity 的公开接入口仅限 LSP client,不属于本页 Provider Driver 范围。
  • Provider 事件统一不代表底层进程、会话和工具能力完全等价。
  • 恢复有重试预算;连续失败必须暴露给用户,不能无限循环。
  • 上游账号、计费、服务中断或操作系统策略不由 Super Dolphin 保证。

延伸阅读

需要调整 Provider 与审批偏好时查看设置与运行时能力;定位跨层失败时先用可观测性与链路追踪,再进入故障排查