使用 dmux(一个用于代理套件的 tmux 窗格管理器)来编排并行的 AI 代理会话。
dmux 是一个基于 tmux 的编排工具,用于管理 AI 代理窗格:
n 创建一个带有提示的新窗格m 将窗格输出合并回主会话安装: npm install -g dmux 或参见 github.com/standardagents/dmux
# Start dmux session
dmux
# Create agent panes (press 'n' in dmux, then type prompt)
# Pane 1: "Implement the auth middleware in src/auth/"
# Pane 2: "Write tests for the user service"
# Pane 3: "Update API documentation"
# Each pane runs its own agent session
# Press 'm' to merge results back
将研究和实现拆分为并行轨道:
Pane 1 (Research): "Research best practices for rate limiting in Node.js.
Check current libraries, compare approaches, and write findings to
/tmp/rate-limit-research.md"
Pane 2 (Implement): "Implement rate limiting middleware for our Express API.
Start with a basic token bucket, we'll refine after research completes."
# After Pane 1 completes, merge findings into Pane 2's context
在独立文件间并行工作:
Pane 1: "Create the database schema and migrations for the billing feature"
Pane 2: "Build the billing API endpoints in src/api/billing/"
Pane 3: "Create the billing dashboard UI components"
# Merge all, then do integration in main pane
在一个窗格中运行测试,在另一个窗格中修复:
Pane 1 (Watcher): "Run the test suite in watch mode. When tests fail,
summarize the failures."
Pane 2 (Fixer): "Fix failing tests based on the error output from pane 1"
为不同任务使用不同的 AI 工具:
Pane 1 (Claude Code): "Review the security of the auth module"
Pane 2 (Codex): "Refactor the utility functions for performance"
Pane 3 (Claude Code): "Write E2E tests for the checkout flow"
并行审查视角:
Pane 1: "Review src/api/ for security vulnerabilities"
Pane 2: "Review src/api/ for performance issues"
Pane 3: "Review src/api/ for test coverage gaps"
# Merge all reviews into a single report
对于涉及重叠文件的任务:
# Create worktrees for isolation
git worktree add -b feat/auth ../feature-auth HEAD
git worktree add -b feat/billing ../feature-billing HEAD
# Run agents in separate worktrees
# Pane 1: cd ../feature-auth && claude
# Pane 2: cd ../feature-billing && claude
# Merge branches when done
git merge feat/auth
git merge feat/billing
| 工具 | 功能 | 使用时机 |
|---|---|---|
| dmux | 用于代理的 tmux 窗格管理 | 并行代理会话 |
| Superset | 用于 10+ 并行代理的终端 IDE | 大规模编排 |
| Claude Code Task 工具 | 进程内子代理生成 | 会话内的程序化并行 |
| Codex 多代理 | 内置代理角色 | Codex 特定的并行工作 |
ECC 现在包含一个助手,用于使用独立的 git worktree 进行外部 tmux 窗格编排:
node scripts/orchestrate-worktrees.js plan.json --execute
示例 plan.json:
{
"sessionName": "skill-audit",
"baseRef": "HEAD",
"launcherCommand": "codex exec --cwd {worktree_path_sh} --task-file {task_file_sh}",
"workers": [
{ "name": "docs-a", "task": "Fix skills 1-4 and write handoff notes." },
{ "name": "docs-b", "task": "Fix skills 5-8 and write handoff notes." }
]
}
该助手:
seedPaths 覆盖到每个工作器的工作树中.orchestration/<session>/ 下写入每个工作器的 task.md、handoff.md 和 status.md 文件当工作器需要访问尚未纳入 HEAD 的脏文件或未跟踪的本地文件(例如本地编排脚本、草案计划或文档)时,使用 seedPaths:
{
"sessionName": "workflow-e2e",
"seedPaths": [
"scripts/orchestrate-worktrees.js",
"scripts/lib/tmux-worktree-orchestrator.js",
".claude/plan/workflow-e2e-test.json"
],
"launcherCommand": "bash {repo_root_sh}/scripts/orchestrate-codex-worker.sh {task_file_sh} {handoff_file_sh} {status_file_sh}",
"workers": [
{ "name": "seed-check", "task": "Verify seeded files are present before starting work." }
]
}
tmux capture-pane -pt <session>:0.<pane-index> 检查它。brew install tmux (macOS) 或 apt install tmux (Linux) 安装。