Agent Orchestrator 0.11.0: los cimientos

Un daemon local duradero, un supervisor de escritorio enfocado y una base más segura para sesiones, terminales y flujos de pull requests.

Cubre todo lo publicado desde v0.10.0. Si estás en 0.10.3, ya tienes parte de esto.

v0.10.0 fue la primera versión tras una reescritura desde cero: daemon en Go, capa de sesiones sobre tmux y shell en Electron. Funcionaba, casi siempre. Pero la primera versión de una reescritura es una promesa, no un producto.

0.11.0 reemplaza la frágil base del runtime por un daemon local duradero y construye la experiencia de escritorio en torno a flujos más claros de sesiones, terminales y pull requests.

Lo más destacado

Tu teléfono es una superficie de control real

La app móvil complementaria pasó de ser una adaptación a una superficie lista para usar. Vincula un teléfono a tu daemon por LAN con una contraseña mediante Connect Mobile, comparte la vista de los terminales con zoom de pellizco y desplazamiento, y recibe notificaciones push en iOS y Android cuando una sesión te necesita. La configuración te guía en la vinculación por LAN o Tailscale y enlaza directamente a la app. (#2522, #2533, #2569, #2654, #2851, #2881, #2918, #2933)

Los agentes pueden controlar un navegador

Los agentes renderizan Markdown y controlan una preview de navegador integrada. Haz anotaciones directamente en ella para señalarle a un agente un elemento concreto de la UI, y los enlaces de localhost en los que haces clic en un terminal se abren ahí en lugar de sacarte de la app. (#2455, #2548, #2610, #3085)

Feature Releases: instala cualquier PR abierto

Cada PR ahora puede generar su propia build prerelease instalable, así que probar un cambio en curso significa instalar una app real en lugar de hacer un checkout. Está detrás de un nuevo interruptor Developer Mode para que el selector de canal no estorbe a los demás. (#2459, #3039)

Entrada de issues de GitHub

Los proyectos pueden iniciar automáticamente una sesión worker por cada issue de GitHub asignado, con sondeo, deduplicación, paginación y backoff por proyecto. Se configura en Tracker Intake, dentro de la configuración del proyecto y del flujo de creación de proyectos. (#2325)

Archivos del workspace y un visor de diffs que los analiza

Un nuevo panel del inspector permite explorar los archivos del workspace de una sesión. La vista Cambios ahora muestra un diff analizado con márgenes, encabezados de hunk, marcadores +/- y un resumen de líneas agregadas y eliminadas, en lugar de volcar el texto en bruto de git diff con números de línea rotos. (#2772, #3013)

Terminales de shell independientes

Abre un terminal simple que no está vinculado a ninguna sesión de agente: organizado por sesión, con nombre editable, menú contextual con clic derecho, arrastre de archivos para insertar su ruta y un desborde de pestañas razonable. (#2828, #2861, #2948, #2644, #3019, #3077)

Paleta de comandos experimental con Cmd/Ctrl+K conectada a la búsqueda de la barra lateral, un atajo para lanzar sesiones, atajos para la configuración, la navegación entre sesiones y el foco del terminal, una referencia de atajos dentro de la app, y Enter para enviar / Shift+Enter para nueva línea en la descripción de Nueva tarea, igual que en Claude y Codex. (#2687, #2695, #2795, #2954, #2955)

Otras novedades

  • Pega, arrastra o adjunta imágenes directamente en la descripción de una tarea (#2722, #2907)
  • Fila de reiniciar para actualizar con escalado por canal, una pantalla Actualizaciones renovada y una corrección para que la app de escritorio realmente haga comprobaciones de actualización en segundo plano (#2381, #2709, #2939)
  • CLI: ao agent ls con estado de instalación y auth, ao spawn resuelve el contexto del proyecto en lugar de exigir --project, --kind worker|orchestrator, ao review stop|restart y ao pr (#2371, #2416, #2669, #2673, #3043)
  • Configuración y primer uso reconstruidos: configuración rediseñada con el tablero de PRs integrado en el inspector de cada sesión, un onboarding que reemplaza las cuatro columnas kanban vacías y un proyecto temporal en el primer uso para que tengas dónde probar AO de inmediato (#2432, #2797, #2952, #2348)
  • El renderer pasó a un sistema de diseño basado en tokens (se eliminaron unas 1.4k líneas de CSS heredado), seguido de una shell de escritorio con marco unificada para macOS, Windows y Linux (#2535, #2937, #2997)

Fiabilidad

Aquí se fue la mayor parte del ciclo.

Las sesiones sobreviven a los reinicios. Las sesiones ahora reanudan la transcripción nativa del propio agente en lugar de reiniciarse en frío, con un aviso cuando AO tiene que recurrir a reproducir el prompt guardado. Llegó la restauración por harness para OpenCode, Copilot, Agy, Kimi, Grok, Qwen, Goose y Vibe, respaldada por una prueba que demuestra que las sesiones sobreviven al reinicio y a la actualización del daemon. (#2350, #2744, #2765, #2790, #2796, #2856, #2857, #2858)

La configuración del modelo realmente llega al agente. El modelo que elegías en la configuración se descartaba en silencio en la mayoría de los agentes. Se corrigió en Codex, Cline, Goose, Auggie, Pi, Vibe, Autohand, Kimi, Kilocode, Qwen y Copilot, y Kiro ahora por fin anuncia sus opciones. (#2869, #2932, #2953, #2956, #2961, #2969, #2971, #2975, #2985, #2989, #2993, #3044)

Ciclo de vida y coordinación. Las sesiones terminadas siguen terminadas. Las finalizaciones de workers inactivos llegan a un orquestador ocupado mediante un outbox duradero en lugar de perderse. El reemplazo del orquestador pasa por un traspaso seguro de la rama canónica con recuperación de worktrees obsoletos. AO ya no insiste a una sesión que está realmente en pausa en un diálogo de permisos. (#2319, #2320, #2357, #2431, #2530, #2600, #2794, #2798, #2799, #2836, #3072)

Los fallos del daemon se explican solos. Los fallos de arranque muestran el error real con instrucciones de recuperación y una salida que se puede copiar, en un aviso flotante y no en un banner que desplaza el tablero. ao spawn --issue sin un token de GitHub ya no provoca un panic en el daemon. (#2690, #2871, #2972, #3017)

tmux y terminal. Falla rápido con un mensaje claro cuando falta tmux, TERM correcto al conectarse, modo de cliente UTF-8 forzado para que los caracteres no ASCII dejen de corromperse, recolección de los procesos descendientes del panel al destruirlo para que no queden procesos zombi, Ctrl+Flecha / Ctrl+Retroceso / Ctrl+V ya no se disparan dos veces, scroll con rueda en las transcripciones de Codex y OpenCode, y un estado de arranque en lugar de un panel en blanco durante el lanzamiento. (#2259, #2312, #2466, #2499, #2512, #2586, #2602, #2650)

Actualizaciones seguras. Se resolvieron dos colisiones de versiones de migración duplicadas, y las migraciones fuera de orden ahora se aplican en lugar de omitirse en silencio. (#2294, #3035, #3092)

Windows. El acceso directo del instalador NSIS apunta al binario real, ícono .ico en la barra de tareas, corrección de ProgramFiles(x86) en ConPTY, Codex prefiere el binario de npm sobre el stub de WindowsApps, los binarios de agentes instalados con npm se encuentran al lanzar desde la GUI, notificaciones nativas, una barra de título personalizada y comprobaciones de auth en segundo plano enrutadas a través de aoprocess para que dejen de parpadear ventanas de consola. (#2404, #2481, #2566, #2583, #2666, #2691, #2838, #3006)

Revisión de PRs. El revisor queda en solo lectura mediante una lista de herramientas permitidas; el binario se verifica antes de crear una ejecución, con las opciones no disponibles desactivadas; el panel se vuelve a lanzar cuando cambia el harness en lugar de reutilizar un proceso obsoleto; detección de PRs entre forks en todos los remotos; nueva obtención forzada al superar la antigüedad máxima para que la lista no quede desactualizada, y el veredicto del head anterior se muestra como contexto mientras corre una nueva revisión. (#2193, #2194, #2368, #2506, #2678, #2750, #2767, #2800, #3008, #3009, #3049)

Bajo el capó

Se consolidó la capa de adaptadores de agentes y se eliminaron unas 3,100 líneas duplicadas, que pasaron a los paquetes compartidos agentbase y activitystate. El pipeline de versiones ganó soporte de canales, reintentos ante fallos intermitentes de firma y notarización en macOS, una protección sobre la versión de escritorio latest, una puerta e2e consultiva contra builds instaladas reales antes de cada corte estable y un workflow de build-artifacts sin firmar que se puede lanzar a demanda y genera el .deb de Linux. En calidad: una suite de smoke tests T0/P0 del renderer con instrumentación data-testid, un harness falso determinista sin LLM para e2e y verificación de tipos de TypeScript en la CI del frontend. La telemetría tiene un límite de volumen, usa IDs anónimos y ya no filtra los argumentos en bruto de la CLI en los eventos de error. (#2266, #2415, #2489, #2683, #2692, #2696, #2697, #2829, #2864, #2978, #2986)

La documentación y el sitio principal ahora se despliegan en aoagents.dev mediante GitHub Pages, con una política de privacidad, novedades detalladas por PR, enlaces de descarga que detectan la plataforma y una guía para contribuir. (#2308, #2385, #2605, #2757, #2826, #2837, #2846, #2913)

Cómo actualizar

GitHub Releases y Homebrew son las vías de instalación compatibles; el paquete de npm está congelado. Las instalaciones existentes deberían actualizarse en el lugar: las correcciones del orden de migraciones de esta versión apuntan específicamente a los fallos del tipo "se rompió después de actualizar".

Lista completa de cambios: https://github.com/OrchestratorInc/agent-orchestrator/compare/v0.10.0...v0.11.0