Documentation / Agents

Claude Code (CLI et desktop)

Mis à jour le

TL;DR — Tokenade ajoute des hooks étiquetés dans `~/.claude/settings.json` et une section de règles dans `~/.claude/CLAUDE.md`. Acceptez la demande de confiance du dossier, sinon aucun hook ne tourne. Vérifiez avec `tokenade hooks status`.

Claude Code profite de toute la couverture de Tokenade grâce aux hooks : chaque commande shell, lecture de fichier, recherche, récupération web et résultat MCP peut être replié avant d'atteindre le modèle. tokenade install le configure dès qu'il trouve Claude Code, y compris la copie intégrée à l'onglet Code de Claude Desktop. La seule étape qui vous revient : accepter la demande de confiance de Claude Code dans chaque dossier où vous travaillez.

Ce que l'installation écrit

Tous les chemins sont dans votre dossier personnel : ~ sous Linux et macOS, %USERPROFILE% sous Windows. Si CLAUDE_CONFIG_DIR est défini, Tokenade utilise ce dossier à la place de ~/.claude. Avec --per-project, il écrit dans ./.claude/ du dossier courant.

FichierCe que Tokenade ajoute
~/.claude/settings.jsonDes groupes de hooks étiquetés _tag: "tokenade…", l'indicateur d'économies statusLine, et le seuil d'auto-compaction (autoCompactWindow plus env.CLAUDE_CODE_AUTO_COMPACT_WINDOW)
~/.claude/CLAUDE.mdUne courte section de règles Tokenade, pour que l'agent connaisse les commandes tokenade
.mcp.json, ~/.claude.jsonLes serveurs MCP tiers, réécrits pour démarrer derrière tokenade mcp-wrap (à éviter avec --no-wrap-mcps)
Dossier courantLes fichiers de règles du projet (CLAUDE.md, AGENTS.md…) préparés à l'installation

Vos propres hooks, serveurs MCP et règles sont conservés. Une statusLine que vous aviez déjà est enveloppée, pas remplacée ; tokenade statusline off la désactive.

Les hooks

ÉvénementRôle
PreToolUseRéécrit une commande shell en tokenade wrap '<cmd>', redirige les grosses lectures et les appels web vers des versions repliées, prend un instantané avant une modification
PostToolUseReplie les sorties de commandes, les lectures de fichiers, les résultats de recherche et les pages récupérées ; garde l'index du code à jour après modification
SessionStartContexte de session (par exemple les impasses récentes)
UserPromptSubmitNote de style avant chaque demande
PreCompactS'exécute avant que Claude Code compacte la conversation
SubagentStopRésultats des sous-agents

Chaque hook est sans échec bloquant : si Tokenade plante ou est absent, le hook se termine proprement et votre agent continue comme si Tokenade n'était pas là. Le fonctionnement de chaque hook est décrit dans Comment les hooks interceptent les appels d'outils.

--no-hook saute les hooks PostToolUse et d'indexation Edit/Write. --autocompact-pct <N> change le seuil (10-95, 70 par défaut) ; --no-autocompact retire celui posé par Tokenade.

Acceptez la demande de confiance du dossier

Claude Code n'exécute aucun hook dans une session interactive ouverte dans un dossier dont vous n'avez pas accepté la demande de confiance. Les hooks de Tokenade y sont ignorés sans bruit, comme tous les autres. Les exécutions non interactives (claude -p) ne sont pas concernées.

Quand Claude Code vous demande si vous faites confiance au dossier, acceptez. Depuis la 1.2.1, tokenade healthcheck, lancé depuis ce dossier, vous prévient :

-- Claude Code has not trusted /path/to/project — in an interactive session here, it runs none of its hooks (tokenade's included)
accept the trust prompt when Claude Code opens this folder; `claude -p` runs are not affected

Tokenade n'accorde jamais cette confiance à votre place. Il vérifie aussi disableAllHooks dans ~/.claude/settings.json : s'il vaut true, aucun hook ne tourne.

Claude Desktop

Onglet Code. Il exécute Claude Code lui-même et lit les mêmes réglages ~/.claude : mêmes hooks, même couverture. Depuis la 1.2.1, tokenade install le configure même sans commande claude dans votre PATH, en examinant la copie de Claude Code fournie avec l'app (dans le dossier de données de l'app : ~/.config/Claude sous Linux, ~/Library/Application Support/Claude sous macOS, %APPDATA%\Claude sous Windows, ou le dossier propre à la version Microsoft Store).

Chat. Le chat n'exécute ni commande locale ni lecture de fichier : seule l'optimisation MCP s'applique. tokenade install enveloppe les serveurs déclarés dans claude_desktop_config.json :

SystèmeFichier
Linux~/.config/Claude/claude_desktop_config.json
macOS~/Library/Application Support/Claude/claude_desktop_config.json
Windows%APPDATA%\Claude\claude_desktop_config.json
Windows (Microsoft Store)%LOCALAPPDATA%\Packages\Claude_…\LocalCache\Roaming\Claude\claude_desktop_config.json

Pour les envelopper de nouveau plus tard : tokenade mcp-wrap install. Redémarrez Claude Desktop après un changement. Voir Envelopper les serveurs MCP.

Claude Cowork tourne dans un environnement isolé que les outils locaux ne peuvent pas atteindre. Il n'est pas pris en charge.

Vérifier

tokenade hooks status # chaque hook Claude Code installé
tokenade hooks tail # les 20 derniers déclenchements, lus dans ~/.tokenade/debug.log
tokenade healthcheck # hook_installed, wrapped_mcps, confiance du dossier

Utilisez ensuite Claude Code quelques minutes et consultez tokenade gain. Voir votre première session.

Désactiver ou retirer

ObjectifCommande
Couper les hooks pour une session ou un shellDéfinir TOKENADE_HOOK_DISABLED=1 dans l'environnement d'où démarre Claude Code
Lancer une commande sans compactiontokenade raw <cmd>
Restaurer seulement les entrées MCP d'originetokenade unwrap-mcps
Retirer l'indicateur de la barre d'étattokenade statusline off
Tout retirertokenade uninstall

tokenade uninstall restaure d'abord les serveurs MCP enveloppés, retire le bloc Tokenade de ~/.claude/CLAUDE.md (après une sauvegarde), supprime chaque groupe de hooks _tag: "tokenade*" de ~/.claude/settings.json, puis efface les données propres à Tokenade. Prévisualisez avec tokenade uninstall --dry-run. Voir Mettre à jour et désinstaller.

Voir aussi