Outils
API Claude, Claude Code, RTK, Headroom
Prix
Réglages gratuits, outils open source
Temps
30 min
Niveau
Intermédiaire

Vous avez branché un agent IA sur votre boutique ou votre service client. Il répond bien, mais la facture d'API grimpe chaque mois sans que le nombre de clients suive. En regardant de près, la plupart des jetons (les morceaux de texte que le modèle facture) ne servent pas à réfléchir : ce sont les mêmes consignes renvoyées à chaque échange, des journaux, des listes de commandes au format JSON. Voici, dans l'ordre, ce que je règle avant de toucher à quoi que ce soit d'autre.

1. Mesurer avant de couper

Dans Claude Code, /usage affiche la consommation de la session et, depuis les versions récentes, la part des jetons servie par le cache. /context montre ce qui occupe la mémoire de travail de l'agent. Sur l'API, chaque réponse indique cache_read_input_tokens et cache_creation_input_tokens : si les deux restent à zéro, rien n'est mis en cache.

Prompt à copier
Voici la sortie de /usage et de /context de ma session. Classe ce qui consomme le plus de jetons, du plus gros au plus petit. Propose trois changements concrets pour réduire la consommation sans baisser la qualité des réponses, et dis pour chacun ce que je risque de perdre.

2. Le cache de prompt (réglage officiel)

Le cache garde chez Anthropic le début fixe de vos requêtes (consignes, catalogue, documentation) pour ne pas le refacturer plein tarif. D'après la documentation d'Anthropic, une lecture en cache coûte 0,1 fois le prix normal des jetons d'entrée (0,05 fois sur Claude Opus 5.5 et Sonnet 5.5). L'écriture coûte un peu plus cher : 1,25 fois pour un cache de 5 minutes, 2 fois pour une heure. Le cache s'active avec un seul champ dans la requête :

Requête API (JSON)
{
  "model": "claude-sonnet-5-5",
  "max_tokens": 1024,
  "cache_control": {"type": "ephemeral"},
  "system": "Tu es l'assistant du service client de la boutique…",
  "messages": [{"role": "user", "content": "Où en est ma commande ?"}]
}

Deux conditions : la partie fixe doit être au début et ne pas changer d'un appel à l'autre (une date ou un identifiant glissé dans les consignes casse le cache), et elle doit dépasser une taille minimale, 512 jetons sur les modèles récents. Claude Code, lui, utilise le cache automatiquement.

3. Le bon modèle pour chaque tâche (réglage officiel)

Prix publics par million de jetons, au 17/10/2026, sur la page tarifs d'Anthropic :

  • Claude Opus 5.5 : 4 $ en entrée, 20 $ en sortie.
  • Claude Sonnet 5.5 : 2 $ en entrée, 10 $ en sortie.
  • Claude Haiku 5.5 : 0,10 $ en entrée, 0,50 $ en sortie, pour des requêtes jusqu'à 100 000 jetons.

Trier des e-mails ou extraire un montant d'une facture ne demande pas le plus gros modèle. La documentation de Claude Code recommande Sonnet pour la plupart des tâches, Opus pour les décisions complexes, et model: haiku pour les sous-agents simples. Pour les traitements qui peuvent attendre (classer 2 000 avis clients pendant la nuit), l'API Batch facture 50 % de moins en entrée comme en sortie.

4. RTK : compresser les sorties de commandes

RTK est un petit programme qui s'intercale entre votre agent de code et le terminal : il raccourcit ce que renvoient git status, les tests ou ls avant que l'agent ne le lise. Selon le projet, la sortie des commandes devient jusqu'à 90 % plus petite. Le README précise lui-même que la facture ne baisse pas d'autant, car ces sorties ne sont qu'une partie des jetons.

  1. Installer et vérifierUn autre projet porte le même nom : rtk gain doit afficher un tableau d'économies.
    Terminal
    brew install rtk
    rtk gain
  2. Le brancher sur Claude CodePuis redémarrez Claude Code. RTK n'agit que sur les commandes du terminal, pas sur les outils de lecture intégrés.
    Terminal
    rtk init -g

Licence : l'édition complète mêle Apache-2.0 et BUSL-1.1, l'édition rtk-oss est en Apache-2.0 seule. Le projet indique que l'usage en production est gratuit, mais pas la revente de RTK comme service.

5. Headroom : compresser le JSON, les journaux et les fichiers

Headroom (licence Apache-2.0) compresse sur votre machine tout ce que l'agent lit : résultats d'outils, journaux, fichiers. Selon le projet, environ 20 % de jetons en moins pour un agent de code, et 60 à 95 % pour du JSON très répétitif, comme une liste de commandes renvoyée par une boutique en ligne.

Terminal
uv tool install --python 3.13 "headroom-ai[all]"
headroom wrap claude
headroom doctor

headroom wrap claude lance un proxy local (un relais par lequel passent vos requêtes) et installe aussi l'outil Serena pour ce projet. headroom unwrap claude annule tout.

Limites

  • Les pourcentages des deux outils sont ceux des projets, mesurés sur leurs exemples. Comparez votre /usage avant et après une semaine.
  • Une compression trop forte peut cacher à l'agent la ligne d'erreur dont il avait besoin. Headroom garde l'original accessible à l'agent, mais relisez les premiers résultats dans les deux cas.
  • Les habitudes comptent autant : /clear entre deux tâches sans rapport, un CLAUDE.md de moins de 200 lignes, des consignes précises plutôt que « améliore le code ».

Sécurité. Un proxy voit passer toutes vos requêtes, et un hook réécrit les commandes de l'agent. Installez ces outils depuis leurs dépôts officiels, lisez ce qu'ils modifient dans votre configuration, et testez-les sur un projet sans données clients avant de les généraliser.

Sources

Votre agent coûte plus cher que prévu ? Je peux l'auditer et le régler dans le cadre de mes agents IA sur mesure.