Corre el CLI que ya tienes, y deja escrito lo que hizo
Un worktree por tarea, y varias a la vez. Su propio checkout, su propia rama: nada de lo que escribe una corrida está en la tuya hasta que tú lo digas.
Fases que paran donde tú dijiste. Los gates responden con un código de salida, no con una opinión, y un sandbox rechaza lo que la fase no tenía permitido tocar.
Autopilot, con freno. Trabaja la cola solo, y deja de tomar trabajo nuevo cuando se acumulan las tareas terminadas que nadie ha leído.
Tu propio CLI, en los dos sentidos. Una tecla le entrega la terminal en el worktree de la tarea; por MCP escribe tareas, las corre, y te lee de vuelta lo que pasó mientras no estabas.
Un supervisor al que puedes redirigir. Lee el resultado de una corrida, decide si hizo lo que se pidió, y va a arreglar lo que falta — en un hilo en el que tú escribes.
Hechos que lleva a cada corrida. Lo que es cierto sobre tu código, con su fuente y su alcance, guardado fuera del modelo para que cambiar de motor no lo pierda.
Doce paneles por tarea. Lo que gastó, lo que corrió cada gate, lo que el sandbox negó, la línea de tiempo evento por evento, los artefactos, el razonamiento que mostró, el diff — y lo que el cambio alcanza y un diff no puede mostrar.
Todo escrito, al lado del código. No en una ventana de chat que alguien cerró: orbit show lee una corrida seis meses después, y orbit export saca el registro completo.
01
Cómo empezar
Cuatro comandos, y el único que tienes que pensar es el tercero: apunta la sala de control al directorio donde están tus repositorios.
orbit mcp install registra el servidor en Claude Code, Claude Desktop, Codex, OpenCode y Gemini.
orbit top ~/code es una sola ventana sobre cada repositorio git que haya debajo. No hay lista que registrar.
N escribe una tarea, o pídeselo a tu CLI en lenguaje normal y las escribe por ti.
Una tarea no es una sesión larga. Es una lista de fases, cada una lo bastante pequeña para revisarla, con un veredicto escrito después de cada una.
Una fase que se equivoca la atrapa la siguiente, o la atrapas tú, antes de que la de después construya sobre el error.
Una fase marcada wait es un gate: la corrida se detiene delante de ella. Entre cada par de fases queda registrada la respuesta — incluyendo "no se le preguntó a nadie, autopilot estaba encendido".
Cinco flujos vienen incluidos. Los tuyos son JSON, y los nombres de las fases son tuyos.
Una tecla, y Orbit trabaja la cola: toma la siguiente pendiente, la lleva por su flujo sin detenerse en los gates del flujo, y deja que el supervisor intente resolver lo que vuelve necesitando atención.
No levanta una pausa que pusiste a mano, y no levanta una tarea marcada como crítica.
unread-cap es el freno: cuando hay diez tareas terminadas sin leer, no arranca nada nuevo. La cola no puede adelantarse a ti.
Cada gate que levanta queda registrado como una decisión que nadie tomó — un dato distinto sobre cuánto se revisó el resultado.
El diff dice qué se escribió. La pestaña de impacto dice si estuvo bien — qué suele venir junto con estos archivos y esta vez no vino.
Leído del historial de este mismo repositorio: invoice.py · 87% de las veces (34/39) · sin tocar. No es una regla — es la pregunta que un revisor no le puede hacer a un diff.
r corre los checks del propio flujo sobre la base y sobre el trabajo al mismo tiempo. Un código de salida decidió cada línea.
Y lo que el agente dice que hizo: qué les pide ahora el cambio a quienes lo llaman, qué promete, y qué consideró y no hizo — que no existe en ningún otro lado.
Orbit no reemplaza el CLI que ya usas — Claude Code, Codex, OpenCode, Antigravity. c le entrega la terminal, en el worktree de esa tarea, con el contexto de la tarea y el servidor MCP de Orbit.
Sales de él y caes de vuelta en el tablero. Orbit pregunta si escribir la sesión como una tarea.
Veintidós herramientas MCP, así que el flujo va en los dos sentidos: tu CLI escribe tareas, las corre, lee lo que pasó, y las dirige.
Los agentes que Orbit corre reportan por el mismo protocolo — eventos estructurados, no stdout raspado.
Hechos sobre tu código, con su fuente y su alcance, que llegan al prompt antes de que el agente trabaje.
El modelo olvida entre sesiones y olvida cuando lo cambias. CLAUDE.md y AGENTS.md son silos que se vacían el día que cambia el motor. Esto se guarda fuera de todos ellos.
Seis alcances, leídos de más lejano a más cercano: todo, un lenguaje, un repositorio, un directorio, un archivo, un símbolo.
Un hecho sin fuente no entra — una frase que nadie puede rastrear es indistinguible de una que el modelo se inventó.
Un flujo es una lista de fases, cada una nombrando su motor, su modelo, su esfuerzo, su prompt y lo que tiene permitido tocar. Cinco vienen incluidos. El resto son tuyos.
La pantalla muestra cada flujo abierto — cada fase, sobre qué corre, y cuáles se detienen. Un flujo que no puedes leer antes de pagarlo es un flujo en el que confías en vez de elegirlo.
Una fase marcada wait es un gate. Así es como dices dónde van los controles.
Los nombres de las fases son tuyos: un flujo de release, uno de migración, uno de triage tienen la misma forma, y todos reciben el mismo registro y la misma sala de control.