Agent Cockpit

Un orchestrateur d'agents IA qui tourne sur ma machine : une file de tâches, un arbre git isolé par tâche, et aucune action sensible sans mon accord.

TauriReactTypeScript Nodegit worktreelocal-first

Le problème

Faire travailler plusieurs agents de code en parallèle pose trois problèmes très concrets : ils se marchent dessus dans le même dépôt, ils consomment un quota qu'on ne voit pas, et quand l'un d'eux échoue à moitié, rien ne le dit. Les lancer à la main dans des terminaux séparés ne tient plus au-delà de deux ou trois tâches.

Architecture

Architecture d'Agent Cockpit Application Tauri locale. L'interface lit et écrit un store de fichiers ; le runner prend les tâches de la file et lance chaque agent dans son propre arbre git. Les plans de l'agent ceo ne créent rien sans validation humaine. Tauri · macOS — aucune donnée ne quitte la machine plan crée les tâches lance écrit UI React À décider · Tâches Agents · Projets Store fichiers locaux COCKPIT_DATA Runner file · verrous reprise auto Validation humaine, obligatoire plan ceo ≤ 8 tâches Agent de code périmètre explicite git worktree 1 arbre / tâche
Tout tourne sur le Mac : pas de serveur, pas de jeton d'API en transit.
Version texte
Application Tauri (macOS) — aucune donnée ne quitte la machine
  ├── UI React      À décider · Tâches · Agents · Projets · Recherche
  ├── Runner local  prend les tâches de la file, lance l'agent, rend le verrou
  ├── Store         fichiers sous COCKPIT_DATA, pas de service distant
  └── git worktree  un arbre de travail isolé par tâche

Agent « ceo » : objectif → plan YAML (8 tâches max) → approbation → file

Les choix qui comptent

La leçon

Un outil qui échoue en silence est pire qu'un outil qui plante. Quatre incidents successifs venaient tous d'un défaut invisible, jamais d'un défaut grave : un crash React sans garde-fou (écran noir), un runner qui tournait sur l'ancien code sans le signaler, un bouton « Valider » actif sur un plan inexploitable, une tâche figée par un verrou orphelin. Chaque correctif consiste à rendre l'état dégradé visible — garde-fou React, empreinte de schéma, blocage explicite, reprise automatique. Depuis, chaque fonctionnalité se conçoit en se demandant d'abord à quoi elle ressemble quand elle réussit à moitié.

État

Outil personnel en usage quotidien, pas un produit : il n'est pas déployé sur le cluster et n'est pas distribué. Chiffres relevés dans le dépôt le 21/09/2026.