Flujos de Trabajo dmux
Orquesta sesiones paralelas de agentes de IA usando dmux, un gestor de paneles tmux para entornos de agentes.
Cuándo Activar
- Ejecutar múltiples sesiones de agente en paralelo
- Coordinar trabajo entre Claude Code, Codex y otros entornos
- Tareas complejas que se benefician del paralelismo divide y vencerás
- El usuario dice "ejecutar en paralelo", "dividir este trabajo", "usar dmux" o "multiagente"
¿Qué es dmux?
dmux es una herramienta de orquestación basada en tmux que gestiona paneles de agentes de IA:
- Presiona
npara crear un nuevo panel con un prompt - Presiona
mpara fusionar la salida del panel de vuelta a la sesión principal - Soporta: Claude Code, Codex, OpenCode, Cline, Gemini, Qwen
Instalar: Instala dmux desde su repositorio después de revisar el paquete. Consulta github.com/standardagents/dmux
Inicio Rápido
# Iniciar sesión dmux
dmux
# Crear paneles de agente (presiona 'n' en dmux, luego escribe el prompt)
# Panel 1: "Implementar el middleware de autenticación en src/auth/"
# Panel 2: "Escribir pruebas para el servicio de usuario"
# Panel 3: "Actualizar la documentación de la API"
# Cada panel ejecuta su propia sesión de agente
# Presiona 'm' para fusionar los resultados de vuelta
Patrones de Flujo de Trabajo
Patrón 1: Investigar + Implementar
Divide la investigación y la implementación en pistas paralelas:
Panel 1 (Investigación): "Investigar mejores prácticas para limitación de tasa en Node.js.
Revisar librerías actuales, comparar enfoques y escribir hallazgos en
/tmp/rate-limit-research.md"
Panel 2 (Implementación): "Implementar middleware de limitación de tasa para nuestra API Express.
Comenzar con un token bucket básico, refinaremos después de que termine la investigación."
# Después de que el Panel 1 termine, fusionar hallazgos en el contexto del Panel 2
Patrón 2: Función Multiarchivo
Paraleliza el trabajo en archivos independientes:
Panel 1: "Crear el esquema de base de datos y las migraciones para la función de facturación"
Panel 2: "Construir los endpoints de la API de facturación en src/api/billing/"
Panel 3: "Crear los componentes de UI del panel de facturación"
# Fusionar todo, luego hacer integración en el panel principal
Patrón 3: Ciclo de Prueba + Corrección
Ejecuta pruebas en un panel, corrige en otro:
Panel 1 (Vigilante): "Ejecutar el conjunto de pruebas en modo vigilancia. Cuando fallen las pruebas,
resumir los fallos."
Panel 2 (Corrector): "Corregir las pruebas que fallan según la salida de errores del panel 1"
Patrón 4: Multi-Entorno
Usa diferentes herramientas de IA para diferentes tareas:
Panel 1 (Claude Code): "Revisar la seguridad del módulo de autenticación"
Panel 2 (Codex): "Refactorizar las funciones de utilidad por rendimiento"
Panel 3 (Claude Code): "Escribir pruebas E2E para el flujo de pago"
Patrón 5: Tubería de Revisión de Código
Perspectivas de revisión en paralelo:
Panel 1: "Revisar src/api/ en busca de vulnerabilidades de seguridad"
Panel 2: "Revisar src/api/ en busca de problemas de rendimiento"
Panel 3: "Revisar src/api/ en busca de lagunas en la cobertura de pruebas"
# Fusionar todas las revisiones en un único informe
Mejores Prácticas
- Solo tareas independientes. No paralelices tareas que dependen de la salida de otra.
- Límites claros. Cada panel debe trabajar en archivos o aspectos distintos.
- Fusionar estratégicamente. Revisa la salida del panel antes de fusionar para evitar conflictos.
- Usa git worktrees. Para trabajos propensos a conflictos de archivos, usa worktrees separados por panel.
- Conciencia de recursos. Cada panel consume tokens de API — mantén el total de paneles por debajo de 5-6.
Integración con Git Worktree
Para tareas que tocan archivos superpuestos:
# Crear worktrees para aislamiento
git worktree add -b feat/auth ../feature-auth HEAD
git worktree add -b feat/billing ../feature-billing HEAD
# Ejecutar agentes en worktrees separados
# Panel 1: cd ../feature-auth && claude
# Panel 2: cd ../feature-billing && claude
# Fusionar ramas cuando terminen
git merge feat/auth
git merge feat/billing
Herramientas Complementarias
| Herramienta | Qué Hace | Cuándo Usar |
|---|---|---|
| dmux | Gestión de paneles tmux para agentes | Sesiones paralelas de agentes |
| Superset | IDE terminal para 10+ agentes en paralelo | Orquestación a gran escala |
| Herramienta de tarea Claude Code | Generación de subagentes en proceso | Paralelismo programático dentro de una sesión |
| Multiagente de Codex | Roles de agente integrados | Trabajo paralelo específico de Codex |
Helper ECC
ECC ahora incluye un helper para orquestación externa de paneles tmux con worktrees git separados:
node scripts/orchestrate-worktrees.js plan.json --execute
Ejemplo de plan.json:
{
"sessionName": "skill-audit",
"baseRef": "HEAD",
"launcherCommand": "codex exec --cwd {worktree_path} --task-file {task_file}",
"workers": [
{ "name": "docs-a", "task": "Corregir habilidades 1-4 y escribir notas de traspaso." },
{ "name": "docs-b", "task": "Corregir habilidades 5-8 y escribir notas de traspaso." }
]
}
El helper:
- Crea un worktree git respaldado por rama por cada trabajador
- Opcionalmente superpone
seedPathsseleccionados del checkout principal en cada worktree de trabajador - Escribe archivos
task.md,handoff.mdystatus.mdpor trabajador en.orchestration/<session>/ - Inicia una sesión tmux con un panel por trabajador
- Lanza cada comando de trabajador en su propio panel
- Deja el panel principal libre para el orquestador
Usa seedPaths cuando los trabajadores necesiten acceso a archivos locales sucios o no rastreados que aún no forman parte de HEAD, como scripts de orquestación locales, borradores de planes o documentación:
{
"sessionName": "workflow-e2e",
"seedPaths": [
"scripts/orchestrate-worktrees.js",
"scripts/lib/tmux-worktree-orchestrator.js",
".claude/plan/workflow-e2e-test.json"
],
"launcherCommand": "bash {repo_root}/scripts/orchestrate-codex-worker.sh {task_file} {handoff_file} {status_file}",
"workers": [
{ "name": "seed-check", "task": "Verificar que los archivos sembrados están presentes antes de comenzar el trabajo." }
]
}
Solución de Problemas
- Panel no responde: Cambia al panel directamente o inspecciónalo con
tmux capture-pane -pt <session>:0.<pane-index>. - Conflictos de fusión: Usa git worktrees para aislar cambios de archivos por panel.
- Alto consumo de tokens: Reduce el número de paneles paralelos. Cada panel es una sesión de agente completa.
- tmux no encontrado: Instálalo con
brew install tmux(macOS) oapt install tmux(Linux).