dmux 工作流
使用 dmux(一个用于代理套件的 tmux 窗格管理器)来编排并行的 AI 代理会话。
何时激活
- 并行运行多个代理会话时
- 跨 Claude Code、Codex 和其他套件协调工作时
- 需要分而治之并行处理的复杂任务
- 用户提到“并行运行”、“拆分此工作”、“使用 dmux”或“多代理”时
什么是 dmux
dmux 是一个基于 tmux 的编排工具,用于管理 AI 代理窗格:
- 按
n创建一个带有提示的新窗格 - 按
m将窗格输出合并回主会话 - 支持:Claude Code、Codex、OpenCode、Cline、Gemini、Qwen
安装: npm install -g dmux 或参见 github.com/standardagents/dmux
快速开始
工作流模式
模式 1:研究 + 实现
将研究和实现拆分为并行轨道:
模式 2:多文件功能
在独立文件间并行工作:
模式 3:测试 + 修复循环
在一个窗格中运行测试,在另一个窗格中修复:
模式 4:跨套件
为不同任务使用不同的 AI 工具:
模式 5:代码审查流水线
并行审查视角:
最佳实践
- 仅限独立任务。 不要并行化相互依赖输出的任务。
- 明确边界。 每个窗格应处理不同的文件或关注点。
- 策略性合并。 合并前审查窗格输出以避免冲突。
- 使用 git worktree。 对于容易产生文件冲突的工作,为每个窗格使用单独的工作树。
- 资源意识。 每个窗格都消耗 API 令牌 —— 将总窗格数控制在 5-6 个以下。
Git Worktree 集成
对于涉及重叠文件的任务:
互补工具
ECC 助手
ECC 现在包含一个助手,用于使用独立的 git worktree 进行外部 tmux 窗格编排:
示例 plan.json:
该助手:
- 为每个工作器创建一个基于分支的 git worktree
- 可选择将主检出中的选定
seedPaths覆盖到每个工作器的工作树中 - 在
.orchestration/<session>/下写入每个工作器的task.md、handoff.md和status.md文件 - 启动一个 tmux 会话,每个工作器一个窗格
- 在每个窗格中启动相应的工作器命令
- 为主协调器保留主窗格空闲
当工作器需要访问尚未纳入 HEAD 的脏文件或未跟踪的本地文件(例如本地编排脚本、草案计划或文档)时,使用 seedPaths:
故障排除
- 窗格无响应: 直接切换到该窗格或使用
tmux capture-pane -pt <session>:0.<pane-index>检查它。 - 合并冲突: 使用 git worktree 隔离每个窗格的文件更改。
- 令牌使用量高: 减少并行窗格数量。每个窗格都是一个完整的代理会话。
- 未找到 tmux: 使用
brew install tmux(macOS) 或apt install tmux(Linux) 安装。

