Lien vers la page Github de l'outil
đ Le produit miracle est arrivĂ© ! (non)
Ah, le suivi de projet, les tickets, la documentation et la synchronisation Git⊠une grande passion qui anime tous les dĂ©veloppeurs et dĂ©veloppeuses de ce monde. Câest une certaine dĂ©finition de lâenfer que dâessayer dâindustrialiser tout ça (on te dĂ©teste tous, Jira đ ).
Sauf quâon a eu un nouvel arrivant dans le game : lâIA. Alors si jâai encore quelques doutes sur la future fin du mĂ©tier de dĂ©veloppeur et lâavĂšnement du vide-coding, il y a un truc sur lequel lâIA est vachement bonne : lâapplication de patterns et la gestion de fichiers markdown (.md pour les intimes).
Et vous savez quoi ? Il y a justement un outil de gestion de notes qui gĂšre tout avec des fichiers Markdown : Obsidian. Son truc, câest de centraliser des notes .md, au travers des metadata de leur frontmatter, ce qui permet de gĂ©nĂ©rer des vues et des reprĂ©sentations de type Kanban.
DĂ©but 2026, jâai eu une illumination et je me suis dit quâil y avait moyen dâentiĂšrement automatiser le processus de gestion de projet en combinant Obsidian pour le frontend et lâIA pour le backend (mon cĆur dâingĂ©nieur qui saigne fort Ă lâĂ©criture de cette phrase⊠đ).
Ce que je vais vous prĂ©senter ici, câest donc un processus de gestion de projet via Obsidian, centralisĂ© dans la codebase et automatisĂ© par IA (applicable au game dev ou non) :
- une centralisation documentataire (spĂ©cifications fonctionnelles / techniques, dossier dâarchitecture / exploitation, schĂ©mas Excalidraw et Mermaid, dossiers de rĂ©fĂ©rences de designâŠ)
- une centralisation des skills IA, qui deviennent agnostiques vis-à -vis de votre provider une fois le setup fait, avec une réplication automatisée de skills minimalistes à tous les clients IA présents dans le projet
- un workflow Kanban automatisĂ©, gĂ©rĂ© au travers de la discussion avec lâIA
- une synchronisation de la rédaction des commits Git avec le ticket Kanban associé
- un suivi de projet intĂ©grĂ© au code : chaque partie dâune feature livrĂ©e est commitĂ©e ensemble (doc, tickets et code)
Le concept vous intĂ©resse ? Je vous renvoie vers la page GitHub pour les processus dâinstallation et dâutilisation : https://github.com/Keilthar/Obsidian-Workflow
Mon ressenti personnel sur cet outil
Ăa mâenlĂšve une charge folle de gestion de lâavancement pour un projet ambitieux comme le mien. Jâai maintenant un workflow simple pour stocker une idĂ©e, puis la dĂ©composer avec lâIA en tĂąches logiques, que je peux traiter au fil de lâeau sans devoir rĂ©expliquer oĂč on en est, ce quâon a fait, oĂč on va et pourquoi⊠ce qui est une charge mentale consĂ©quente quand on travaille avec lâIA (le babysitting virtuel đŒ).
Jây gagne aussi une documentation fiable (que je ne lis absolument pas, lâIA me la rĂ©sume đ⊠un autre sujet qui serait dâailleurs fort intĂ©ressant Ă philosopher : a-t-on encore besoin de docs dĂ©diĂ©es aux humains ?).
Et un Git beaucoup plus propre, que ce soit au niveau dĂ©claratif (titre standardisĂ©, description complĂšte), en termes de dĂ©coupage (lots de fichiers logiques agrĂ©gĂ©s par lâIA et non plus par ma flemme monumentale) ou de rĂ©currence (je tends lentement vers du commit plus atomique).
Suite du devlog
Ici, on ne va pas sâintĂ©resser Ă comment sâen servir (vous avez un beau README pour ça), mais Ă comment je lâai designĂ©, avec la logique sous-jacente et les problĂ©matiques, ainsi quâĂ la maniĂšre dont je lâai implĂ©mentĂ© pour mon gamedev.
LâallĂšgement par segmentation
Le gamedev a une certaine particularitĂ© : on a des pĂ©rimĂštres fonctionnels trĂšs distincts Ă devoir gĂ©rer dans la mĂȘme application.
GĂ©rer le comportement et le pathfinding des unitĂ©s, ça nâa rien Ă voir avec la gestion des inputs du joueur pour contrĂŽler son personnage, qui nâa rien Ă voir avec la gestion des assets pour gĂ©nĂ©rer la carte, etc., etc., etc.
(et je ne vous parle mĂȘme pas des sous-sections avec les besoins spĂ©cifiques par corps de mĂ©tier entre dev, design 2D/3D, animation, VFX, UI/UX, sound designâŠ)
Et mĂȘme si certaines features peuvent ĂȘtre Ă la croisĂ©e de plusieurs pĂ©rimĂštres fonctionnels, câest quand mĂȘme pratique de pouvoir organiser lâinformation par domaine. Ăa a donc Ă©tĂ© lâun des principes cĆur de mon design : la possibilitĂ© de segmenter la gestion du projet et de ne pas tout avoir dans un immense Kanban oĂč je vais devoir filtrer parmi des dizaines de pĂ©rimĂštres Ă chaque manipulation.
Dans le cadre de mon jeu, la structure ressemble à ça :
/AI/Generic : ensemble des procĂ©dures utilisĂ©es par lâIA. Ce dossier est agnostique, indĂ©pendant du projet concernĂ© et de lâIA qui va sâen servir. Il contient :
- les processus pour interagir avec /Obsidian et /Git
- des skills transverses (exemple : /SuperPowers)
- mes skills perso de coding (exemple : /Unity), qui mĂ©riteront un article dĂ©diĂ© tellement ça rend le coding par IA plus agrĂ©ableâŠ
Project_Management_Workflow.md est le point dâentrĂ©e du rĂ©pertoire : il dĂ©crit Ă lâIA comment et quand utiliser la documentation dans ces rĂ©pertoires.
/AI/Project : contient des Ă©lĂ©ments indicatifs spĂ©cifiques au projet pour donner du contexte Ă lâIA.
Project_Description.md est le point dâentrĂ©e de ce rĂ©pertoire : il contient une description gĂ©nĂ©rale du jeu et rĂ©fĂ©rencera dâautres docs au besoin (exemple ToDo)
Domains :
- un répertoire par domaine fonctionnel de mon jeu. Chaque répertoire porte sa documentation, un Kanban dédié et les notes associées aux tickets
- deux fichiers
.base, Documentation - Project et Kanban - Project : ce sont des Kanbans globaux qui listent respectivement toute la doc et tous les tickets existants dans le vault Obsidian
Templates : templates utilisĂ©s par lâIA pour ajouter de nouveaux domaines avec toute lâarborescence et crĂ©er des tickets Kanban normalisĂ©s.
Mini Kanbans et IA : le combo gagnant (de tokens)MĂȘme si vous n'avez pas un besoin impĂ©rieux d'un tel dĂ©coupage fonctionnel, vous y avez tout de mĂȘme un intĂ©rĂȘt Ă©conomique :ne pas faire exploser le contexte de lâIA en lui faisant charger un kanban unique composĂ© de centaines de tickets (voire plus si vous faites des tickets/commits atomiques) !
Et pour un Kanban global de suivi dâun MVP ? Des fichiers BASE ! Câest une feature dâagrĂ©gation dâObsidian utilisant les metadata des tickets â 0 coĂ»t IA !
Le big brain AI đ§
Comme je lâai dĂ©jĂ mentionnĂ©, le setup IA se veut le plus agnostique et centralisĂ© que possible. Mais vous allez me dire : pourquoi ?
Eh bien, jâai deux problĂšmes majeurs :
- le premier : quand je change une procĂ©dure et que je switch dâune IA Ă lâautre (au hasard Claude et Codex), je suis obligĂ© de dupliquer laborieusement les procĂ©dures dans tous les sous-rĂ©pertoires concernĂ©s
- le second : jâai des skills qui se superposent en termes de process. Par exemple, le skill
git commitet le skillproject-managementont tous les deux besoin dâaccĂ©der Ă la procĂ©dure de lecture/Ă©dition dâun ticket. Sans centralisation, je me retrouve Ă dupliquer la mĂȘme procĂ©dure dans les deux skills. Et si je veux la changer et que jâen oublie un⊠kaboum đ„
LâidĂ©e est donc de crĂ©er un systĂšme Ă trois niveaux de responsabilitĂ©s :
- des fichiers minimalistes cĂŽtĂ© AI providers : ils ne portent aucune responsabilitĂ© fonctionnelle et ne font que consommer des points dâentrĂ©e centralisĂ©s dans le vault
- ces points dâentrĂ©e ne vont dĂ©finir quâune logique dâenchaĂźnement dâactions, mais pas le dĂ©tail de lâaction elle-mĂȘme
- des procédures détaillées par actions (
Ticket_Create,Ticket_Move,Ticket_Remove) qui peuvent ĂȘtre consommĂ©es par plusieurs points dâentrĂ©e
Câest littĂ©ralement du KISS appliquĂ© Ă de la gestion de projet. Chaque acteur a un pĂ©rimĂštre restreint :
- lâAI provider est lâinterface pour le client
- lâentry point est lâinterface pour lâAI provider
- le process est le consommable de bout de chaĂźne, partageable et atomique
CĂŽtĂ© IA, on se retrouve alors avec des fichiers dâune simplicitĂ© dĂ©concertante : une simple liste de lecture, parfois associĂ©e Ă un trigger contextuel.
Et donc, pour aller au bout de la dĂ©marche, jâai créé un skill qui crĂ©e des skills minimalistes et les duplique entre tous les clients IA dĂ©tectĂ©s dans le rĂ©pertoire. Je ne me pose donc plus de question dĂ©sormais sur la synchronisation de mes IA avec mes process : seuls comptent mes points dâentrĂ©e et les processus unitaires par action en dessous. (Câest un peu drĂŽle dâailleurs, câest lâexacte mĂȘme approche que ma façon dâimplĂ©menter lâECS, câest du data driven project management par essence đ)
à quoi servent les 2 skills vu qu'ils répÚtent un pointeur présent dans AGENTS.md et CLAUDE.md ?Parfois l'IA se perd dans son contexte et ne suit plus certaines consignes, ça fait partie de ses inconvénients intrinsÚques.Si je constate une déviance ou aprÚs
/compactde la discussion, je tape simplement/project-managementou/superpowerspour forcer lâIA Ă relire les procĂ©dures et ainsi les faire remonter dans son contexte. Avec cette technique, je peux maintenir une certaine cohĂ©rence de lâIA mĂȘme dans des discussions longues.
La metadata, ou plutĂŽt le metasystem AI
Techniquement parlant, le Kanban nâest quâun support visuel dans ce process et plus du tout une interface, au sens interactif du terme. LâIA est Ă la fois le backend (ou plutĂŽt les .md quâelle tente de suivre) et la main invisible, pas du marchĂ©, mais du frontend.
Mais on a besoin dâun liant entre les deux couches. Dans une application standard, ce liant est la base de donnĂ©es. Ici, la base de donnĂ©es, ce sont les metadata (au sens littĂ©ral du terme : la donnĂ©e de la donnĂ©e).
Et dans le cadre de ce combo IA et Obsidian, on a deux sources de metadata :
- les
.mdqui portent la description contextuelle des actions (descriptif projet, suite logique dâactions, documentation technique et fonctionnelleâŠ), qui sont les rails permettant Ă lâIA de savoir pourquoi elle fait ce quâelle fait et comment. La logique backend, en soi. Sans ça, vous finissez avec un conducteur aveugle qui suivrait les ordres vocaux dâun GPS : âtournez Ă gaucheâ. Pourquoi ? Quel angle ? Quelle vitesse ? Je sais pas⊠boom, le mur. Et câest pour ça que je traite les fichiers.mdcomme je traite de lâECS, câest le mĂȘme fondement logique. - les frontmatters des tickets, qui assurent la stabilitĂ© du systĂšme. De quel Ă©tat je pars ? Vers quel Ă©tat je peux aller ? Et cette metadata permet de faire le lien avec la reprĂ©sentation frontend.
Et câest rigolo, mais en soi, le frontmatter YAML, câest juste une base de donnĂ©es sur fichier plat. Ici, celui de mes tickets :
---
ID:
Description:
domain:
related_domains: []
features: []
status:
mvp:
Created:
Done:
---Et câest lĂ que la surcouche Obsidian permet dâallĂ©ger le processus cĂŽtĂ© IA. Le fait de pouvoir agrĂ©ger les notes par leur metadata dans des vues, câest ce qui fait la force du combo pour nous, utilisateurs. Je peux agrĂ©ger via :
- le plugin Kanban qui sâappuie sur un
.mdbrut - la feature BASE qui utilise une
IndexedDBinterne, optimisĂ©e pour de lâaffichage de type listing / tableau - voire un script
DataviewJS, avec son propre moteur dâindexation et une plus grande flexibilitĂ© de rendu
En soi, on pourrait faire des rendus bien plus intĂ©ressants que ce que jâai implĂ©mentĂ© ici. Et surtout verrouiller le systĂšme, empĂȘchant de mauvaises manipulations par lâutilisateur, voire permettre une approche collaborative avec un verrou logique par IA (mĂȘme si ça nâest pas une solution parfaite).
Bref, je nâai fait ici quâeffleurer les possibilitĂ©s. Ăa ne reste quâun side project montĂ© en quelques mois pour mâaider au quotidien dans mon gamedev, qui reste ma prioritĂ©. Mais je vois un potentiel Ă©norme comme alternative Ă ce genre de solution, surtout pour des projets Ă petite communautĂ©, flexibles et itĂ©ratifs.
JâespĂšre en tout cas que ça vous donnera envie dâutiliser Obsidian, dont je nâai que peu dĂ©veloppĂ© ici les capacitĂ©s en tant quâoutil de gestion de notes Ă part entiĂšre.
Sur ce, messieurs-dames, Ă vos tickets !








