- Résultats d’une étude analysant les tendances de sélection d’outils de Claude Code sur 2 430 dépôts open source réels
- Sur 20 catégories au total, dans 12 cas, il a privilégié une approche implémentée en interne (Custom/DIY) plutôt qu’un outil existant, ce qui constitue le type de choix le plus fréquent
- En revanche, lorsqu’il choisit des outils, il montre une forte concentration sur certains éléments comme GitHub Actions (94 %), Stripe (91 %) et shadcn/ui (90 %)
- Les environnements de déploiement sont figés selon le langage : pour JS, le choix par défaut est Vercel ; pour Python, Railway ; AWS, GCP et Azure sont exclus des choix de premier rang
- Plus le modèle est récent, plus la tendance à remplacer par des outils émergents comme Drizzle ou FastAPI BackgroundTasks est nette, avec une cohérence de sélection d’environ 90 % au sein d’un même écosystème
Aperçu de l’étude
- 2 430 expériences au total ont été menées avec Claude Code v2.1.39 afin d’observer ses choix d’outils via des questions ouvertes sur de vrais dépôts
- 3 modèles (Sonnet 4.5, Opus 4.5, Opus 4.6), 4 types de projets, 20 catégories d’outils
- Taux d’extraction de 85,3 %, soit 2 073 réponses valides
- 90 % de concordance entre les modèles, avec une cohérence de choix maintenue au sein du même écosystème dans 18 catégories sur 20
Principale découverte : Build vs Buy
- Dans 12 catégories sur 20, l’implémentation Custom/DIY est le choix le plus fréquent
- 252 choix Custom/DIY au total, davantage que n’importe quel outil pris individuellement
- Ex. : les feature flags sont implémentés via des fichiers de configuration basés sur des variables d’environnement, l’authentification Python est écrite directement avec JWT + passlib, et le caching utilise un wrapper TTL en mémoire
- Part du Custom/DIY par catégorie
- Feature Flags 69 %, Authentication (Python) 100 %, Authentication (global) 48 %, Observability 22 %
Stack par défaut
- Lorsqu’il sélectionne réellement des outils, Claude Code forme une stack par défaut centrée sur l’écosystème JS
- Outils les plus choisis : Zustand (64,8 %), Sentry (63,1 %), etc.
- Dans certains cas, 100 % des choix liés à JS se concentrent sur un outil précis
- Cette stack par défaut a un impact direct sur le développement d’un grand nombre de nouvelles applications
À contre-courant du marché
- Parmi les outils à forte part de marché, certains sont presque jamais utilisés par Claude Code
- Gestion d’état : aucun choix dominant, avec à la place 57 sélections de Zustand
- Couche API : préférence pour le routing intégré au framework
- Tests : seulement 4 % de choix principaux, 31 choix alternatifs
- Gestionnaires de paquets : 1 choix principal, 51 choix alternatifs
Tendance de remplacement dans les modèles récents (The Recency Gradient)
- Plus le modèle est récent, plus il bascule vers des outils récents
- JS ORM : Prisma (79 %) → Drizzle (100 %)
- Traitement des tâches Python : Celery (100 %) → FastAPI BackgroundTasks (44 %)
- Caching Python : Redis (93 %) → Custom/DIY (50 %)
- Au sein de chaque écosystème, un remplacement générationnel des outils est clairement observable
Différenciation des environnements de déploiement (The Deployment Split)
- Les choix de déploiement sont figés selon la stack de langage
- JS (Next.js + React SPA) : 86 choix sur 86 pour Vercel
- Python (FastAPI) : Railway choisi dans 82 % des cas
- AWS, GCP et Azure enregistrent 0 choix principal sur l’ensemble des 112 cas
- En recommandations alternatives apparaissent Netlify (67 fois), Cloudflare Pages (30 fois), GitHub Pages (26 fois), DigitalOcean (7 fois)
- AWS Amplify, Firebase Hosting, etc. sont mentionnés sans jamais être recommandés
- Dans les réponses d’exemple, Vercel est accompagné de la commande d’installation et d’une justification, tandis qu’AWS Amplify ne reçoit qu’une simple mention en une ligne
Zones de désaccord entre modèles (Where Models Disagree)
- Des écarts entre modèles existent dans 5 catégories sur 20
- JS ORM : Prisma → Drizzle
- JS Jobs : BullMQ → Inngest
- Python Jobs : Celery → FastAPI BgTasks
- Caching : Redis → Custom/DIY
- Temps réel : SSE → Custom/DIY
- Les 18 autres catégories conservent un choix cohérent au sein du même écosystème
Service de benchmark pour les entreprises
- Amplifying propose un tableau de bord privé destiné aux entreprises d’outils de développement
- Il permet de vérifier à quelle fréquence les agents IA recommandent leur outil par rapport à ceux des concurrents
- Il prend en charge l’analyse de la compétitivité des recommandations d’outils à partir de bases de code réelles
Exploration des données
- Les analyses détaillées incluent notamment des analyses approfondies par catégorie, la stabilité des formulations, la cohérence entre dépôts et l’impact sur le marché
- Les résultats de l’étude doivent être mis à jour ultérieurement sur la base du modèle Sonnet 4.6
4 commentaires
C’est intéressant, mais je me demande aussi s’ils n’ont pas simplement évolué vers l’option qui consomme le plus de tokens et facture donc le plus cher ; et en réalité, j’ai aussi l’impression que, pour certaines bibliothèques, l’IA est déjà entraînée dessus au point de pouvoir simplement les produire.
C’est aussi un peu étrange de penser que seules certaines bibliothèques vont se développer à cause des préférences des agents.
Recherche intéressante. Le fait que, dans la catégorie « Build vs Buy », 12 catégories sur 20 relèvent du DIY est particulièrement marquant.
Nous avons fait une observation similaire en élaborant nous aussi un standard de persona pour agents IA (Soul Spec) : si les outils ne sont pas explicitement indiqués à Claude Code via
CLAUDE.mdouAGENTS.md, il a une forte tendance à implémenter les choses à sa manière.Ce que suggère le « Recency Gradient » de cette étude, c’est que, pour qu’un nouvel outil entre dans la stack par défaut de Claude, il doit soit être suffisamment exposé dans les données d’entraînement, soit être explicitement spécifié dans les fichiers de contexte du projet. En fin de compte, le Context Engineering finit donc par influencer aussi le choix des outils.
C’est aussi appréciable que le jeu de données original soit public : https://github.com/amplifying-ai/claude-code-picks
On appelle ça Assistive agent optimization (AAO), paraît-il.
Pour les outils destinés aux développeurs, il est désormais devenu important d’être des produits privilégiés par les agents.
Si les agents n’en parlent même pas, on s’en éloigne progressivement.
Commentaires sur Hacker News
Je pense que l’avenir de la publicité dans les LLM, c’est de devenir totalement invisible
Au final, cela revient à devenir « l’influenceur » le plus puissant
Ou alors, ce n’est pas de la pub mais plutôt un problème de conflit d’intérêts
Par exemple, si Gemini préfère davantage les déploiements basés sur GCP, ce pourrait être un signe
D’après la recherche d’Anthropic, il existe des moyens de viser la visibilité d’un produit dans les LLM au lieu du SEO
Attendre environ 6 mois pour que les crawlers collectent le tout et l’utilisent comme données d’entraînement → profit au bout du compte
Si Gemini avait été utilisé, j’ai l’impression que cela ne serait pas arrivé
C’est la mise en œuvre ultime du « nudge »
À l’avenir, des systèmes de code agentiques décideront eux-mêmes de ce qu’ils vont construire, et les humains n’auront que le résultat sans même voir les options retenues
Même la chaîne d’approvisionnement finira par être décidée par les LLM
La plateforme contrôle les « rayons », observe quelles fonctionnalités SaaS sont populaires, puis crée sa propre marque distributeur (par ex. Great Value, Amazon Basics)
Les logiciels fiscaux pourraient en être un bon exemple
Ce qui est intéressant, c’est que le style web de Claude Code mentionné dans l’article apparaît réellement tel quel sur ce blog
La police JetBrains Mono est une caractéristique emblématique des sites générés par Opus 4.6
Au cours du dernier mois, plus de 99 % des pages web qui abusent de JetBrains Mono semblent avoir été générées par Opus
Opus 4.6 a choisi Drizzle dans 32,5 % des cas, tandis que Prisma n’atteint que 20,5 %
Plus le modèle est puissant, moins il a tendance à choisir Prisma — on dirait presque une sorte de benchmark d’intelligence
Autre exemple, youjustneedpostgres.com abuse lui aussi de JetBrains Mono
Le design de la barre de catégories était presque identique à une UI générée machinalement par moi hier
Toutes les cartes CSS ont le même rendu, donc ce blog semble aussi avoir été fait de cette manière
Je ne donne pas de prompts vagues aux LLM
À la place, j’apprends à nouveau, en 2026, à extraire des informations précises des LLM
Cela me rappelle la réapprentissage de Google Search en 2006
J’utilise des « reverse prompts » pour qu’un modèle vérifie les hypothèses d’un autre
Par exemple, si le résultat d’Opus 4.6 me semble douteux, je le passe à ChatGPT ou Codex pour leur faire chercher les failles
Claude est relativement moins têtu, tandis que ChatGPT ou Codex sont plus affirmatifs mais souvent plus exacts
En pratique, sur un problème de conteneur Docker, Claude parlait d’un bug ZFS, mais ChatGPT a dit qu’il s’agissait d’une simple erreur de configuration, et c’était exact
C’est ainsi que j’obtiens la bonne réponse grâce à une validation croisée entre LLM
Et là, il en pose vraiment beaucoup
Je lui fais continuer les révisions jusqu’à obtenir un plan détaillé, ce qui l’amène aussi à poser davantage de questions nécessaires
Avec un abonnement ChatGPT, je n’atteins pas la limite, mais quand il se trompe de temps en temps, j’ouvre Claude dans un autre terminal
Le budget Claude de mon entreprise est très limité, à 750 dollars par mois
J’utilise TimescaleDB sur AWS
Claude Code gère mes instances EC2 via AWS CLI
Pourtant, ce matin, Claude m’a proposé de créer des comptes NeonDB et Fly.io
J’ai trouvé étrange qu’il recommande de nouveaux services alors que ma configuration AWS est déjà bien en place
D’après mon expérience, les agents LLM prennent des décisions d’architecture épouvantables
Ils s’obsèdent pour des abstractions inutiles et la gestion des versions, et le code devient excessivement complexe
Au final, il faut écrire le code soi-même
J’utilise Planetscale pour tous mes projets, et Claude m’a recommandé Neon
Cela ressemble simplement à un bug
Je trouve intéressant qu’Opus 4.6 ait été qualifié de « tourné vers l’avenir »
Après avoir utilisé la 4.5 pendant un mois, j’ai lancé un nouveau projet avec la 4.6, et il a effectué une recherche web dès la phase de planification
Le modèle a suffisamment progressé, mais la coordination et la répartition des rôles restent des enjeux centraux
J’avais déjà publié moi-même une application Android avec GPT-3.5 (lien de l’app)
À l’époque, une tâche qui prenait une semaine peut maintenant être accomplie avec un seul prompt
Si l’on orchestre bien les LLM, on peut obtenir des résultats bien plus vite
En codant avec des LLM, ce qui m’a frappé, surtout sur le web, c’est à quel point les dépendances aux packages npm diminuent
Avant, on utilisait des choses comme l’auth JWT ou des plugins de build, mais aujourd’hui cela peut être remplacé par quelques lignes de code
Le code est plus simple, plus facile à comprendre, donc plus digne de confiance
En 2010, jQuery régnait sur le JS, mais aujourd’hui le JavaScript natif suffit
Cela dit, je n’utiliserais pas tel quel du code de sécurité comme du JWT généré par Claude
Maintenant, il vaut peut-être mieux implémenter soi-même
Il y aura davantage de duplication de code, mais moins de problèmes de dépendances
J’indique toujours à Claude quelles bibliothèques et technologies propriétaires utiliser
Je pense qu’un développeur doit savoir bien guider le modèle
Quand je ne suis pas sûr, j’ouvre une autre fenêtre pour demander des conseils sur l’architecture ou les avantages et inconvénients avant de décider
Sur deux projets, Claude a ajouté automatiquement GitHub Actions
Je ne l’avais pas demandé, et comme c’était dans un dossier caché, je ne l’ai pas vu dans le
git diffHeureusement, cela n’a coûté que 4 centimes, mais c’était une expérience assez inquiétante
J’ai une question
Pourquoi shadcn/ui s’est-il autant imposé comme bibliothèque d’UI par défaut ?
Ce n’est pas seulement Claude, d’autres modèles l’utilisent aussi par défaut
Si on demande d’exclure shadcn, est-ce que la qualité ou la vitesse baissent ?
Est-ce à cause de la richesse de sa documentation et de ses exemples, ou simplement parce qu’il apparaît énormément dans les données d’entraînement ?
Moi aussi, vers le milieu de 2025, j’ai été surpris de voir Gemini mettre shadcn par défaut dans un dashboard React
shadcn/ui étant basé sur Tailwind, l’IA le privilégie
D’ailleurs, le nombre de téléchargements npm a explosé depuis décembre
Lien du package npm
Il existe beaucoup de bibliothèques de composants plus anciennes, alors pourquoi celle-ci a gagné mériterait une analyse scientifique
Les composants sont cohérents et faciles à personnaliser, donc l’intégration au projet est simple
C’est vraiment un projet très bien conçu
Désormais, quand je vois un site qui utilise le style par défaut de shadcn, j’y vois un signe de site web créé par IA
Comme Bootstrap il y a 10 ans, le style par défaut est devenu trop courant
Dans ce cas, peut-on vraiment considérer cela comme une trace de l’IA ?
Je me demande ce que signifie exactement l’analogie avec « Bootstrap il y a 10 ans »