Agent Orchestrator 0.11.0 — Le socle

Un daemon local durable, un superviseur desktop recentré et des bases plus sûres pour les sessions, les terminaux et les workflows de pull requests.

Couvre tout ce qui a changé depuis la v0.10.0. Si vous êtes en 0.10.3, vous en avez déjà une partie.

La v0.10.0 était la première version après une réécriture complète : daemon Go, couche de sessions tmux, coque Electron. Elle fonctionnait, à peu près. Mais la première version d'une réécriture est une promesse, pas un produit.

La 0.11.0 remplace des fondations d'exécution fragiles par un daemon local durable, puis construit l'expérience desktop autour de workflows plus clairs pour les sessions, les terminaux et les pull requests.

Points forts

Votre téléphone devient une vraie surface de contrôle

L'app mobile compagnon est passée d'un simple portage à une surface livrée. Associez un téléphone à votre daemon via le réseau local avec un mot de passe grâce à Connect Mobile, suivez les terminaux à plusieurs avec zoom par pincement et déplacement, et recevez des notifications push sur iOS et Android quand une session a besoin de vous. Les Paramètres vous guident pour l'association via le réseau local ou Tailscale et renvoient directement vers l'app. (#2522, #2533, #2569, #2654, #2851, #2881, #2918, #2933)

Les agents peuvent piloter un navigateur

Les agents affichent du Markdown et pilotent un aperçu de navigateur intégré. Annotez directement dedans pour désigner à un agent un élément d'interface précis, et les liens localhost cliqués dans un terminal s'y ouvrent au lieu de vous faire sortir de l'app. (#2455, #2548, #2610, #3085)

Feature Releases : installer n'importe quelle PR ouverte

Chaque PR peut désormais produire son propre build de pré-version installable : tester un changement en cours revient à installer une vraie app plutôt qu'à faire un checkout. Le tout est derrière un nouvel interrupteur Developer Mode, pour que le sélecteur de canal ne gêne pas les autres utilisateurs. (#2459, #3039)

Import des tickets GitHub

Les projets peuvent démarrer automatiquement une session worker pour chaque ticket GitHub assigné (sondage, dédoublonnage, pagination et backoff par projet), à configurer sous Tracker Intake dans les paramètres du projet et dans le parcours de création de projet. (#2325)

Les fichiers du workspace, et une visionneuse de diff qui analyse vraiment

Un nouveau panneau d'inspecteur permet de parcourir les fichiers du workspace d'une session. La vue Modifications affiche désormais un diff analysé avec marges, en-têtes de blocs, marqueurs +/- et un résumé des ajouts et suppressions, au lieu de déverser le texte brut de git diff avec des numéros de ligne faux. (#2772, #3013)

Des terminaux shell autonomes

Ouvrez un terminal simple qui n'est lié à aucune session d'agent : délimité par session, renommable, avec un menu contextuel au clic droit, l'insertion du chemin d'un fichier par glisser-déposer et un débordement d'onglets maîtrisé. (#2828, #2861, #2948, #2644, #3019, #3077)

Une navigation pensée pour le clavier

Palette de commandes Cmd/Ctrl+K expérimentale reliée à la recherche de la barre latérale, raccourci de lancement, raccourcis pour les paramètres, la navigation entre sessions et le focus du terminal, référence des raccourcis intégrée à l'app, et Entrée pour envoyer / Maj+Entrée pour un saut de ligne dans le brief Nouvelle tâche, comme dans Claude et Codex. (#2687, #2695, #2795, #2954, #2955)

Autres nouveautés

  • Collez, glissez-déposez ou joignez des images directement dans un brief de tâche (#2722, #2907)
  • Ligne Restart-to-update avec escalade par canal, écran Updates repensé, et une correction pour que l'app desktop effectue tout simplement ses vérifications de mise à jour en arrière-plan (#2381, #2709, #2939)
  • CLI : ao agent ls avec l'état d'installation et d'authentification, ao spawn qui résout le contexte du projet au lieu d'exiger --project, --kind worker|orchestrator, ao review stop|restart, ao pr (#2371, #2416, #2669, #2673, #3043)
  • Paramètres et premier lancement reconstruits : paramètres repensés avec le tableau des PR intégré à l'inspecteur de chaque session, un onboarding à la place de quatre colonnes kanban vides, et un projet de test au premier lancement pour pouvoir essayer AO immédiatement (#2432, #2797, #2952, #2348)
  • Le renderer est passé à un design system à base de tokens (environ 1 400 lignes de CSS historique supprimées), suivi d'une coque desktop encadrée unifiée sur macOS, Windows et Linux (#2535, #2937, #2997)

Fiabilité

C'est là que la majeure partie du cycle est passée.

Les sessions survivent aux redémarrages. Les sessions reprennent désormais la transcription native de l'agent au lieu de redémarrer à froid, avec un toast quand AO doit se rabattre sur la relecture du prompt enregistré. La restauration propre à chaque harnais est arrivée pour OpenCode, Copilot, Agy, Kimi, Grok, Qwen, Goose et Vibe, appuyée par un test prouvant que les sessions survivent au redémarrage du daemon et à sa mise à niveau. (#2350, #2744, #2765, #2790, #2796, #2856, #2857, #2858)

La configuration du modèle atteint vraiment l'agent. Le modèle choisi dans les paramètres était ignoré sans avertissement pour la plupart des agents. C'est corrigé pour Codex, Cline, Goose, Auggie, Pi, Vibe, Autohand, Kimi, Kilocode, Qwen et Copilot, et Kiro annonce enfin ses options. (#2869, #2932, #2953, #2956, #2961, #2969, #2971, #2975, #2985, #2989, #2993, #3044)

Cycle de vie et coordination. Les sessions tuées le restent. Les fins de travail des workers inactifs atteignent un orchestrateur occupé via une boîte d'envoi durable au lieu d'être perdues. Le remplacement d'un orchestrateur passe par un relais sûr sur la branche canonique, avec récupération des worktrees obsolètes. AO ne relance plus une session réellement en pause sur une boîte de dialogue de permission. (#2319, #2320, #2357, #2431, #2530, #2600, #2794, #2798, #2799, #2836, #3072)

Les pannes du daemon s'expliquent d'elles-mêmes. Les échecs de démarrage affichent la véritable erreur avec des instructions de reprise et une sortie copiable, dans un toast flottant plutôt que dans une bannière qui bouscule le tableau. ao spawn --issue sans token GitHub ne fait plus paniquer le daemon. (#2690, #2871, #2972, #3017)

tmux et terminal. Échec rapide avec un message clair quand tmux est absent, TERM correct au rattachement, mode client UTF-8 forcé pour que les caractères non ASCII ne soient plus corrompus, descendants des volets nettoyés à la destruction pour éviter les processus zombies, fin du double déclenchement de Ctrl+Flèche / Ctrl+Retour arrière / Ctrl+V, défilement à la molette dans les transcriptions Codex et OpenCode, et un état de démarrage au lieu d'un volet vide pendant le lancement. (#2259, #2312, #2466, #2499, #2512, #2586, #2602, #2650)

Mises à niveau sûres. Deux collisions de numéros de version de migration en double ont été résolues, et les migrations dans le désordre sont désormais appliquées au lieu d'être ignorées en silence. (#2294, #3035, #3092)

Windows. Le raccourci de l'installateur NSIS pointe vers le vrai binaire, icône .ico dans la barre des tâches, correction ConPTY pour ProgramFiles(x86), Codex préfère le binaire npm au stub WindowsApps, les binaires d'agents installés via npm sont trouvés quand AO est lancé depuis l'interface graphique, notifications natives, barre de titre personnalisée, et vérifications d'authentification en arrière-plan passant par aoprocess pour que les fenêtres de console cessent de clignoter. (#2404, #2481, #2566, #2583, #2666, #2691, #2838, #3006)

Revue de PR. Relecteur en lecture seule imposé via une liste d'outils autorisés, binaire vérifié au préalable avec les options indisponibles désactivées avant la création d'une exécution, volet relancé quand le harnais change au lieu de réutiliser un processus obsolète, détection des PR cross-fork sur tous les remotes, nouvelle récupération forcée au-delà d'un âge maximal pour que la liste ne devienne plus obsolète, et verdict sur le head précédent affiché comme contexte pendant qu'une nouvelle revue tourne. (#2193, #2194, #2368, #2506, #2678, #2750, #2767, #2800, #3008, #3009, #3049)

Sous le capot

La couche d'adaptateurs d'agents a été consolidée, ce qui élimine environ 3 100 lignes de duplication au profit des packages partagés agentbase et activitystate. Le pipeline de publication tient désormais compte des canaux, relance les échecs aléatoires de signature et de notarisation macOS, protège la version desktop latest, ajoute une étape e2e consultative sur de vrais builds installés avant chaque version stable, et propose un workflow déclenchable de build d'artefacts non signés qui produit le .deb Linux. Côté qualité : une suite de smoke tests T0/P0 du renderer instrumentée avec data-testid, un faux harnais déterministe sans LLM pour l'e2e, et la vérification de types TypeScript dans la CI frontend. La télémétrie a été plafonnée en volume, est passée à des identifiants anonymes et ne divulgue plus les arguments bruts de la CLI dans les événements d'erreur. (#2266, #2415, #2489, #2683, #2692, #2696, #2697, #2829, #2864, #2978, #2986)

La documentation et le site vitrine sont désormais déployés sur aoagents.dev via GitHub Pages, avec une politique de confidentialité, des nouveautés détaillées PR par PR, des liens de téléchargement qui détectent la plateforme et un guide de contribution. (#2308, #2385, #2605, #2757, #2826, #2837, #2846, #2913)

Mise à niveau

GitHub Releases et Homebrew sont les modes d'installation pris en charge ; le package npm est gelé. Les installations existantes doivent se mettre à jour sur place : les corrections d'ordre des migrations de cette version visent précisément la catégorie de pannes « ça a cassé après la mise à jour ».

Liste complète des changements : https://github.com/OrchestratorInc/agent-orchestrator/compare/v0.10.0...v0.11.0