<Header /> — le mode dev suit de page en page (?mode=dev) Gauthier Augedev full-stack
Tous les projets
<CaseHero /> — titre, résumé et stack lus dans le frontmatter

Application desktop · projet personnel · en cours

devtool

Mon tableau de bord de dev : mes projets, mes serveurs et l'agent IA qui code avec moi.

  • TypeScript
  • React
  • Electron
  • Bun
  • Hono
  • Zod
Spécification écrite · écrans maquettés
L'écran « Le point » de devtool sur ordinateur, et sa version téléphone — le projet qui attend une réponse, l'avancement de chaque projet, ce qui a bougé depuis la dernière visite
<Content /> — Markdown compilé en HTML au build · aucun rendu côté navigateur

Le point de départ

Entre plusieurs projets, des serveurs et un agent IA qui code avec moi au quotidien, je perdais le fil : où en est cette spec, pourquoi a-t-on pris telle décision, ce serveur tourne-t-il encore, l’agent avance-t-il ou tourne-t-il en rond ?

Deux critères de réussite, dans cet ordre : je l’ouvre tous les jours sans me forcer, et je peux défendre son architecture en entretien technique.

Ce que l’outil doit faire

  • Suivre l’avancement. Chaque projet, étape de spec par étape de spec.
  • Garder la trace des décisions. Et des reprises : un test cassé, un changement refusé, un retour en arrière.
  • Voir l’état des serveurs. D’un coup d’œil, sans se connecter à chacun.
  • Suivre une session d’agent IA en direct. Il avance, il est bloqué, il attend une réponse, ou il est parti en boucle.

Mes choix, et pourquoi

  • Un seul concept : l’événement. Une étape terminée, un serveur qui répond, une décision : tout est un fait daté et immuable, ajouté à un journal. L’état d’un projet n’est jamais stocké, il se recalcule à partir du journal.
  • Lecture seule par construction. Les serveurs envoient leur état ; l’outil ne s’y connecte jamais. Aucun secret d’infrastructure stocké, et aucun chemin de code capable d’écrire sur une machine distante.
  • Un collecteur ennuyeux et fiable. Un petit binaire compilé avec Bun, appelé à chaque action de l’agent : il démarre en quelques millisecondes, garde les événements dans une file locale et les envoie sans bloquer le travail. Un événement rejoué deux fois ne crée pas de doublon.
  • TypeScript de bout en bout. Les schémas des événements sont partagés entre le collecteur et l’API : un champ ajouté d’un côté casse la compilation de l’autre, avant la production.
  • Un seul client React, deux coquilles. Le même code pour le web et l’application de bureau Electron. La version téléphone ne diffère que par la densité d’information.
  • Aucun code ne quitte la machine. Des noms d’étapes, des horodatages, des identifiants de commit. Jamais de diff, jamais de source.

Ce que je n’ajouterai pas

  • Des statistiques avant d’avoir des données. Enregistrer maintenant, analyser dans quelques mois.
  • Des actions à distance. Redémarrer ou déployer depuis l’outil en ferait une cible.
  • Un énième outil de monitoring. La valeur est dans le croisement des sources, pas dans la surveillance seule.

Où j’en suis

La spécification de la première version est écrite, et les écrans sont maquettés sur ordinateur et sur téléphone. Le périmètre de départ tient en une phrase : un projet, une spec, un écran. L’ordre de construction suit l’architecture : l’API et son domaine d’abord, puis le collecteur, puis l’application de bureau.

<Contact /> — des liens mailto pré-remplis : ni formulaire, ni serveur, ni traqueur

Un projet ? Parlons-en.

Réponse sous 48 h. Un premier échange de 20 minutes, gratuit et sans engagement.

contact@gauthierdev.fr