CAFLEET : l’orchestrateur d’agents de codage avec transparence totale
https://himkt.github.io/cafleet
📌 CAFLEET est un message broker et registre de membres pour les agents de codage, avec une CLI unifiée et une WebUI admin sur SQLite, permettant aux équipes de développement de faire tourner des équipes multi-agents auditables dans tmux ou herdr.
Agent Teams réinventé pour le codage collaboratif à travers plusieurs backends d’agents de codage, avec transparence totale du code. C’est l’approche de CAFleet : un message broker persistant, un registre de membres, et une interface unifiée qui permet à Claude Code, OpenAI Codex CLI et OpenCode de coexister dans la même flotte. Pas de serveur HTTP requis — la CLI accède à SQLite directement via un module partagé broker, donc tout reste local et audit.
Le projet, développé par himkt avec 41 étoiles, 3 forks et 2,188 commits (v0.18.1, juillet 2026), est principalement en Python (89,2 %) avec du TypeScript (7,5 %) et Vue (2,1 %). La licence MIT invite à l’expérimentation et à la contribution. C’est un outil conçu pour les développeurs et les opérateurs qui font tourner des équipes d’agents de codage auditables, avec des messages persistants, des notifications push, la surveillance des membres et un développement piloté par des documents de conception (SDD skills).
J’apprécie la flexibilité des backends multiplexeur. CAFleet supporte tmux et herdr, détectés automatiquement. Les messages poussés sont des aperçus inline de 2 lignes keystroked dans le pane du destinataire, donc on regarde chaque membre se réveiller et répondre. La surveillance des membres est assurée par le monitoring member et son loop cafleet monitor, qui fournit le supervision tick. Le monitoring member est le premier cafleet member create avec --role monitor, et le Director ne lance jamais le monitor lui-même.
L’interface de configuration est fine. Chaque backend a un fichier de config et un système de permissions différent. Claude Code utilise ~/.claude/settings.json avec des permissions pour Bash(cafleet *) et une règle plus spécifique pour cafleet member exec qui reste en mode prompt.
OpenCode a un agent definition cafleet à ~/.opencode/agents/cafleet.md. Aucune configuration manuelle n’est requise : le premier cafleet member create --coding-agent opencode écrit le preset agent à ~/.opencode/agents/cafleet.md s’il n’existe pas déjà. Le preset inclut le ruleset, la recette de refresh après les upgrades, et la règle MCP-server.
Le workflow de confiance du répertoire de travail est important. Les agents de codage demandent une confirmation de confiance la première fois qu’ils démarrent dans un répertoire qu’ils n’ont jamais vu. Faites confiance au workspace à l’avance : lancez votre agent de codage une fois dans le répertoire où les panes de membres tourneront et acceptez son premier prompt, ou ajoutez une entrée de confiance dans le fichier de configuration de l’agent. La confiance est accordée par répertoire, donc chaque git worktree a besoin de sa propre approbation.
Je trouve la capacité de mélanger les backends particulièrement pertinente. Un seul Director peut faire tourner des membres claude, codex, et opencode dans la même flotte — il n’y a pas de différences de niveau broker entre les backends. Le guide de mixed-backend team crée une flotte avec un membre par backend et envoie un message à chacun. L’agent charge le skill cafleet et lit son reference/supervision.md Director-only avant de faire naître les membres. Le supervision tick est fourni par le loop cafleet monitor du monitoring member et fonctionne le même sur n’importe quel backend (claude, codex, ou opencode).
La configuration des membres est flexible. Chaque membre a un prompt texte (--text), une description, un backend, un rôle (monitor par défaut), et optionnellement un model pinning (--model sonnet). Le Director est créé avec cafleet fleet create --name "demo" --coding-agent claude, qui enregistre votre pane actuel comme le pane du root Director. Les membres sont créés avec cafleet member create --fleet-id 1 --name "alice" --description "claude member" --coding-agent claude --text "You are alice. Wait for instructions.". Chaque message est envoyé avec cafleet message send --fleet-id 1 --from-member-id 2 --to-member-id 3 --text "hi", et l’enveloppe et l’aperçu inline de 2 lignes sont identiques pour chaque backend.
L’isolation des flottes est assurée par le partitionnement des membres en namespaces isolés. Le modèle de données de CAFleet inclut fleet, member, message, et des métadonnées. L’enveloppe de message transporte from, to, text, timestamp, et d’autres champs. Les options CLI couvrent chaque sous-commande et chaque flag. Les backends multiplexeur sont enfichables, avec tmux et herdr supportés. L’API WebUI permet l’administration via une interface web. Les backends d’agents de codage sont extensibles.
Le développement piloté par des documents de conception (SDD skills) est un élément clé. Les skills de CAFleet incluent cafleet:cafleet, cafleet:cafleet-design-doc, et cafleet:cafleet-research. L’approche SDD (Specification-Driven Development) permet de définir des specs qui guident le développement. Le flow de contribution local inclut le layout du projet, le loop de développement local, et le flow de contribution piloté par SDD.
CAFleet v1.5.0 est disponible en téléchargement via uv tool install cafleet ou pip install cafleet, suivi de cafleet setup pour migrer le schéma de base de données et installer les skills. La documentation complète est sur https://himkt.github.io/cafleet/, avec quickstart, how-to guides, concepts, spécifications, contribution et API Reference.
La limite principale est la complexité initiale : configuration des backends, confiance des répertoires, compréhension du workflow multi-agent. Mais une fois configuré, la puissance de l’approche est évidente. Les équipes qui veulent collaborer avec plusieurs agents de codage différents, avec transparence totale et auditabilité, trouveront dans CAFleet une solution qui s’intègre naturellement à leurs workflows existants.
CAFleet s’adresse aux développeurs et opérateurs qui font tourner des équipes d’agents de codage auditables. C’est une alternative aux approches centralisées et aux APIs propriétaires, avec une philosophie open-source, locale et transparente. Pour les équipes qui veulent collaborer sur du code avec plusieurs agents de codage, tout en gardant le contrôle et l’auditabilité, CAFleet est l’outil qu’il leur faut.
Sources
