La une.Ce que c'est
En ligne
Le système d'exploitation agentique
Le système avec lequel je fais rouler une entreprise logicielle d'une seule personne. Des agents font une bonne partie du travail, et un test décide de ce qui est fusionné.
Privé. Chaque autre page de ce portfolio a été bâtie avec lui et roule dessus.

Composé.La pile techno
Sur quoi ça roule
Quatre couches : une mémoire, une boucle de construction, les applis d'affaires, et les agents qui roulent dedans.
Mémoire
- Markdown vault1 641 pages, versionnées dans git
- 35 skillsdes procédures que suivent les agents
- 72 scripts + timersrésumé, récolte de mots-clés, synchro des connaissances
Construction
- Archon0.10fait tourner des agents de code en boucle
- Claude Codel'agent au clavier
- Worktreesune deuxième copie du dépôt par fonctionnalité
Applis
- Bun monorepo6 applis, 31 paquets partagés
- Next.js16.2
- React19.2
- Payload3.82un seul CMS pour chaque site
Exécution
- AI SDK7.0
- Eve0.398 sous-agents qui rédigent
- Trigger.dev4.5les tâches en arrière-plan
Données + suivi
- Neon Postgresune base de données, un schéma par service
- Cloudflare R2les fichiers
- Upstashfiles et limites
- Langfuse5.4des traces sur OpenTelemetry
Sous presse.Comment ça marche
5 étapes, dans l'ordre
Comment une fonctionnalité passe d'une idée à la production sans que je tape le code.
L'écrire d'abord
Le travail commence par une page du coffre : un brief, puis une architecture, puis une liste de fonctionnalités.
En faire une spec
Une entrevue transforme une fonctionnalité en PRP : une spec à partir de laquelle un agent peut bâtir.
Bâtir dans un worktree
Archon fait tourner des agents de code dans une deuxième copie du dépôt, une ronde après l'autre.
Seule la barrière finit la boucle
validate.sh doit sortir avec 0. Jusqu'à huit rondes. Aucune étape d'IA ne peut finir la boucle en disant qu'elle a terminé.
Fusionner, puis faire rouler
Le travail est fusionné dans main. En exécution, les agents rédigent et j'approuve dans une boîte de réception.
L'épreuve.Le code
La barrière qu'aucun agent ne peut contester
code=$? echo "$code" > "$ARTIFACTS_DIR/.validate-exit" echo "validate.sh exit_code=$code" echo "--- last 150 lines of validation.log ---" tail -n 150 "$log" if [ "$code" -eq 0 ]; then echo "<promise>GREEN</promise>" fi exit 0until: GREENuntil_bash: 'test "$(cat "$ARTIFACTS_DIR/.validate-exit" 2>/dev/null)" = "0"'max_iterations: 8fresh_context: trueLa boucle finit quand un test shell lit le code de sortie 0 dans un fichier. L'opinion de l'agent sur son propre travail n'est pas une entrée.
La bobine.La démo
Le voir tourner
Corrections.Ce que ça règle
Les problèmes que ça règle
Neuf applis, neuf bases de données, neuf connexions.Six applis sur une seule base de données et une seule connexion.
Des agents qui disent « fini » quand ce ne l'est pas.Un test shell décide. Aucune étape d'IA ne peut finir la boucle.
Des connaissances perdues dans l'historique des conversations.Du markdown versionné que chaque agent lit et écrit.
Des agents qui publient tout seuls.Des brouillons seulement; j'approuve dans une boîte de réception.
Des factures d'IA sans plafond.Un budget mensuel fixe pour les agents en exécution.
Le mot de l'éditeur.Pourquoi je l'ai bâti
Pourquoi ça existe
Une personne, une entreprise, trois lignes de travail. Le système n'en est pas une; c'est ce qui fait rouler les trois.
Tout est parti d'un trou dans ma propre entreprise : le seul logiciel qui transformait le travail en revenus facturés visait la mauvaise industrie. Aujourd'hui, les specs sont la façon dont le système se bâtit lui-même.

Face au présentoir.Mieux que la moyenne
Face aux outils habituels
Face à Devin et aux agents infonuagiques de Cursor, et à Zapier ou n8n comme colle. Leur côté a été lu dans la documentation de chaque fournisseur le 2026-09-27.
| Quoi | La moyenne du marché | Cette appli |
|---|---|---|
| Qui décide que c'est fini | L'agent teste son propre travail, puis ouvre une demande de fusion. | Un script de test hors de l'agent doit sortir avec 0.page du fournisseur |
| Données | Chaque appli garde ses données; des déclencheurs les copient de l'une à l'autre. | Une base de données, un schéma par service.page du fournisseur |
| Mémoire | Des fichiers de règles et des notes enregistrées, limités à un dépôt ou à une organisation. | Un seul coffre versionné de 1 641 pages sur tout le travail.page du fournisseur |
| Approbation | Des étapes d'approbation existent, mais tu les ajoutes à chaque flux. | Des brouillons par défaut; une personne approuve dans une boîte de réception.page du fournisseur |
L'achevé d'imprimer.Le temps que ça a pris
894 commits en 297 jours
- commits
- 894
- jours avec un commit
- 71
- jours, du premier commit à aujourd'hui
- 297
- Premier commit, aujourd'hui l'appli de réservation
- Naissance du monorepo; les applis y déménagent avec leur historique
- Dernier commit. Le coffre ajoute 971 commits en 55 jours.
Mesuré : git log sur tout le monorepo, mes propres commits seulement, 2026-09-27. 646 commits de gabarits importés sont exclus.
Colophon.Sa place au registre