33.000 lignes de XML pour te dire que heavyWork() prend trop de temps : comment j'ai dompté xctrace pour les LLMs

La semaine dernière, je profilais une application Swift avec Instruments. Rien d’extraordinaire : xctrace record, xctrace export, copier le XML dans le contexte de Claude Code, lui demander de trouver les hotspots. Et Claude me répond : “Le XML est trop grand, je ne peux pas le traiter de manière fiable.” 33 553 lignes de XML. Pour un programme avec deux fonctions. Le problème réel xctrace export est un outil fantastique. Il te donne tout : chaque sample, chaque backtrace, chaque frame avec son binaire, son adresse mémoire, son UUID. C’est complet, précis et exhaustif. ...

8 mars 2026 · Fernando

Le chemin incorrect doit être impossible, pas interdit

“J’ai un shell et je suis créatif.” — Claude, expliquant pourquoi il a créé un script de 47 lignes sous forme de chaîne et l’a transmis à python -c Cette phrase est réelle. Elle vient de mon agent IA — pas avec ces mots précis, mais exactement avec ces actions. Il devait exécuter un processus dans un pipeline ETL. La commande correcte était dans le Makefile. Mais quelque chose a échoué. Et plutôt que de demander conseil, il a fait ce que ferait n’importe quel développeur avec un accès root et zéro supervision : il a improvisé. ...

27 février 2026 · Fernando

Anatomie du Remote Control de Claude Code : l'API cachée que vous ne pouvez pas encore utiliser

Le 25 février 2026, Anthropic a annoncé Remote Control pour Claude Code. Le concept : vous démarrez Claude Code dans votre terminal, vous vous affalez sur le canapé avec votre mobile, et vous continuez la session depuis claude.ai. Sans SSH. Sans tmux. Sans écrans de terminal distant. Génial. En théorie. Parce qu’en pratique, quand je l’ai activé (/rc dans le terminal), ça m’a donné une URL, j’ai ouvert mon mobile, fait le login… et claude.ai m’a balancé un joli “this feature is not active in your organization”. Février 2026, compte Max 5x, payé scrupuleusement. Et rien. ...

27 février 2026 · Fernando

RustyClaw : Je vais réécrire un agent IA en Rust (parce que le mème m'y oblige)

“Tu sais ce qu’il y a de mieux avec Rust ? Il t’empêche de compiler des travaux bâclés. Tu sais ce qu’il y a de pire ? Tout ce que tu codes au début est bâclé.” — M. Krabs, probablement Quoi de mieux qu’un agent IA ? Un agent IA réécrit en Rust. Si tu as passé plus de cinq minutes sur internet, tu connais ce mème : peu importe le projet — un éditeur de texte, un serveur DNS, une calculatrice IMC — il y aura toujours quelqu’un dans les commentaires pour dire “tu devrais le réécrire en Rust”. C’est le fameux Rewrite It In Rust — RIIR pour les intimes — aussi inéluctable que la gravité. ...

24 février 2026 · Fernando

Mon IA a lu un JSON du disque 900 fois dans une boucle (et pourquoi aucun linter ne peut te sauver)

La semaine dernière, mon IA a écrit du code qui lisait un fichier JSON depuis le disque, le décryptait, faisait une recherche précise, puis répétait ça 900 fois dans une boucle for. À chaque itération : ouvrir le fichier, décoder le JSON, chercher une valeur, tout jeter. Et recommencer. C’est le genre d’erreur que j’enseigne à mes étudiants à éviter dans le premier mois de cours. Ce qui s’est passé (sans détour) Je construis Tokamak, une application de barre de menus pour macOS qui surveille les quotas de Claude Max. Une partie de la fonctionnalité scanne environ 900 fichiers JSONL de sessions Claude Code. Pour chaque fichier, elle doit déterminer l’offset de byte où elle s’était arrêtée la fois précédente (lecture incrémentale — ne lire que les parties nouvelles). ...

24 février 2026 · Fernando

git-cliff: le changelog qui s'écrit tout seul (ou presque)

107 commits. Des conventional commits impeccables depuis le premier jour. Feat, fix, refactor, chore — tout parfaitement étiquetté. Et le CHANGELOG ? Vide. Inexistant. Un fichier que “j’écrirai demain” pendant deux mois. Si ça vous dit quelque chose, vous n’êtes pas seuls. Écrire un changelog à la main, c’est un cauchemar de catégorie olympique. Ce n’est pas que ce soit difficile — c’est que c’est pénible, répétitif, et il y a toujours quelque chose de plus urgent à faire. Et c’est justement pour ça que git-cliff existe. ...

22 février 2026 · Fernando

Comment estimer votre quota Claude quand Anthropic ferme le robinet

Je suis en train de construire Tokamak, une app de barre de menu pour macOS qui surveille votre quota Claude Max. Il y a quelques semaines, Anthropic a publié ça dans ses Terms of Service : “You may not use OAuth or similar authorization mechanisms to allow third-party applications to access Claude on behalf of users.” Et moi, qui lis le quota Claude Max en utilisant les cookies du navigateur pour appeler un endpoint non documenté, je suis resté à fixer l’écran en pensant : “Et maintenant quoi ?” ...

22 février 2026 · Fernando

Notarisation sur macOS : le videur de boîte qu'Apple a mis devant votre app

Il est deux heures du matin. Votre app compile. Vous la signez. Vous l’empaquetez dans un DMG. Vous exécutez notarytool submit. Apple dit “In Progress”. Vous attendez 5 minutes. 10. 20. Une heure. Deux heures. La soumission reste “In Progress”. Vous allez vous coucher. Le lendemain matin : Invalid. Sans plus d’explication que “The signature of the binary is invalid”. Pour les deux architectures. Merci, Apple. Très utile. La notarisation est l’un de ces processus qui fonctionne parfaitement… jusqu’à ce que ça ne fonctionne plus. Et quand ça échoue, vous vous retrouvez avec un .dmg que Gatekeeper ne va pas laisser ouvrir et une erreur qui ne vous dit rien. Après m’être battu avec ça pendant quelques jours avec Tokamak (mon app de menu bar pour surveiller le quota de Claude), j’ai décidé de documenter tout ce que j’avais appris et d’écrire un linter pour ne plus jamais repasser par là. ...

22 février 2026 · Fernando

Machines virtuelles macOS en une seule commande

Je suis en train de construire une app de barre de menus pour macOS. Elle fonctionne parfaitement sur mon Mac. Maintenant je dois savoir si elle fonctionne sur un macOS propre : sans mes configurations, sans mes autorisations, sans mes données. Un utilisateur qui l’installe à partir de zéro. Comment on teste ça ? Il faut une machine virtuelle. “Facile”, me suis-je dit. “J’ai UTM installé. J’ouvre l’assistant, je crée une VM macOS, et c’est parti.” ...

21 février 2026 · Fernando

Pourquoi 99% de ce que vous envoyez à Claude est déjà en cache

Je développe une app qui surveille ma consommation de tokens dans Claude Code. Il y a quelques jours, en regardant les chiffres bruts, je suis tombé sur ça : cacheReadInputTokens: 4.241.579.174 inputTokens: 1.293.019 Quatre milliards deux cent quarante-et-un millions de tokens lus depuis le cache. Un million deux cent quatre-vingt-treize mille tokens “frais”. Ça fait un 99,97% de cache hit. Ma première réaction a été de penser que quelque chose était cassé. Personne n’a 99% de cache. Ni Redis. Ni Cloudflare. Ni votre mère quand elle dit qu’elle sait déjà ce que vous allez lui demander à manger. ...

19 février 2026 · Fernando