Selon le suivi de 1M AI News, la nouvelle fonctionnalité « buddy »/animal de compagnie de Claude Code est arrivée en ligne il y a quelques heures ; dans la communauté des développeurs, on a déjà retrouvé des méthodes de « ré-échappement » à partir de fuites de code source, et des outils open source ainsi que des tutoriels se sont propagés sur des plateformes comme Linux.do, V2EX, GitHub, etc.
À l’heure actuelle, il existe au moins deux parcours de ré-échappement. L’un vise une valeur de sel (salt) fixe dans l’algorithme de génération des animaux de compagnie : cette valeur est codée en dur sur 15 caractères dans la production compilée de Claude Code ; il suffit de remplacer par une chaîne de même longueur pour modifier la graine aléatoire. Après une énumération brute, on trouve la valeur correspondant à l’animal de compagnie cible, puis on l’écrit. Une autre méthode exploite des différences de parcours d’authentification : lorsqu’un utilisateur abonné se connecte normalement, le serveur envoie accountUuid comme graine pour l’animal de compagnie et cette valeur ne peut pas être altérée ; mais lors de l’authentification via des variables d’environnement, cette valeur n’est pas écrite dans la configuration locale. Le système se rabat alors sur la lecture du champ userID, qui est librement modifiable.
La méthode consistant à modifier le salt est la plus fragile : lors de la prochaine mise à jour de Claude Code, elle sera écrasée. Modifier le userID pour les utilisateurs abonnés a aussi une durée de validité ; il suffit à Anthropic d’ajouter la logique d’écriture de accountUuid depuis le chemin des variables d’environnement pour tout bloquer. Les utilisateurs API (authentifiant via leur propre API Key) n’ont naturellement pas d’accountUuid : ils peuvent donc modifier userID directement, avec une fenêtre relativement plus longue. Toutefois, Anthropic peut aussi bloquer via la génération d’un identifiant stable à partir du hachage de l’API Key. Les données de squelette ne sont pas stockées en local : elles sont recalculées à chaque démarrage, de sorte qu’un quelconque correctif côté serveur peut être appliqué immédiatement.
En outre, le userID ne sert pas uniquement au système des animaux de compagnie. Le code source divulgué indique que le reporting de télémétrie et les groupes de tests A/B lisent aussi cette valeur : une fois modifiée, elle peut entraîner un dysfonctionnement des fonctionnalités expérimentales ou une rupture des données d’utilisation.