Qu'est-ce que claw-code ? La réécriture de Claude Code expliquée

claw-code est une réécriture Python en chambre blanche du harnais agent de Claude Code. Voici ce que c'est, comment c'est arrivé et ce que les développeurs doivent savoir.

10 min read
Qu'est-ce que claw-code ? La réécriture de Claude Code expliquée

Salut tout le monde. Je m’appelle Dora. Vous imaginez ? J’ai observé le dépôt claw-code depuis le matin où il est apparu. Non pas parce que je m’attendais à l’utiliser — mais parce que les circonstances entourant sa création éclairent la manière dont l’écosystème de codage agentique fonctionne réellement, sous tout le bruit ambiant.

Laissez-moi vous expliquer ce qui s’est passé, ce qu’est claw-code, et qui devrait vraiment s’y intéresser.

Ce qui s’est passé : l’exposition du code source de Claude Code

Comment la fuite de la source map s’est produite

Le 31 mars 2026, le chercheur en sécurité Chaofan Shou a remarqué quelque chose d’étrange dans le registre npm. La version 2.1.88 de @anthropic-ai/claude-code avait été publiée avec un fichier de source map JavaScript de 59,8 Mo en pièce jointe.

Les source maps sont des artefacts de débogage — elles traduisent le code de production minifié en TypeScript lisible pour que les développeurs puissent comprendre les traces de pile. Elles ne sont pas censées être incluses dans les paquets publics.

Le mécanisme n’a rien d’exotique. Le bundler de Bun, que Claude Code utilise en interne, génère des source maps par défaut sauf si vous les désactivez explicitement. Il existe un bug ouvert dans Bun (oven-sh/bun#28001, déposé le 11 mars) signalant que des source maps apparaissent dans les builds de production même lorsqu’elles ne devraient pas. Si c’est ce qui a causé la fuite, alors la chaîne de build d’Anthropic elle-même a publié un problème connu qui a exposé leur propre produit. Personne n’a eu besoin de pirater quoi que ce soit. Le fichier était simplement là, pointant vers une archive zip stockée sur le propre bucket de stockage Cloudflare R2 d’Anthropic.

Anthropic a confirmé l’incident comme étant « un problème d’empaquetage de version causé par une erreur humaine, et non une faille de sécurité ». À noter : c’est la deuxième fois que cela se produit — une fuite de source map presque identique s’était produite avec une version antérieure en février 2025.

Encore une chose pour quiconque a mis à jour Claude Code via npm ce matin-là : une attaque distincte sur la chaîne d’approvisionnement du paquet axios était active entre 00h21 et 03h49 UTC le même jour. Axios est une dépendance de Claude Code. Si vous avez effectué une mise à jour pendant cette fenêtre, auditez vos dépendances et renouvelez vos identifiants.

Ce qui a réellement été exposé

Aucune donnée client, aucun identifiant d’API, aucun poids de modèle. Ce qui a été exposé : environ 512 000 lignes de TypeScript réparties dans ~1 900 fichiers — le moteur de requêtes, le système d’outils, la logique d’orchestration multi-agents, la compression de contexte, et 44 drapeaux de fonctionnalités couvrant des fonctionnalités construites mais pas encore publiées.

Ces drapeaux de fonctionnalités constituent la partie la plus stratégiquement sensible. Du code compilé derrière des drapeaux qui s’évaluent à false dans le build externe n’est pas qu’un détail d’implémentation — c’est une feuille de route produit. Les concurrents peuvent désormais voir ce qu’Anthropic a construit et envisage de publier. Cet avantage stratégique ne peut pas être « non-fuité ».

Qu’est-ce que claw-code ?

Réécriture en salle blanche, pas une archive

Dans les heures suivant l’exposition, des dépôts miroirs sont apparus sur GitHub. Anthropic a commencé à émettre des avis DMCA. Internet n’a pas attendu.

Sigrid Jin (@instructkr) — un développeur coréen qui avait assisté à la première fête d’anniversaire de Claude Code à San Francisco en février — a publié ce qui est devenu claw-code. Le dépôt a atteint 50 000 étoiles en deux heures, l’un des taux d’accumulation les plus rapides jamais enregistrés sur GitHub.

La distinction importante : claw-code n’est pas une archive du TypeScript fuité. C’est une réécriture Python en salle blanche, construite de zéro en lisant la structure originale du harness et en réimplémentant les patterns architecturaux sans copier le code source propriétaire d’Anthropic. Jin l’a construit en une nuit en utilisant oh-my-codex, une couche d’orchestration au-dessus du Codex d’OpenAI, avec des revues de code en parallèle et des boucles d’exécution persistantes.

La question de savoir si une réimplémentation en salle blanche contourne entièrement l’exposition aux droits d’auteur est une question juridique, pas technique. Cette réponse n’est pas tranchée. Le dépôt est explicite : « Ce dépôt ne revendique pas la propriété du matériel source original de Claude Code. » Mais le cadrage et l’issue juridique ne sont pas la même chose.

État actuel : Python maintenant, Rust plus tard

En avril 2026, l’arbre source principal est Python en premier. La structure reflète les modules principaux de Claude Code : entrée CLI, moteur de requêtes, gestion des sessions d’exécution, exécution des outils, contexte de permissions, persistance des sessions, et un parity_audit.py qui suit explicitement les écarts par rapport à l’implémentation originale.

Ce dernier fichier mérite d’être mentionné. C’est une comptabilité honnête intégrée de ce que la réécriture n’a pas encore rattrapé. Ce type de transparence est plus utile que prétendre à une complétude.

Un portage Rust est en cours — décrit dans le README comme la prochaine direction. Aucune version stable, aucun calendrier confirmé.

Ce que révèle l’architecture

La vraie valeur ici — pour les développeurs — n’est pas le drame. C’est ce que l’architecture exposée nous dit sur la façon dont les systèmes de codage agentique de niveau production sont réellement structurés.

Patterns d’orchestration multi-agents

Claude Code n’est pas une simple boucle de chatbot. L’analyse communautaire qui s’est répandue depuis la fuite décrit son cœur : une boucle d’agent, plus de 40 outils discrets, chargement de compétences à la demande, compression de contexte, spawn de sous-agents, un système de tâches avec des graphes de dépendances, et isolation par worktree pour l’exécution parallèle.

Le pattern de sous-agents mérite d’être compris. Lorsqu’une tâche risque de remplir la fenêtre de contexte principale, Claude Code génère des instances d’agents indépendantes avec leur propre contexte et leur propre portée de tâche. Le travail exploratoire ne contamine pas le fil principal. Les tâches s’exécutent en parallèle sans se bloquer mutuellement.

Ce qui est notable, c’est à quel point la couche d’orchestration est minimale. Elle n’impose pas de workflows rigides. Elle fournit des outils, gère les permissions et le contexte, et s’efface. Le modèle fait le raisonnement. Le harness crée les conditions pour que ce raisonnement soit utile.

Couches de permissions et sandboxing des outils

Plus de quarante outils — exécution bash, lectures de fichiers, fetch web, intégration LSP, opérations git — sont chacun soumis à des permissions individuelles. Les commandes bash composées enchaînées avec &&, ||, ; ou des pipes sont évaluées sous-commande par sous-commande. Si une partie devait être refusée, la commande entière est bloquée.

La liste de refus l’emporte toujours sur la liste d’autorisation. C’est la bonne conception pour tout ce qui exécute des commandes shell arbitraires.

Cet instinct architectural converge dans tout l’écosystème. La documentation de routage multi-agents d’OpenClaw décrit des politiques d’outils par agent, l’isolation des sessions et des profils d’authentification séparés — les mêmes patterns, appliqués à une plateforme hôte différente. Un agent avec des permissions larges et sans sandboxing est un agent auquel vous ne pouvez pas faire confiance pour un vrai travail. Le domaine est en train de le comprendre.

Les développeurs devraient-ils prêter attention à claw-code ?

Usage expérimental vs. production

Si vous étudiez la conception de harness agentique — comment structurer les permissions des outils, comment fonctionne la compression de contexte, comment le spawn de sous-agents est coordonné — claw-code est réellement utile. L’implémentation Python est lisible, parity_audit.py vous donne une carte de là où elle diverge de l’original, et l’architecture est maintenant bien documentée dans plusieurs analyses indépendantes.

Si vous construisez quelque chose à déployer ou dont vous dépendez, le tableau est différent. La réécriture Python a moins d’une semaine. Le portage Rust est aspirationnel. Il n’y a pas de stabilité de versionnage, pas d’engagement de maintenance, et aucune clarté sur la façon dont l’exposition juridique pourrait affecter la continuité du projet. Dépendre de claw-code en production, c’est parier sur un projet qui pourrait changer significativement — ou disparaître — en fonction de facteurs hors de votre contrôle.

Pour la plupart des développeurs en ce moment : lisez le code, ne le déployez pas en production.

Risques juridiques et de stabilité à considérer

Les actions DMCA d’Anthropic contre les archives du TypeScript original sont actives. Le statut juridique de claw-code en tant que réécriture en salle blanche est genuinement incertain. La réimplémentation en salle blanche a un historique juridique qui protège parfois les projets et parfois non, selon les spécificités. Quiconque construit sur cette base devrait intégrer cette incertitude honnêtement.

La question de stabilité est séparée. Même si le projet continue sans entrave, une base de code construite en une seule nuit n’est pas à parité avec ce qu’elle modélise. Le parity_audit.py suit les lacunes — mais les suivre n’est pas la même chose que les combler.

FAQ

Q : claw-code est-il la même chose que Claude Code ? Non. Claude Code est l’outil CLI TypeScript officiel d’Anthropic, activement maintenu, distribué via npm. claw-code est une réécriture Python indépendante qui reflète les patterns architecturaux. Même philosophie de conception ; projet entièrement différent.

Q : Puis-je remplacer Claude Code par claw-code ? Pas aujourd’hui. claw-code n’est pas à parité de fonctionnalités, le portage Rust n’est pas stable, et il comporte des questions juridiques non résolues. Pour un travail de codage réel, Claude Code reste l’outil de production.

Q : Que signifie l’action DMCA d’Anthropic pour le projet ? Anthropic a ciblé les dépôts hébergeant le TypeScript fuité original. claw-code revendique le statut de salle blanche comme défense. Que cela tienne juridiquement est non résolu. Le projet pourrait faire face à des pressions dans tous les cas.

Q : claw-code est-il open source ? Il est publié sur GitHub sous une licence permissive. La question de savoir si « open source » et « sûr à utiliser comme dépendance » sont la même chose ici mérite réflexion.

L’exposition architecturale de cet incident m’importe plus que claw-code lui-même. La conception interne de Claude Code — spawn de sous-agents, sandboxing des outils, compression de contexte, superposition des permissions — est maintenant documentée dans des analyses publiques bien au-delà de ce que l’ingénierie inverse avait précédemment révélé. Cela élève le niveau de référence pour quiconque construit dans cet espace.

Que claw-code trouve un terrain stable — juridiquement et techniquement — je ne le sais vraiment pas. Pour l’instant : lisez-le, ne le déployez pas.

Articles précédents :