跨 Provider 编排——CCG 与 tmux Worker
学习目标
- 理解跨 Provider 异构编排的挑战与解决方案
- 掌握 CCG 三模型协同的工作流程
- 理解 tmux CLI Worker 的进程隔离架构
- 识别 Provider 能力差异和调试困难的问题
前置知识
多 Agent 路由的基础模式(Supervisor/Worker、Sequential 等)已在通用知识中介绍:
下文假设你已理解基础多 Agent 编排模式,直接聚焦 OMC 的 跨 Provider 异构协同。
项目实践
CCG 三模型协同
CCG(Claude-Codex-Gemini)是 OMC 的多模型协同技能,同时利用三个 AI Provider 的优势:
各 Provider 的角色分配:
| Provider | 擅长领域 | 典型任务 | 上下文窗口 |
|---|---|---|---|
| Claude | 协调与合成 | 任务分解、结果汇总 | 200K tokens |
| Codex | 架构分析 | 架构验证、安全审查 | 200K tokens |
| Gemini | 长上下文处理 | 设计审查、UI 一致性 | 1M tokens |
使用方式:
/ccg Review this PR — architecture (Codex) and UI components (Gemini)tmux CLI Worker 架构
v4.4.0 引入了通过 tmux 启动真实多进程 Worker 的能力:
omc team 2:codex "review auth module for security issues"omc team 2:gemini "redesign UI components for accessibility"omc team 1:claude "implement the payment flow"Worker 生命周期:
关键特性:
- 按需启动:Worker 有任务时才启动
- 完成任务即消亡:无空闲资源消耗
- 进程隔离:每个 Worker 在独立的 tmux pane 中运行
- 混合 Provider:可以在同一个命令中混合 Codex 和 Gemini Worker
混合编排的挑战与解决
| 挑战 | OMC 的解决方式 |
|---|---|
| Provider 能力差异 | 通过角色分配规避(Codex 负责架构,Gemini 负责 UI) |
| 上下文同步 | 每个 Worker 独立访问共享文件系统 |
| 延迟不均衡 | 并行执行,等待最慢的完成 |
| 认证管理 | 各 Provider 使用各自的认证机制,OMC 不介入 |
平台兼容性
OMC 支持四个平台的 tmux 运行:
| 平台 | tmux Provider | 安装方式 |
|---|---|---|
| macOS | tmux | brew install tmux |
| Ubuntu/Debian | tmux | sudo apt install tmux |
| Windows | psmux(原生) | winget install psmux |
| WSL2 | tmux(WSL 内) | sudo apt install tmux |
psmux 是一个原生 Windows tmux 兼容二进制,提供 76 个 tmux 兼容命令,无需 WSL。
问题与规避
问题 1:Provider 能力差异导致结果矛盾
Codex 和 Claude 可能对同一代码给出矛盾的分析结论。
规避策略:通过角色分配——每个 Provider 负责其擅长的领域,减少直接对比。当矛盾不可避免时,由 Claude 协调器综合判断。
问题 2:tmux Worker 清理
Worker 异常退出时,tmux pane 可能残留。
规避策略:omc team shutdown <team-name> 命令用于清理残留的 tmux 会话。
问题 3:跨 Provider 调试困难
当多 Provider 协同出现问题时,难以定位是哪个 Provider 的环节出了问题。
规避策略:OMC 通过 omc team status 命令提供 Worker 状态可见性。每个 Worker 的日志可在 tmux pane 中查看。
设计取舍
为什么选择 tmux 进程隔离而非 MCP 集成?
| 维度 | tmux 进程隔离 | MCP 集成 |
|---|---|---|
| 独立性 | 高——每个 Worker 是独立进程 | 中——共享运行时 |
| Provider 支持 | 高——任何 CLI 都可以作为 Worker | 低——需要 MCP 服务器支持 |
| 资源消耗 | 中——每个进程有独立开销 | 低——共享运行时 |
| 调试性 | 高——tmux pane 可直接查看 | 中——需要通过 MCP 协议 |
OMC 的选择:tmux 进程隔离——确保每个 Worker 的独立性,支持任意 CLI 作为 Worker,代价是每个进程有独立的开销。
参考来源
- OMC Team Mode 文档 — Team 模式的官方文档
- psmux GitHub 仓库 — Windows 原生 tmux 兼容方案
- Gemini CLI 文档 — Gemini CLI 的安装与使用