Baton
Baton orquesta agentes de IA para programar en paralelo con worktrees aislados de git, ejecución en terminal, estado y revisión por diffs antes de PR.
¿Qué es Baton?
Baton es una aplicación nativa de terminal para ejecutar múltiples agentes de IA para programar en paralelo. Orquesta las ejecuciones de agentes en espacios de trabajo git aislados, para que cada tarea se ejecute sin interferir con otras.
Su propósito principal es reducir la sobrecarga de coordinación mientras revisas e integras la salida de los agentes. Baton proporciona monitoreo de estado para cada espacio de trabajo, revisión basada en diffs de los cambios, y controles conscientes de git como ramificación, Pull Requests y navegación de archivos por espacio de trabajo.
Características clave
- Aislamiento de worktrees para tareas paralelas: Cada espacio de trabajo está respaldado por un worktree git real y su propia rama, diseñado para evitar que las ejecuciones de agentes se interfieran (sin conflictos de stash/cambio entre espacios de trabajo).
- Orquestación multiagente con ejecución nativa de CLI: Ejecuta agentes de IA para terminal en sesiones completas de terminal (no un wrapper simplificado). El sitio lista soporte para Claude Code, Codex, OpenCode y Gemini CLI, así como “cualquier agente CLI”.
- Monitoreo de espacios de trabajo y badges de estado: Badges de estado etiquetados indican cuándo un agente espera entrada, se completó exitosamente o encontró un error. Los espacios de trabajo se agrupan en un dashboard para ver dónde se requiere atención.
- Revisión de cambios consciente de git: Un visor de diffs impulsado por Monaco muestra qué cambió cada agente, soporta modos de diff dividido y unificado, e incluye rollback para archivos individuales antes de abrir un PR. También soporta comparar contra ramas, no solo
main. - Gestión integrada de espacios de trabajo: Crea espacios de trabajo rápidamente desde una idea (nombre de rama, título y descripción generados automáticamente). Archiva espacios de trabajo terminados, y detén/archiva/elimina múltiples espacios de trabajo en lote.
- Plantillas, búsqueda y navegación: Guarda comandos de shell y prompts de agentes como plantillas reutilizables, realiza búsqueda difusa de archivos y búsqueda de contenido de texto completo (fzf + ripgrep), y navega por historial de commits e historial de archivos con diffs por commit.
- Flujo de trabajo de terminal y editor: Múltiples pestañas de terminal por espacio de trabajo con división de paneles, salida buscable con resaltado, y Shift+Enter para entrada multilínea. El editor incluye git blame, más un visor de archivos basado en Monaco.
- Acciones de Git GUI y creación de PR: Fetch/pull/rebase/push y abre Pull Requests a GitHub o GitLab desde la app con un solo clic (como se describe en la página).
- Presets de agentes y comandos personalizados: Define múltiples presets de CLI de agente con modos de lanzamiento variados, flags y scripts de inicio personalizados. Configura comandos de agente personalizados que se ejecutan vía herramientas de terminal.
- Soporte para servidor MCP: Los agentes pueden lanzar nuevos espacios de trabajo Baton, ejecutar tareas en paralelo y actualizar títulos/descripciones de espacios de trabajo directamente desde la conversación (vía un servidor MCP integrado).
Cómo usar Baton
- Lanza Baton e inicia describiendo lo que quieres construir.
- Baton crea un espacio de trabajo aislado usando un worktree y rama git dedicados, luego inicia el agente inmediatamente.
- Usa el dashboard y badges de estado para ver si un agente terminó, falló o espera entrada.
- Cuando los cambios estén listos, abre el visor de diffs para revisar qué modificó el agente, haz rollback de archivos individuales no deseados, y luego abre un Pull Request desde la app.
- Al completar tareas, archiva espacios de trabajo terminados para mantener organizada la barra lateral de espacios de trabajo.
Casos de uso
- Desarrollo paralelo de características con ramas aisladas: Crea espacios de trabajo separados para múltiples tareas de programación para que cada ejecución de agente opere en su propio worktree git, luego revisa y crea PR para cada tarea al completarse.
- Salida de agente con revisión primero para PR más seguras: Usa el visor de diffs Monaco (dividido/unificado) para inspeccionar cambios por agente archivo por archivo, haz rollback de archivos específicos, y luego abre un PR una vez satisfecho.
- Manejo de prompts de agente que requieren entrada: Monitorea badges de estado “input” cuando un agente te espera, responde y continúa sin cambiar pestañas de un lado a otro.
- Investigación de por qué cambió el código: Usa git blame y vistas de historial de commits dentro de Baton para rastrear cambios de líneas a commits, e inspecciona historial de archivos con diffs (incluyendo estadísticas a nivel de línea y seguimiento de renombrados vía comportamiento de historial git).
- Reutilización de comandos y prompts probados: Guarda comandos de shell y prompts de agentes como plantillas, luego ejecútalos en diferentes espacios de trabajo desde la barra de herramientas.
Preguntas frecuentes
¿Qué agentes de IA para programar soporta Baton?
El sitio lista explícitamente Claude Code, Codex (Codex CLI), OpenCode y Gemini CLI, y también indica que Baton puede ejecutar cualquier agente CLI.
¿Cómo evita Baton los conflictos de fusión entre ejecuciones de agentes?
Baton aísla cada espacio de trabajo como su propio worktree de git con una rama separada. La página describe esto como una forma de evitar que las ejecuciones de agentes interfieran entre sí, eliminando la necesidad de hacer stash/cambiar entre tareas.
¿Qué significa el estado “input”?
En la interfaz de monitoreo del espacio de trabajo, una insignia de input indica que el agente está esperando tu entrada.
¿Puedo revisar los cambios antes de abrir un PR?
Sí. Baton incluye un visor de diffs para revisar qué cambió cada agente de IA y permite revertir archivos individuales antes de abrir un Pull Request.
¿Funciona Baton como una herramienta basada en terminal?
Sí. El producto se describe como “construido alrededor del terminal”, destacando la ejecución nativa de agentes CLI y funciones de terminal como pestañas, divisiones de paneles y salida buscable.
Alternativas
- Git local + ejecuciones manuales de agentes con ramas separadas: Puedes ejecutar agentes tú mismo por rama/worktree, luego revisar diffs manualmente y abrir PRs; esto suele carecer del panel de monitoreo centralizado de Baton y la gestión integrada de diffs/blame/espacios de trabajo.
- Funciones de IDE integradas para asistentes de IA: Las herramientas de IA basadas en IDE pueden ofrecer chat de agentes y sugerencias de código dentro del editor, pero no proporcionan el mismo modelo de ejecución paralela con worktrees aislados y flujo de trabajo multiagente centrado en terminal descrito para Baton.
- Herramientas de orquestación de tareas/agentes sin aislamiento de worktrees de git: Las plataformas de orquestación generales pueden coordinar múltiples ejecuciones de agentes, pero Baton enfatiza el uso de worktrees y ramas reales de git por tarea para mantener separadas las salidas de los agentes para revisión.
- Flujos de revisión enfocados en control de versiones (herramientas de diff + PR): Las herramientas de revisión de código ayudan a inspeccionar cambios y gestionar PRs, pero generalmente no combinan esto con ejecución paralela de agentes de IA y seguimiento de estado a nivel de espacio de trabajo.
Alternativas
BotBoard
Gestiona agentes de IA como un equipo con un backlog compartido, contexto estructurado y revisión humana para asignar, seguir y aprobar salidas.
GitBoard
GitBoard es una app nativa de la barra de menús en macOS para GitHub Projects: ve tu kanban, filtra por estado, busca issues y crea/asigna.
Biji
Biji es una plataforma versátil diseñada para mejorar la productividad a través de herramientas y características innovadoras.
Codex Plugins
Usa Codex Plugins para combinar skills, integraciones de apps y servidores MCP en flujos reutilizables que amplían el acceso de Codex a Gmail, Drive y Slack.
Falconer
Falconer es una plataforma de conocimiento autoactualizable para equipos ágiles: escribe, comparte y encuentra documentación interna y contexto de código en un solo lugar.
OpenFlags
OpenFlags es un sistema de feature flags open source y autohospedado con control plane y SDKs para evaluaciones locales y rollouts progresivos.