Chaser s'installe dans Claude Code et tourne à chaque tour de conversation. Vous avez le droit de savoir exactement ce qu'il exécute, ce qu'il écrit sur votre disque et ce qui quitte votre poste. Cette page donne les listes complètes, pas un résumé rassurant.
L'installateur enregistre exactement ces sept entrées dans votre configuration Claude Code. Aucune autre.
| Événement | Script | Rôle |
|---|---|---|
SessionStart | hook_sessionstart.js | Injecte le HANDOFF et la mémoire au démarrage |
Stop | hook_handoff_auto.js | Met à jour le handoff en fin de tour |
SessionEnd | hook_handoff_auto.js --force | Handoff de fin de session |
PreCompact | hook_handoff_auto.js --force | Handoff avant une compaction |
PreToolUse | hook_chaser.js | Bouclier de sécurité + compresseur |
PostToolUse | hook_chaser.js | Carte AST des gros fichiers lus |
UserPromptSubmit | hook_chaser.js | Conseil de compaction, économies du tour, Tier 0 (opt-in) |
Le PreToolUse ne se déclenche que sur les outils qui touchent
votre système ou le réseau : Bash, Edit, Write,
MultiEdit, NotebookEdit, WebFetch et les outils MCP
de type fetch/navigate.
La liste est courte, et elle est exhaustive.
moteur/hook_chaser.js — le composant qui s'exécute à chaque tour — ne
contient aucune URL et n'ouvre aucune connexion. Ses décisions
(bouclier, compression, conseil) sont calculées en local, en JavaScript pur.
GET /version.json, une fois par jour, pour savoir
si une mise à jour existe. Une requête de lecture : aucune donnée de votre
part n'est transmise.POST /beta, uniquement si une mise à jour est
téléchargée. Le corps de la requête contient votre clé de licence, et
rien d'autre — c'est ce qui autorise le téléchargement.Vos prompts, vos fichiers, vos noms de projet et le contenu de vos sessions ne sont envoyés nulle part par Chaser.
HANDOFF.md à la racine du projet — votre passation de session, lisible..rapport/ — états locaux (throttle des conseils, compteurs)..handoff_global/ — journaux de mesure et mémoire.Tout est en texte clair. Vous pouvez les ouvrir, les auditer, les supprimer.
Une économie annoncée sans protocole n'est pas une mesure, c'est une promesse. Les nôtres sont calculées sur des journaux réels et publiées avec leur méthode.
Un audit automatique interdit toute affirmation chiffrée sans réserve ni source sur nos pages publiques. Concrètement : le « −70 % » correspond à une médiane mesurée de 71,7 % dans le mode le plus agressif ; le « −90 % » est un agrégat, pas le cas typique — et nous l'écrivons comme tel plutôt que de laisser le chiffre le plus flatteur circuler seul.
Nous tenons un registre des défauts trouvés dans Chaser. Chaque entrée porte sa cause racine, sa gravité, et le test qui l'empêche de revenir — la règle interne étant qu'un bug corrigé sans test n'est pas corrigé.
| Gravité | Sens | Nombre |
|---|---|---|
| S1 | le système affirme quelque chose de faux | 12 |
| S2 | une panne réelle qu'aucun signal ne remonte | 8 |
| S3 | du code vert mais débranché | 2 |
| S4 | fragile, cassera au prochain ajout | 9 |
31 défauts enregistrés, dont 30 fermés avec leur test de garde. Le trente-et-unième reste ouvert : sa cause n'est pas établie, et nous préférons l'écrire plutôt que de le déclarer résolu.
Chaque livraison passe une porte de qualité de 87 suites de tests, et la SBOM publie les 112 composants du moteur.
Quatre composants restent fermés : le compresseur, le routeur de modèles, le rappel de règles et les seuils appris. Ce sont les seules pièces dont la copie ferait gagner du temps à un concurrent.
Une zone d'ombre au milieu d'une page de transparence ne vaut rien. Nous ne vous demandons donc pas de nous croire : pour chacun de ces quatre composants, nous publions trois choses qui ne servent à rien pour le copier, et à tout pour nous tenir responsables.
L'empreinte SHA-256 de chaque fichier fermé est publiée et scellée dans un journal chaîné. Conséquence directe : nous ne pouvons pas modifier un seuil après coup pour faire coller un chiffre annoncé. L'engagement est horodaté, et toute modification devient visible. Une empreinte n'apprend rien à un concurrent ; elle apprend l'essentiel à un client sceptique.
Ce que le composant ne fait jamais. « Le compresseur ne perd aucun signal d'erreur » dit ce qu'un utilisateur a besoin de savoir, sans dire comment il compresse.
La garantie n'est pas une promesse commerciale : elle tombe si son test tombe, et ce test tourne dans la porte de qualité à chaque livraison.
| Composant fermé | Ce qu'il ne fait jamais |
|---|---|
| Compresseur réduit les grosses sorties d'outils |
Perdre un signal d'erreur : une ligne d'échec est conservée, avec ses voisines immédiates. |
| Routeur de modèles choisit le modèle le moins cher qui suffit |
Descendre sous 97 % de l'utilité d'un routeur parfait — et il bat strictement le hasard, mesuré sur banc. |
| Rappel de règles rappelle vos consignes de travail |
Réécrire votre demande : la sortie ne contient pas votre prompt, et le rappel est plafonné en taille. |
| Seuils et politiques quand compacter, quand tenter moins cher |
Appeler le réseau : ces décisions sont calculées localement, sur vos données, qui ne sortent pas. |
Le manifeste complet, avec les empreintes et le chaînon de scellement, est public : engagements.json. Un contrôle automatique compare le code livré à cet engagement — s'ils divergent, nous devons republier.
Notre journal de mesures est scellé dans un arbre de Merkle (RFC 6962, le mécanisme des logs de Certificate Transparency). Vous pouvez vérifier une entrée sans nous faire confiance ni installer le produit :
python verifier_preuve.py preuve_exemple.json —
le script recalcule les empreintes localement, aucun appel réseau.Honnêteté oblige : le champ signature est
null tant que notre clé Ed25519 de scellement n'est pas en
production — la preuve Merkle (inclusion + cohérence append-only) vaut par
elle-même, et nous ne prétendons pas à une authenticité que nous n'avons pas
encore. Si le vérificateur renvoie "valide": false, publiez-le.
Personne n'a encore vérifié indépendamment ces preuves — soyez le premier. Rejouez le pas-à-pas ci-dessus (10 minutes, Python 3 suffit), publiez votre constat signé de votre nom, où vous voulez, même s'il nous est défavorable : nous le lierons ici. C'est la seule chose qui manque à ces chiffres, et elle ne peut venir que de vous.
Tout le reste — ce que le produit exécute chez vous, ce qu'il envoie, comment nous mesurons, ce que nous cassons — est sur cette page, parce qu'aucune de ces informations ne vous demande de nous croire sur parole.