Avant Forge, j'avais construit avec Claude un Guide Design IA : une porte d'entrée pour comprendre l'écosystème des outils IA et utiliser les bons prompts au bon moment. Un cadre structuré, mais jamais mis à l'épreuve sur un vrai projet de bout en bout.
Forge est né de cette question : et si l'IA n'était pas un outil que j'utilise, mais une équipe avec laquelle je travaille ? Je voulais un problème réel pour ne pas tricher, avec de la recherche utilisateur, des arbitrages, des edge cases qui ne se laissent pas résoudre proprement. Le knowledge management me l'a donné. Le vrai sujet, c'était de tester le guide en conditions réelles : voir où l'IA démultiplie ce que je fais, où elle atteint ses limites, et où elle a besoin d'être recadrée. Ce que j'ai appris sur ces limites et ce potentiel est raconté à la fin de cette page.
Nom et identité visuelle :
Le nom vient d'une métaphore, une idée qui arrive est comme du métal en fusion, malléable mais seulement pour un temps limité. Si tu ne la forges pas pendant qu'elle est chaude, elle refroidit et tu perds la forme qu'elle aurait pu prendre. Forge a été retenu contre une dizaine d'alternatives (Weave, Loom, Stitch...) parce qu'aucune ne portait les deux mouvements de l'app à la fois : capturer et transformer.
La charte graphique traduit la même métaphore plutôt que de l'illustrer en façade. Fond presque noir (jamais un noir tech froid) comme l'obscurité où une forge se remarque ; texte chaud plutôt que blanc pur ou gris neutre comme la cendre; un seul gradient signature, rouge braise vers ambre étincelle, réservé aux moments où quelque chose se transforme réellement : le CTA principal, le logo, un signal actif. Le CTA de génération reprend cette même métaphore dans son nom, "Forger avec l'IA", plutôt qu'une étiquette neutre : il décrit littéralement le geste, transformer la matière brute, pas l'inventer.
CONTEXTE
Qu'est ce qui a suscité la création de cette app ?
J'ai cherché un problème assez riche pour justifier une vraie équipe, même une équipe IA. Je l'ai trouvé dans un paradoxe des knowledge workers les plus actifs : plus ils capturent, moins ils réutilisent. Chaque session de production repart de zéro, non par manque de matière, mais parce que le coût perçu du tri dépasse mentalement le coût de repartir à blanc. Sur un produit de knowledge management, ce comportement corrèle directement avec un engagement réduit et un risque de churn sur le segment à plus haute valeur.
Problématique
Rendre le coût d'accès à la matière existante perceptiblement inférieur au coût de la page blanche, en moins de 10 secondes.
Ce que j'ai choisi et pourquoi
La recherche utilisateur (n=10) a invalidé l'hypothèse implicite du secteur : si l'utilisateur a des notes, il s'en servira. Les knowledge workers accumulent des fragments régulièrement, mais démarrent quand même chaque session à zéro. Le blocage n'est pas un problème d'accès, c'est un calcul mental fait en moins de trois secondes : est-ce que ça vaut le coup de trier, ou je repars plus vite de zéro ?
J'ai choisi de me greffer sur le rituel de démarrage plutôt que d'essayer de le remplacer. La recherche a montré que le blocage se joue dans les premières secondes d'une session, pas pendant la capture, donc c'est là que Forge intervient : un signal en popup bas-droite (bottom sheet rétractable sur mobile), non bloquant, qui répond en moins de 10 secondes à la question implicite de l'utilisateur, ai-je de la matière sur ce sujet ?
Le principe de ton est non négociable et s'applique à tous les microtextes sans exception, y compris les messages d'erreur et les guardrails : l'information est toujours cadrée comme un potentiel, jamais comme un constat d'échec. "14 fragments disponibles sur ce sujet" motive. "Tu n'as pas utilisé 14 fragments depuis 30 jours" culpabilise.
Ce que j'ai choisi de ne pas faire
Intervenir dans la prise de notes : La tentation initiale était de créer une feature d'organisation des fragments, tagger, regrouper, structurer. Mauvais problème : l'utilisateur ne souffre pas d'un manque d'organisation, mais d'une incertitude sur la valeur de ce qu'il a. Toucher à la capture aurait créé de la friction sur le rituel le plus ancré, celui qu'on ne peut pas se permettre de dégrader.
Rendre le signal bloquant : Une modal centrée aurait semblé plus impactante, mais l'utilisateur doit pouvoir l'ignorer sans friction, c'est précisément ce qui rend le guardrail de rejet (> 15 %) significatif : si le signal est facile à ignorer et qu'il est quand même rejeté massivement, c'est un signal de fond sur sa valeur perçue, pas sur son placement.
Traiter le cold start en V1 :L'empty state du nouvel utilisateur sans aucun fragment est explicitement hors scope V1, avec une condition de promotion quantifiée (cold start > 30 % des nouveaux users à 30 j). J'ai préféré documenter cette limite et poser un gate de validation traçable plutôt que noyer le périmètre dans une demi-solution.
Construire la plateforme complète : L'analyse concurrentielle (détail en section Recherche) m'a fait voir une ambition bien plus large que le signal : clustering automatique multi-projets, états d'idées (en cours / finalisé / en veille), archive qui se rouvre intelligemment quand un sujet redevient actif. J'ai choisi de ne pas construire ça. Une plateforme large et à moitié faite n'aurait rien prouvé, un signal qui fonctionne parfaitement sur le moment précis où la page blanche se décide, si.
Ce que j'ai fait
Conception et développement d'un prototype fonctionnel complet, 12 écrans codés (React / TypeScript / Tailwind), pas de maquettes statiques.
Pipeline de détection en deux passes spécifié et implémenté côté interface : skeleton contextuel affiché en moins de 300 ms, enrichissement asynchrone une fois le signal disponible.
Système de notes avec glisser-déposer (dnd-kit), copie en un clic, correction inline du sujet détecté.
Scoring de confiance exposé à l'utilisateur (pas caché) : bordure pointillée amber si score < 0,6.
Langage visuel cohérent sur les 12 écrans : fond sombre, gradient ambre/orange réservé aux CTA primaires, silhouettes de skeleton qui reproduisent exactement la mise en page du contenu final plutôt qu'un spinner générique, et accessibilité pensée dès le départ (role="status" et aria-label sur les états de chargement, pas juste un habillage visuel).
Petit backend Express avec service IA interchangeable : mêmes routes, mêmes contrats de données, qu'on tourne sur des heuristiques mock ou sur un vrai appel Anthropic, bascule par une seule variable d'environnement, aucun changement de code.
13 edge cases couverts en V1, 3 reportés en V2 avec justification documentée.
Système de guardrails complet (rejet répété, correction sujet, désactivation, chute NSM) avec seuils et actions associées.
82 tests Playwright, 100 % passants, couvrant le flow nominal, le guardrail G3, le cold start et l'assemblage IA.
Génération assistée (ajoutée après le pivot décrit plus bas) : l'IA reformule et enchaîne les notes sélectionnées en un texte cohérent, sans jamais introduire de fait, de citation ou de source extérieure. Devenue "Forger avec l'IA", le CTA principal de l'écran de session, l'ancienne action "Copier les notes sélectionnées" reste disponible, en second plan.
Résultat
Un prototype livré avec 12 écrans fonctionnels, 82 tests automatisés, un backend interchangeable mock/réel, une architecture de métriques et de guardrails complète, et une documentation traçable par écran, chaque décision d'inclusion ou d'exclusion peut être retracée et justifiée. Ce livrable démontre qu'un designer seul, avec l'IA comme équipe complète (PM, dev, critique, auditeur), peut produire un scope habituellement porté par 4 à 5 personnes.
RECHERCHE
Réflexion
La recherche utilisateur (n=10) a permis de reformuler le problème : ce n'est pas un outil d'organisation, c'est un outil de perception du coût. Cette reformulation a changé toute la nature du projet, d'une feature de rangement à un signal de valeur perçue en moins de 10 secondes.
Concurrence : pourquoi pas juste Notion, Obsidian ou ChatGPT ?
Avant de concevoir quoi que ce soit, j'ai fait un tour de la concurrence, pas pour copier, pour vérifier que le problème n'était pas déjà résolu ailleurs.
Obsidian connecte tes notes entre elles et te laisse les explorer via un graph, c'est une bibliothèque très bien faite. Mais il ne fait rien pour toi au moment où tu ouvres une page blanche : tu peux avoir 500 notes parfaitement reliées et rester bloqué quand même, parce que le graph ne te dit jamais laquelle est pertinente maintenant.
Notion est vide par défaut, tu dois construire toi-même templates, bases et workflows avant qu'il te serve à quelque chose. Son IA reformule et résume sur commande, mais elle ne sait pas ce que tu as déjà noté ailleurs sur le sujet : elle part de zéro, comme toi.
Aucun des deux ne répond au vrai problème identifié en recherche, le coût perçu de retrouver sa matière face au coût de repartir à zéro. C'est le créneau que Forge occupe : pas un concurrent frontal à Notion ou Obsidian, un geste précis au moment où la page blanche se décide.
"Notion et Obsidian sont excellents pour organiser ce que tu sais déjà. Mais aucun des deux ne t'aide à traverser la distance entre une idée brute et un contenu finalisé. Forge est la seule app dont le job unique est cette transformation, pas le stockage, pas la publication, juste le passage de l'idée éparse au contenu cohérent.""Notion stocke. ChatGPT génère. Forge assemble, pas une IA qui invente à ta place, mais une qui met en forme ce que tu penses déjà."
Après le pivot vers la génération assistée (voir "Le test qui a tout changé"), une troisième comparaison est devenue pertinente : pourquoi pas juste ChatGPT ? Les outils de génération se répartissent sur un spectre à trois modes, correcteur (l'IA ne touche qu'à la forme, jamais au fond), co-pilote (l'IA structure à partir de ta matière), pilote automatique (l'IA écrit à partir d'un sujet, sans ta matière). ChatGPT, Jasper ou Copy.ai vivent dans le troisième mode : pratique, mais le résultat ne porte plus grand-chose de toi, n'importe qui obtient à peu près le même texte à partir du même prompt. Forge se tient délibérément dans le deuxième mode : l'IA structure et enchaîne, mais uniquement à partir de ce que j'ai déjà pensé et capturé, jamais à partir d'un sujet donné à froid.
"Notion stocke. ChatGPT génère. Forge assemble, pas une IA qui invente à ta place, mais une qui met en forme ce que tu penses déjà."
Fonctionnement
DESIGN
Onboarding
Dès la première ouverture, un écran unique pose en une phrase l'intention du produit ('Forge retient ce que tu oublies') pour qu'un nouvel utilisateur comprenne ce que fait l'app avant de tomber, sans contexte, sur un signal vide, sans jamais bloquer l'accès.
Écran principal
L'utilisateur capture une idée neuve ou reprend un sujet depuis ses sessions passées. Point d'entrée unique, sans friction.
Signal popup
En moins de 10 secondes, la popup bas-droite répond à la question implicite : ai-je de la matière sur ce sujet ? Skeleton immédiat, puis signal nominal avec chip sujet, score, extraits, nombre de notes disponibles, 2-3 extraits datés en lecture seule, lien 'Voir les X notes sur ce sujet', et le CTA 'Ouvrir l'établi' pour basculer vers le panneau de travail.
Sujet ambigu / correction
Human override explicite : deux candidats proposés, ou correction inline en un geste si l'IA se trompe.
Panneau de notes
Un clic sur 'Ouvrir l'établi' (ou sur 'Voir les X notes' pour une simple consultation) transforme le signal en panneau latéral rétractable. C'est seulement ici, une fois à l'intérieur, qu'on peut réordonner les notes par glisser-déposer et les copier en un clic. Forge ne les insère jamais tout seul dans ton document : c'est toujours toi qui copies-colles, au moment où tu le décides. Les deux entrées ouvrent le même panneau, mais dans un état différent : consultation pour l'une, passage à l'écriture pour l'autre.
États dégradés
Trois nuances du même principe de ton, jamais un constat d'échec.
Signal faible
Volume insuffisant
Empty state
Assemblage IA
"Forger avec l'IA" reformule et enchaîne les notes sélectionnées (dans l'ordre choisi par glisser-déposer) en un texte cohérent, plein écran, éditable section par section, sans jamais ajouter de fait ou de citation extérieure. "Copier les notes sélectionnées" reste disponible en action secondaire. Si l'ordre des notes change après une génération, le résultat n'est pas régénéré silencieusement : une bannière signale qu'il ne reflète plus l'ordre actuel, et c'est à l'utilisateur de relancer.
TESTS UTILISATEURS
Le test qui a tout changé
La V1, le signal et le panneau de fragments décrits ci-dessus, a été montrée à cinq personnes de mon entourage. Les cinq ont eu la même réaction, indépendamment : "OK, mais je vois pas l'utilité." Un retour informel, pas une étude terrain formelle, mais net, et surtout unanime, ce qui suffit à ne pas l'écarter.
Une des personnes a fini par mettre des mots précis sur ce que les autres ressentaient sans l'exprimer aussi clairement : "je peux très bien faire ça sur Notion, mettre mes idées et écrire le texte moi-même, au final Forge n'a rien de différent." Cette phrase a été le vrai point de bascule. Elle révélait que la V1 ne résolvait que la moitié du problème identifié en recherche : elle aidait à retrouver la matière existante, mais laissait entièrement à ma charge le travail de trier et rédiger, exactement le coût que la recherche initiale désignait comme le vrai frein. N'importe quel outil de prise de notes avec des tags fait déjà ce travail de retrouver et grouper des fragments. Ce n'était pas une fonctionnalité différenciante : c'était un confort, pas une raison d'exister.
La tentation naturelle, à ce stade, aurait été de foncer vers la version la plus ambitieuse possible d'une fonctionnalité d'assemblage par IA : texte entièrement rédigé, suggestions de citations et de sources externes pour étoffer le propos. J'ai exploré cette direction, puis je l'ai volontairement écartée : suggérer des citations externes non vérifiées expose à un risque de contenu halluciné ou mal attribué, un risque plus grave qu'une simple erreur de classement, puisque l'utilisateur pourrait le reprendre tel quel dans un contenu publié sous son nom.
Le périmètre retenu s'est resserré autour d'un principe non négociable : l'IA reformule et relie uniquement le contenu déjà présent dans les fragments de l'utilisateur, sans jamais introduire de fait, de citation ou d'argument extérieur. L'utilisateur reste l'auteur du fond ; l'IA n'intervient que sur la forme et l'enchaînement. Le contrôle de sélection et d'ordre des notes, déjà présent dans le panneau (E4), devient le prérequis naturel de cette génération plutôt qu'un simple confort de rangement (voir "Pourquoi 'Forger avec l'IA' comme nom de CTA" dans la section Design).
Scinder le développement en deux temps, un signal de récupération d'abord, l'assemblage ensuite, n'était pas une erreur de cadrage initial : c'était la bonne discipline. Tester la version la plus étroite possible d'une hypothèse avant d'investir dans sa version la plus coûteuse et la plus risquée a permis d'obtenir, avec cinq retours informels seulement, un signal net sur ce qui manquait réellement, plutôt que de deviner à l'aveugle depuis le début ce que les gens valoriseraient. La vraie leçon de méthode est ailleurs, d'ailleurs : documenter même les idées volontairement écartées d'une première version, avec leur raison de mise à l'écart. Sans cette trace, une itération légitime, construite sur un vrai retour terrain, peut donner l'impression, a posteriori, d'un pivot improvisé plutôt que d'une évolution logique d'un produit qui apprend de ses utilisateurs.
CONCLUSION
Ce que j'ai appris sur les limites et le potentiel de l'IA
Je suis parti d'une question : jusqu'où un designer seul peut aller quand l'IA joue tous les rôles qu'il n'a pas ? Je ressors du projet avec une réponse plus nuancée que ce que j'imaginais au départ.
Le potentiel, je l'ai vu concrètement. Sur l'écran de sujet ambigu, l'IA a détecté que mes propres specs ne distinguaient pas le cas "deux sujets équiprobables" du cas "un sujet dominant avec un alternatif faible", une ambiguïté que j'avais laissée passer, alors que le comportement UI différait entre les deux cas. Ce n'est pas de l'exécution, c'est de la critique, le genre de relecture qu'on attend d'un pair senior, pas d'un outil.
La limite, je l'ai sentie à mi-projet. L'IA générait, j'acceptais, le volume grossissait, mais la cohérence s'érodait silencieusement, sans qu'aucun signal évident ne me le dise. En creusant pourquoi, la cause était précise : mes prompts ne cadraient pas assez le format de sortie attendu. Assez précis pour que l'IA produise quelque chose d'exploitable, pas assez pour que deux générations successives restent cohérentes entre elles, chaque nouvelle sortie réinterprétait légèrement la structure, et ces petits écarts s'accumulaient sans qu'aucun signal évident ne me le dise. J'ai dû m'arrêter, relire l'ensemble, identifier les dérives, et réécrire mes prompts en repartant de la cause racine, en spécifiant le format de sortie beaucoup plus strictement. C'est là que j'ai compris la vraie limite de l'IA comme équipe : elle n'a pas de mémoire de la direction. Elle amplifie ce qu'on lui donne au moment T, sans porter le fil sur la durée, ce fil-là reste entièrement de mon ressort.
Ce moment m'a confirmé quelque chose que je soupçonnais sans l'avoir vraiment vécu : l'IA amplifie ta direction, elle ne la remplace pas. Si tu sais où tu vas, elle va plus vite. Si tu dérives, elle amplifie la dérive. Garder le cap, sur la cause racine, sur le principe de ton, sur le périmètre V1, c'est toujours un acte humain, et c'est précisément ce qu'aucune IA ne peut faire à ma place. C'est, au fond, ce que fait un Lead : maintenir la cohérence d'une vision sous pression, quand tout pousse à ajouter, à élargir, à compliquer, que l'équipe soit humaine ou non.
Le Guide Design IA qui a servi de point de départ à ce projet en ressort changé lui aussi : la nécessité de cadrer précisément le format de sortie attendu, pas juste l'intention, y est maintenant documentée comme un principe à part entière, pas une évidence qu'on découvre en le lisant. C'était tout l'intérêt de mettre le guide à l'épreuve sur un vrai projet plutôt que de le laisser sur le papier.
Ce que je ferais ensuite (V2)
Si le NSM de la V1 valide le démarrage, le problème suivant devient la production elle-même : capture vocale (la voix supprime la friction de taper une idée), connecteurs externes (Notion, Slack, email, la matière existe rarement dans un seul outil), et un dashboard de production pour fermer la boucle entre "session ouverte avec fragments" et "quelque chose de publié".