Quand on utilise Claude Code intensivement, deux questions reviennent : combien ça coûte, et comment payer moins pour le même travail. Début avril, on consacrait un article entier à la gestion des tokens, et l'un des conseils portait sur le cache de prompt, qui expire après cinq minutes d'inactivité.
La version 2.1.243, publiée le 25 août, apporte plusieurs réglages qui touchent précisément à ces sujets. Tour d'horizon, avec quelques rappels utiles.
À chaque message, Claude Code renvoie tout l'historique de la conversation au modèle. Le cache de prompt permet de ne pas repayer plein tarif cette partie déjà envoyée : tant qu'elle est en cache, sa relecture coûte beaucoup moins cher et va plus vite.
Le problème : le cache expire. Par défaut, après cinq minutes sans activité. Une pause café un peu longue, et le message suivant renvoie tout l'historique sans cache.
La 2.1.243 ajoute deux réglages : promptCacheTtl et subagentPromptCacheTtl. Ils permettent aux utilisateurs qui passent par une clé d'API ou un fournisseur cloud de garder un cache d'une heure sur la conversation principale, tout en laissant les sous-agents à cinq minutes.
Pourquoi distinguer les deux ?
- la conversation principale est celle à laquelle tu reviens après une réunion ou une pause : un cache long évite de repayer tout l'historique ;
- les sous-agents travaillent le plus souvent d'une traite, puis s'arrêtent : un cache long leur servirait rarement.
Pour la syntaxe exacte et les valeurs acceptées, consulte la documentation des réglages. Et si tu définis tes propres sous-agents, la 2.1.248 (27 août) a ajouté experimental.cacheTtl ("5m" ou "1h") dans leur frontmatter, pour choisir la durée du cache agent par agent.
Plusieurs outils, arrivés au fil des mois, permettent de vérifier que le cache fait bien son travail :
- depuis la 2.1.92 (avril),
/cost affiche pour les abonnés un détail par modèle et la part des lectures en cache ;
- depuis la même version, les abonnés Pro voient un message en pied de page quand ils reviennent sur une session dont le cache a expiré, avec une estimation des tokens qui seront renvoyés sans cache ;
- côté API, les diagnostics de cache, en bêta depuis mai, expliquent pourquoi une requête a raté le cache et où le préfixe a divergé.
Si tu constates beaucoup de ratés, cherche ce qui change entre deux requêtes : modification du prompt système, ajout ou retrait d'outils, changement de modèle ou de niveau d'effort en cours de session.
Autre ajout de la 2.1.243 : le réglage géré modelPricing. Il permet à une organisation d'indiquer ses tarifs négociés par modèle et un multiplicateur de remise. Ces valeurs sont alors utilisées par /cost, la status line et les chiffres de coût de la télémétrie, au lieu du prix catalogue.
Pour les entreprises qui ont un contrat avec des conditions particulières, c'est la différence entre une estimation approximative et un suivi fidèle.
Dans la même logique, la 2.1.239 (21 août) intègre aux estimations de coût (/cost, status line, --max-budget-usd) la majoration de 1,1 appliquée à l'inférence limitée aux États-Unis pour les espaces de travail avec résidence des données.
La commande /loop permet de faire tourner une tâche en boucle, par exemple pour surveiller un déploiement ou une file de tâches. Pratique, mais une boucle mal réglée peut consommer beaucoup sans qu'on s'en aperçoive.
La 2.1.243 ajoute un détail des boucles dans /usage : pour chaque boucle, le nombre d'exécutions, les tokens totaux, les tokens par exécution et la dernière exécution. Les boucles qui s'emballent sautent aux yeux.
- 2.1.243 : la status line et
/usage affichaient parfois l'utilisation d'avant la réinitialisation d'une fenêtre de limite, si la session était restée inactive ; c'est corrigé.
- 2.1.246 (25 août) : le coût et la durée affichés dans la status line ne repartent plus à zéro après un passage par la vue des agents.
- 2.1.238 (20 août) : l'avertissement de cache raté lors d'un changement de modèle ou d'effort ne s'affiche plus quand le cache avait déjà expiré.
- 2.1.236 (19 août) :
/usage affiche la ligne de dépense en crédits d'usage pour les membres Team et Enterprise.
Bonne nouvelle au passage : le 10 août, Anthropic a annoncé que le prix de lancement de Sonnet 5 (2 $ / 10 $ par million de tokens) devient le prix standard. La hausse prévue à 3 $ / 15 $ au 1er septembre n'aura pas lieu. La 2.1.243 met à jour le sélecteur de modèle et le skill claude-api en conséquence.
Pour qui cherche à optimiser ses coûts, c'est un argument de plus pour Sonnet 5 par défaut sur les tâches courantes.
- Choisis ton modèle selon la tâche : Sonnet 5 pour le quotidien, Opus pour ce qui le mérite.
- Si tu utilises une clé d'API ou un cloud, envisage
promptCacheTtl à une heure sur la conversation principale.
- Si tu es en entreprise, renseigne
modelPricing pour des estimations fidèles.
- Surveille
/usage, et notamment le nouveau détail des boucles.
- Utilise
--max-budget-usd pour les tâches non interactives.
- 2.1.243 :
promptCacheTtl et subagentPromptCacheTtl pour un cache d'une heure sur la conversation principale.
- 2.1.243 :
modelPricing pour utiliser tes tarifs négociés dans les estimations.
- 2.1.243 : détail des boucles dans
/usage.
- 10 août : le prix de Sonnet 5 à 2 $ / 10 $ devient définitif.