- Windsurf Codemaps est un nouvel outil d’exploration de code : une carte structurelle du code annotée par l’IA, conçue pour aider les développeurs à comprendre une codebase rapidement et avec précision
- Alors que les outils d’IA de coding existants se concentrent sur l’automatisation de l’écriture du code, Codemaps vise une ingénierie centrée sur la compréhension et fonctionne sur la base des modèles SWE‑1.5 et Claude Sonnet 4.5
- Il visualise le flux fonctionnel dans la codebase et permet soit de sauter immédiatement vers l’emplacement exact du code, soit de consulter via le « trace guide » l’explication des groupes de code concernés
- Par rapport aux agents conversationnels existants comme Cascade, il offre une meilleure continuité de contexte et une exploration plus efficace ; la fonction de référence
@{codemap} améliore aussi les performances de travail de l’agent
- L’IA s’y positionne non comme un simple substitut, mais comme un outil collaboratif qui renforce la compréhension et la responsabilité des ingénieurs
L’importance de la compréhension du code et l’arrivée de Codemaps
- Le développement logiciel ne commence pas par le simple fait de coder, mais par la compréhension du problème
- Les outils où l’IA écrit le code à la place des développeurs augmentent la productivité, mais provoquent aussi une rupture de compréhension entre le développeur et le code
- Dans les tâches difficiles et à forte valeur, cette séparation conduit à une inefficacité critique
- Cognition souligne qu’il faut non pas « une IA qui éteint le cerveau », mais une IA qui allume le cerveau
- Codemaps est une carte de code annotée par l’IA, basée sur SWE‑1.5 et Claude Sonnet 4.5, qui étend les technologies de DeepWiki et Ask Devin
Pourquoi Codemaps
- Tout travail d’ingénierie commence par la compréhension du code, et les grandes codebases consomment beaucoup de temps en exploration et en mémorisation
- Un nouvel ingénieur met 3 à 9 mois pour être pleinement opérationnel, et les profils seniors consacrent plus de 5 heures par semaine à l’onboarding
- Selon une étude de Stripe, la maintenance du legacy est l’une des causes majeures de la baisse de productivité
- Les outils actuels d’IA pour le coding restent centrés sur des questions-réponses généralistes et ne prennent pas correctement en charge l’onboarding intensif ni l’exploration de précision
- Codemaps a été conçu comme un outil de cartographie précis, ancré dans le code, pour répondre à ces limites
Cartographie en temps réel centrée sur le problème
- Dans Windsurf, l’outil se lance avec Cmd + Shift + C ; on peut saisir l’objectif du travail ou choisir une suggestion automatique
- Il est possible de sélectionner le mode Fast(SWE‑1.5) ou Smart(Sonnet 4.5)
- Chaque Codemap s’appuie sur un instantané du code et respecte le principe ZDR
- Une carte visuelle à nœuds permet d’explorer la structure du code et, au clic, de naviguer vers l’emplacement exact du code
- Avec l’option « See more », on peut ouvrir le trace guide pour consulter en détail l’explication des groupes de code
- Dans Cascade, appeler
@{codemap} pour référencer une section précise améliore la compréhension du contexte et les performances de l’agent
Une approche contre le « Vibeslop »
- Le « Vibe coding » se dégrade en génération incontrôlée de code par l’IA, et la maintenance d’un code non compris est pointée comme un problème
- Codemaps cherche à combler cet écart de compréhension en permettant aux humains et à l’IA de partager la structure du système, le flux de données et les dépendances
- Le rôle de l’ingénieur évolue de rédacteur vers responsable (accountability), la compréhension devenant le garant de la qualité
- L’objectif n’est pas seulement la vitesse, mais aussi d’aider les ingénieurs à garder leur flux et à résoudre avec assurance des problèmes complexes
- L’IA est présentée non comme un simple remplacement, mais comme un moyen de renforcer les tâches à forte valeur et d’alléger celles à faible valeur
Feuille de route
- Codemaps constitue une première étape : rendre visible pour les humains les résultats d’indexation et d’analyse des agents internes
- Il peut déjà être utilisé pour le partage entre équipes et pour l’apprentissage
- À l’avenir, l’effet sur l’amélioration des capacités de résolution de problèmes d’agents comme Devin et Cascade fera l’objet de benchmarks
- La connexion entre plusieurs Codemaps, les fonctions d’annotation et la définition d’un protocole ouvert
.codemap sont à l’étude
- L’objectif est aussi de le combiner avec la fonction Fast Context afin de faire évoluer l’ingénierie automatique du contexte vers une forme lisible par l’humain
- Codemaps est disponible dans les dernières versions de Windsurf et DeepWiki
3 commentaires
Chaque fois que j’utilise deepwiki, je suis impressionné, donc j’attends aussi cette fonctionnalité avec impatience !
J’aimerais bien que ça arrive aussi dans VS Code.
Avis Hacker News
En lisant cet article, je me suis dit qu’il y avait quelques points à relever
Ça ressemble encore à un produit IA pour les Fortune 500. Ce n’est peut-être pas très adapté à des équipes plus petites
En réalité, ce type d’outil de diagrammes basé sur l’analyse statique existe depuis longtemps, et en dehors du fait qu’un LLM les génère à votre place, il n’y a pas énormément de nouveauté
L’onboarding, ce n’est pas simplement montrer un organigramme de flux, c’est surtout partager le contexte du problème propre à l’équipe. Expliquer les schémas et contraintes spécifiques à notre équipe est plus important que du boilerplate de type CRUD ou MVC
L’avantage d’une visualisation générée par un LLM, c’est justement d’y apporter ce jugement et ce bon sens, ce qui la rend plus intuitive
Quelqu’un aurait des recommandations pour ce genre d’outils d’analyse statique ? Si possible en open source, avec prise en charge de Python, Java et JavaScript, surtout Angular
J’ai relancé Windsurf pour la première fois depuis un moment et j’ai cliqué sur « Upgrade Available », ce qui m’a envoyé vers cette page
La commande indiquée,
sudo apt-get upgrade windsurf, est en pratique une commande risquée qui met à niveau l’ensemble des paquets du systèmeHeureusement, j’ai réglé ça avec
sudo apt-get install --only-upgrade windsurfQuoi qu’il en soit, la nouvelle fonctionnalité Codemaps a l’air vraiment sympa et mérite d’être essayée
apt-get upgrade $PACKAGEest vraiment bizarre. La bonne syntaxe n’apparaît même pas dans le manuelJ’aimerais que davantage de gens essaient Windsurf
En tant qu’ingénieur senior, j’alterne entre codage agentique et codage classique, et Windsurf est un outil sous-estimé
J’étais vraiment content quand la fonctionnalité Codemaps est sortie
J’utilise Codemaps depuis quelques semaines et c’est excellent. Si les modifications de code deviennent nombreuses, la maintenance pourrait devenir pénible, mais ça semble solvable
J’ai rapidement monté un prototype SaaS avec une combinaison de Sonnet 4, Sequential Thinking et le serveur MCP Tavily. Le prix est raisonnable aussi
Windsurf est bon aussi, mais à cause de sa politique tarifaire, on a renoncé à le déployer à l’échelle de l’entreprise
L’idée est intéressante, mais si le diagramme généré n’est pas exact, il risque au contraire d’induire en erreur
Si au final un humain doit quand même tout revérifier, l’intérêt de l’outil s’en trouve affaibli
Ce type de fonctionnalité est peu utile, car il ne montre qu’une carte des connexions du code sans contexte métier
L’IA ne comprend pas le « pourquoi » d’une architecture. Au final, je pense qu’il vaut mieux lire la documentation de conception et le code
Il suffit de voir cet exemple deepwiki ou ce lien Codemap
Pour du débogage, ce niveau d’information est en fait suffisant
Je pense que cette approche va dans la bonne direction
Au lieu de fabriquer des produits IA à moitié fonctionnels, il est plus important de rendre les bases de code compréhensibles à la fois pour les humains et pour les LLM
Ce genre de système auto-documenté peut réduire la fatigue de développement dans les grandes entreprises
(coauteur) Les questions sont les bienvenues !
Vous pouvez regarder cette vidéo de démo d’une minute
C’est une idée de Steven, CTO de Cognition. Il n’aime pas être sous les projecteurs, mais cette fois il a vraiment bien travaillé
Voir aussi son tweet
J’avais créé un side project similaire il y a 3 ans
C’était avant l’essor des LLM, donc j’avais directement écrit un parseur AST pour extraire les relations dans du code Go et Java, puis les visualiser avec Graphviz
J’avais aussi ajouté un filtre basé sur des expressions régulières, et c’était vraiment utile pour comprendre une base de code inconnue
Le projet existe encore sur packagemap.co, mais il a beaucoup vieilli
L’objectif était d’aider les développeurs à saisir la structure du code dans l’espace et à travailler en gardant le contexte dans un environnement VR
L’article associé est ici
Proposition de fonctionnalité : ce serait bien qu’une GitHub Action génère automatiquement le Codemap d’un dépôt, l’inclue dans le README, puis le mette à jour automatiquement lors des PR importantes
L’idée de visualiser le code est séduisante, mais elle risque souvent de s’enfermer dans une mauvaise idée
La plupart des diagrammes transmettent mal le sens voulu et demandent au contraire du temps d’interprétation
En pratique, les gens lisent le code ou les mathématiques et construisent dans leur tête leur propre modèle de visualisation
Par exemple, si on visualise une app Flutter sans faire apparaître la structure de l’arbre des widgets, cela entre en conflit avec mon modèle mental
Au fond, ce type de visualisation ressemble à ce qui se passe quand on lit un roman et qu’une scène se forme dans notre tête
Je ne suis pas encore convaincu qu’un LLM soit la technologie capable de produire ce « film du code qu’on a envie de voir »