Docs & Manuel · Token Usage Plugin
Comprendre l'utilisation des jetons
dans Claude Code
Token Usage est un plugin communautaire pour Obsidian qui lit les journaux de session de Claude Code et affiche votre consommation de jetons en direct dans le panneau latéral. Pas de clé API, pas de compte, aucune donnée ne quitte votre machine : le plugin lit uniquement les fichiers JSONL que Claude Code écrit déjà en local. Cette page unique est à la fois le glossaire et le manuel complet : installation, chaque terme du panneau latéral et du tableau de bord, ce que le plugin lit et ne lit pas, et ce que les chiffres signifient pour vos coûts.
Premiers pas#
Installer. Dans Obsidian : Paramètres → Plugins communautaires → Parcourir → rechercher « Token Usage » → Installer → Activer. C'est toute la configuration : pas de compte à créer, pas de clé API à coller, aucun service externe. Cela fonctionne de la même façon sous Windows, macOS et Linux ; le seul détail propre à une plateforme (l'emplacement des sessions du mode agent de l'application Claude Desktop) est expliqué dans Sources de données et transparence.
Ouvrir. Cliquez sur l'icône de graphique dans le ruban de gauche, ou lancez « Open Token Usage » depuis la palette de commandes (Ctrl/Cmd+P). Les deux ouvrent la vue dans le panneau latéral droit, où elle reste comme n'importe quel autre volet d'Obsidian.
« Pas encore de données » ? C'est normal après une nouvelle installation si Claude Code n'a encore rien écrit dans la période de lecture actuelle. Démarrez ou poursuivez une session Claude Code n'importe où, dans un terminal, un éditeur ou Obsidian : le panneau latéral la détecte de lui-même grâce à un observateur de fichiers, au plus tard après 30 secondes, avec une interrogation régulière en filet de sécurité.
Rien à configurer pour obtenir des chiffres utiles. Le panneau latéral fonctionne immédiatement : à gauche, une barre d'icônes avec quatre pages, Aperçu, Calendrier, Analyse et Paramètres, voir plus bas. Depuis la 2.0, il n'existe plus que cette disposition ; l'ancienne vue « Classic » et le réglage qui permettait de basculer ont disparu.
Commandes disponibles dès le premier jour (palette de commandes, les noms des commandes sont en anglais) :
| Commande | Ce qu'elle fait |
|---|---|
| Open Token Usage | Ouvre la vue du panneau latéral ou la met au premier plan |
| Create Token Usage report | Écrit un rapport Markdown dans votre vault |
| Open Token Usage dashboard | Génère le tableau de bord HTML et l'ouvre dans votre navigateur par défaut |
| Create Vault Token Usage Projects report | Écrit une ventilation Markdown par vault et par projet, pratique pour facturer plusieurs clients ou espaces de travail |
| Show what's new | Rouvre à tout moment la fenêtre des nouveautés de la version installée |
| Export all CSV files | Écrit les trois exports CSV dans votre vault, voir Exporter vos données |
| Export projects CSV | La vue par vault et par projet dans un seul fichier CSV |
| Export daily detail CSV | La matrice jour par vault dans un seul fichier CSV |
| Export key figures CSV | Les indicateurs clés, les relevés officiels des limites et la fourchette de vos dépassements dans un seul fichier CSV |
Sources de données et transparence#
Ce plugin a besoin d'un accès direct au système de fichiers pour fonctionner. L'examen des plugins communautaires d'Obsidian le signale comme un avertissement attendu, pas comme un défaut, puisque lire des fichiers de session locaux est précisément son rôle. Plutôt que de vous demander une confiance aveugle, voici exactement où se trouvent ces fichiers, quels champs le plugin lit et ce qu'il ne touche jamais. Chaque affirmation se vérifie directement dans le code source : main.js n'est pas minifié et il est public sur GitHub.
Où se trouvent réellement les fichiers JSONL. Claude Code, qu'il tourne dans un terminal, dans un éditeur comme VS Code ou dans Obsidian, écrit un fichier JSONL par session sous ~/.claude/projects/<workspace-id>/<session-id>.jsonl, un sous-dossier par répertoire de travail. C'est identique sous Windows (C:\Users\<vous>\.claude\projects\...), macOS (/Users/<vous>/.claude/projects/...) et Linux (/home/<vous>/.claude/projects/...) ; le plugin le trouve via os.homedir() de Node, qui fonctionne de la même manière partout. Un autre fichier intervient, en lecture seule tant que vous n'utilisez pas le réglage de conservation du plugin : le ~/.claude/settings.json de Claude Code, consulté uniquement pour la valeur cleanupPeriodDays. Si vous la modifiez depuis les paramètres du plugin, une sauvegarde .bak du fichier entier est écrite automatiquement avant. Et uniquement si vous installez le flux facultatif : ~/.claude/ratelimit-log.jsonl, en lecture seule, les pourcentages officiels avec leurs heures de réinitialisation.
Mode agent de Claude Desktop : une exception propre à Windows, en l'état actuel des connaissances. La version Windows de l'application de bureau Claude exécute son Claude Code intégré dans un bac à sable de conteneur d'application MSIX, qui virtualise le système de fichiers. Les sessions du mode agent y atterrissent donc ailleurs : %APPDATA%\Claude\local-agent-mode-sessions\..., ou pour la version du Microsoft Store, le chemin isolé %LOCALAPPDATA%\Packages\<package-id>\LocalCache\Roaming\Claude\local-agent-mode-sessions\.... Le plugin parcourt automatiquement ce second emplacement depuis la v1.8.0, sous Windows uniquement. macOS et Linux n'ont pas de couche de bac à sable équivalente et, selon la documentation disponible, Claude Code y écrit dans le même ~/.claude/projects/, qu'il s'agisse de la ligne de commande, des intégrations aux éditeurs ou de l'application de bureau. Sur macOS et Linux, les sessions du mode agent (là où il existe) devraient donc déjà arriver à l'emplacement standard que le plugin lit. C'est la meilleure indication actuelle, pas une source primaire d'Anthropic : si vous utilisez le mode agent sous macOS ou Linux et qu'une partie de votre usage n'apparaît pas, ouvrez un ticket sur GitHub.
| Champ lu dans une ligne de session | À quoi il sert |
|---|---|
message.usage | Les nombres de jetons d'entrée, de sortie, d'écriture et de lecture en cache : chaque chiffre du panneau latéral et du tableau de bord |
message.model | Le modèle auquel la ligne appartient (Haiku, Sonnet, Opus, Fable) |
cwd, sessionId | Le vault, le sous-projet et la session auxquels un point de données appartient |
timestamp | Le moment : base de toutes les vues temporelles, de la fenêtre de 5 heures et de l'archive |
compactMetadata (entrées système) | Le nombre de jetons avant et après une compaction, affiché comme événement de compaction |
error (entrées système) | Uniquement pour détecter les limites de débit et les échecs de connexion, jamais le contenu des messages |
aiTitle | La seule exception, voir ci-dessous |
La seule chose qui n'est pas un nombre. Claude Code écrit lui-même un titre court, généré automatiquement, pour chaque session dans le même fichier JSONL (une entrée ai-title). Le tableau Top Sessions du tableau de bord lit cette seule courte chaîne et l'affiche à la place d'un identifiant de session brut, uniquement pour que la liste soit lisible. C'est le seul champ affiché qui provient du contenu de la conversation plutôt que de purs chiffres d'usage, et c'est le résumé de Claude Code lui-même, rien que le plugin ne génère ou n'enrichisse.
Ce qu'il ne lit jamais. Le texte de vos prompts, les réponses de Claude, les appels d'outils, le contenu des fichiers ou quoi que ce soit d'autre dans une ligne de session au-delà des champs ci-dessus ne sont jamais analysés, affichés, stockés ni envoyés nulle part : le code n'ouvre tout simplement jamais ces clés. Vérifiez par vous-même : recherchez dans main.js .usage, .model, .cwd, .sessionId et .aiTitle, et vous trouverez chaque endroit où ce plugin touche à vos données.
Ce qui quitte votre machine : rien. Aucune requête réseau, aucune télémétrie, aucun serveur externe : chaque chiffre est calculé en local. Le plugin écrit exactement deux types de nouveaux fichiers, tous deux dans votre propre vault, tous deux uniquement agrégés : l'archive quotidienne sous Token Usage Archive/ (voir Archive et données à long terme) et, seulement quand vous les déclenchez, le rapport Markdown, le tableau de bord HTML, l'export par vault et par projet et les exports CSV. Aucun ne contient jamais un prompt ni une réponse.
Si vous voulez vérifier le navigateur vous-même. Les outils de développement de votre navigateur (F12 → onglet Réseau, filtré sur XHR/Fetch) montrent chaque requête pendant que vous utilisez claude.ai. Deux réserves honnêtes : ce plugin ne fait rien de cela pour vous, il n'a ni intégration au navigateur, ni extension, ni proxy, et c'est une limite voulue. Et le client web de claude.ai parle à des points d'accès internes et non documentés d'Anthropic, pas à l'API publique de Claude qu'utilise Claude Code : les nombres qui ressemblent à des jetons dans le navigateur sont des détails internes qui peuvent changer sans préavis. L'objet usage de l'API publique, celui que Claude Code écrit dans vos fichiers JSONL locaux et que ce plugin lit, reste la seule source stable et documentée des nombres exacts de jetons.
Limites : des pourcentages qui viennent uniquement d'Anthropic#
Les pourcentages viennent désormais uniquement d'Anthropic. Jusqu'à la 2.1, Token Usage estimait un pourcentage pour la fenêtre de 5 heures et pour la semaine, soit à partir de vos propres dépassements, soit extrapolé à partir du flux. Nous avons comparé cette estimation aux valeurs officielles pendant onze jours. Pour la fenêtre de 5 heures, elle s'écartait en moyenne de 36 points, et au moment où une fenêtre était officiellement pleine, notre anneau affichait n'importe quoi entre 61 et 217 pour cent (notre propre mesure, 37 relevés, du 6 au 17 octobre 2026). La vitesse à laquelle une fenêtre se remplit dépend fortement du contexte qu'une session transporte, et les journaux locaux ne permettent pas de le savoir de façon fiable. Les anneaux suggéraient une précision qu'ils n'ont jamais eue. C'était notre décision, et elle était mauvaise.
Depuis la 2.5, une règle simple s'applique : nous n'affichons un pourcentage pour une limite que s'il vient d'Anthropic, avec l'heure à laquelle il a été relevé. Pour cela, il vous faut le flux (voir Pourcentages officiels d'Anthropic). Nous faisons une exception pour la semaine : entre deux relevés, nous prolongeons la dernière valeur officielle avec vos jetons comptés et l'indiquons clairement, car la limite hebdomadaire s'est révélée stable dans la même mesure (1,2 point d'écart en moyenne). Sans le flux, vous voyez ce que nous savons avec certitude : vos jetons dans la fenêtre en cours et dans la semaine, le temps restant jusqu'à la réinitialisation et la fourchette dans laquelle votre fenêtre de 5 heures s'est remplie jusqu'ici. L'anneau Aujourd'hui n'affiche plus de pourcentage, mais un multiple de votre journée habituelle. Tout le reste du plugin est compté et reste tel quel.
| Anneau | Avec le flux | Sans le flux |
|---|---|---|
| Fenêtre 5h | Le pourcentage officiel d'un relevé pris dans la fenêtre en cours, « relevé hh:mm », plus les jetons comptés depuis. Dans une fenêtre, la valeur officielle ne peut que monter : c'est donc un minimum. Un relevé d'une fenêtre précédente n'est pas affiché | Gris : les jetons de la fenêtre en cours et le temps restant jusqu'à la réinitialisation |
| Cette semaine | Le pourcentage officiel. Entre deux relevés, il est prolongé avec vos jetons comptés, marqué « extrapolé », avec la valeur officielle et son heure en dessous. Après une réinitialisation hebdomadaire sans nouveau relevé, il repart de 0 % avec la limite de la semaine précédente, marqué « extrapolé depuis la réinitialisation » | Gris : les jetons de la semaine et le temps restant jusqu'à la réinitialisation |
| Aujourd'hui | Un multiple de votre journée habituelle, par exemple « 1,7x votre journée habituelle ». Jamais une limite, voir L'anneau Aujourd'hui | Pareil |
Pourquoi les jetons sous un anneau ne correspondent pas à son pourcentage. Le plugin compte l'entrée et la sortie. Anthropic compte aussi le contexte qu'une session envoie avec chaque requête, donc pourcentage et jetons ne correspondent pas directement. Une longue session qui transporte un grand contexte peut remplir une fenêtre avec relativement peu de jetons comptés. C'est le pourcentage qui fait foi.
Ce qui reste : la fourchette de vos dépassements. Sous les anneaux, le plugin indique le nombre de jetons le plus bas et le plus haut auquel votre fenêtre de 5 heures s'est remplie jusqu'ici, par exemple « Jusqu'ici, votre fenêtre de 5h était pleine après 51 K à 316 K (102 dépassements) ». Il compte l'entrée et la sortie depuis le début de la fenêtre jusqu'à chaque dépassement. Ce n'est ni une limite ni une prévision : cela montre à quel point l'écart est réellement large. Avec le flux, le début de la fenêtre vient d'Anthropic. Sans lui, il est reconstitué à partir de vos journaux et peut différer de quelques minutes si claude.ai ou un autre appareil a ouvert la fenêtre. Sans le flux, une courte ligne sous les anneaux mène directement à la configuration.
Pourquoi pas plutôt une meilleure estimation ? Nous en avons essayé une : en pondérant aussi les jetons de cache, la semaine tombait très près de la valeur officielle, mais la fenêtre de 5 heures restait à environ 25 pour cent près, dans un sens comme dans l'autre, sur nos propres données. Anthropic peut changer à tout moment la façon dont une limite est comptée, et un chiffre sur lequel vous ne pouvez pas compter est pire que pas de chiffre du tout. Les jetons comptés, la réinitialisation et la fourchette sont certains ; le pourcentage vient de la source.
Jusqu'à la 2.1, cette section s'appelait « Estimation empirique des limites » et affirmait que l'estimation deviendrait plus précise à chaque dépassement. La mesure ci-dessus a montré que ce n'était pas le cas.
Qu'est-ce qu'un jeton ?#
Un jeton (token) est un petit morceau de texte, environ trois quarts d'un mot anglais ; en français, les mots se découpent souvent en un peu plus de jetons. Ce n'est ni exactement un mot ni exactement un caractère. La phrase « Bonjour, comment allez-vous aujourd'hui ? » donne environ 9 jetons. Les mots longs ou inhabituels coûtent davantage ; les mots courts et fréquents partagent parfois un jeton. Votre entrée et la réponse de Claude sont comptées séparément.
Chaque appel à l'API est facturé selon deux valeurs : combien de jetons entrent et combien de jetons sortent. C'est tout ce qui compte pour la facture.
Entrée et sortie#
L'entrée (input) est tout ce que Claude reçoit dans une requête : votre message, l'invite système, le contenu des fichiers, les résultats d'outils et l'historique de la conversation, renvoyé à chaque nouveau tour.
La sortie (output) est ce que Claude écrit en retour. Les jetons de sortie coûtent toujours plus cher que les jetons d'entrée, quel que soit le modèle, en général 3 à 5 fois plus.
Une question isolée coûte peu. Les coûts grandissent avec le volume, la taille du contexte et la répétition, pas avec la complexité de ce que vous demandez.
C.Write — écriture en cache#
Quand Claude Code envoie un bloc de texte volumineux et répété (fichiers du projet, longue invite système, base de code entière), l'infrastructure d'Anthropic peut le mettre en cache. La première fois que ce bloc est traité, il est écrit dans le cache. C'est une écriture en cache.
Il existe deux types d'écriture en cache, à des prix différents : une écriture en cache de 5 minutes coûte 1,25 fois le prix d'entrée standard, une écriture en cache d'une heure coûte 2 fois. Dans nos propres journaux, environ 90 % des écritures en cache de Claude Code avec un abonnement étaient du type une heure, tandis que les sous-agents écrivaient des caches de 5 minutes. Depuis la 2.1.0, survoler une ligne C.Write dans le panneau latéral affiche la répartition pour la période. C'est un investissement : vous payez davantage au départ pour que les requêtes suivantes n'aient pas à retraiter le même contenu. Les écritures en cache comptent aussi pour la limite de 5 heures, voir Ce qui compte pour une limite.
Le plugin affiche C.Write en aqua dans tout le panneau latéral.
C.Read — lecture en cache#
Une fois un bloc en cache, Claude peut le lire depuis le cache lors des requêtes suivantes au lieu de le traiter de zéro. C'est une lecture en cache.
Les lectures en cache ne coûtent qu'une fraction du prix d'entrée standard : 0,1 fois sur la plupart des modèles, 0,05 fois sur Opus 5.5 et Sonnet 5.5, 0,025 fois sur Fable 5.1. Si le même contexte sert de nombreuses fois, les lectures en cache rendent les grandes sessions nettement plus abordables qu'elles ne le seraient autrement.
Le plugin affiche C.Read en violet pour signaler un volume élevé à faible coût par jeton.
C.Write vs C.Read — le facteur de réutilisation, et ce qu'il dit de votre façon de travailler#
Le rapport entre ces deux nombres est plus qu'un détail de coût : c'est une lecture directe et honnête de la question de savoir si une période de travail a été concentrée ou dispersée.
Facteur de réutilisation = C.Read ÷ C.Write
| Facteur | Ce qu'il signale |
|---|---|
| ≥ 8× | Concentration profonde : excellent rendement du cache, le même contexte porte de nombreuses requêtes. |
| 3–8× | Équilibré : travail concentré avec un peu de variété. |
| 1–3× | Exploratoire : nouveau contexte fréquent, typique de la recherche ou du cadrage. |
| < 1× | Réutilisation minimale : surtout des sessions courtes et indépendantes. |
Une forte réutilisation signifie que vous êtes resté sur le même contexte avec des questions de suivi au lieu de recommencer sans cesse ; une faible réutilisation signifie des changements de contexte presque constants. Aucun des deux n'est « faux », l'exploration a sa place, mais si votre objectif était un travail profond et soutenu et que le facteur dit autre chose, cela vaut la peine d'être remarqué. Le tableau de bord affiche ce rapport dans la section Efficacité du cache, avec un graphique linéaire où C.Write est en aqua et C.Read en violet, comme dans le panneau latéral.
Focus Score, un second signal indépendant. Le Focus Score du tableau de bord (0 à 100) combine trois choses que le plugin voit déjà : la réutilisation du cache (les paliers ci-dessus, 50 % du score), la continuité (peu de sessions longues par jour actif valent plus que beaucoup de courtes, 30 %) et la profondeur (davantage d'échanges par session valent plus que des questions isolées, 20 %). Le résultat donne un badge : Deep Work Mode (80 et plus), Focused (60 et plus), Balanced (40 et plus) ou Scattered (moins de 40).
Lire les deux signaux ensemble, en pratique. Un facteur de réutilisation et un Focus Score élevés un jour où vous étiez plongé dans un seul problème sont un bon signe, pas un chiffre de vanité : Claude a réutilisé ce qu'il comprenait déjà de votre contexte au lieu de le reconstruire, ce qui est moins cher et généralement plus rapide. Si ces chiffres sont bas un jour où vous pensiez être concentré, les causes probables sont : réécrire ou recoller un long contexte au lieu de poursuivre le même fil, ouvrir une nouvelle session pour des questions qui appartenaient à la première, ou alterner rapidement plusieurs tâches sans rapport. Tout cela se voit directement dans ces chiffres, des jours ou des semaines plus tard.
Pour débuter : l'habitude la plus efficace est de rester dans une session continue pour un problème continu et de poser des questions de suivi au lieu de réexpliquer le contexte dans un nouveau message. Cela fait généralement monter les deux chiffres, et c'est de toute façon une meilleure manière de travailler. Pour les utilisateurs expérimentés : un facteur durablement bas sur tout un projet peut signifier que l'invite système ou le contexte partagé est reconstruit à chaque fois au lieu d'être réutilisé. Cela mérite une correction au niveau du flux de travail (sessions plus longues, fichier de référence partagé, sous-agents qui héritent du contexte) plutôt que d'être accepté comme un coût normal.
Fenêtre de 5 heures en cours#
Claude Code applique une fenêtre de 5 heures, et elle est ancrée, et non glissante. La fenêtre s'ouvre avec votre premier message et dure exactement cinq heures ; une nouvelle ne commence qu'une fois cette durée entièrement écoulée, enchaînée en blocs fixes de cinq heures, quelle que soit la durée d'inactivité entre les deux. Ce ne sont pas « les cinq dernières heures comptées à rebours depuis maintenant », et elle est indépendante de la réinitialisation hebdomadaire, qui suit son propre calendrier et ne démarre pas une nouvelle fenêtre de 5 heures.
Le plugin reconstitue ces vraies fenêtres à partir de votre activité et additionne celle qui est ouverte, avec Input, Output, C.Write et C.Read sur des lignes séparées. Cela compte au moment précis où une fenêtre change : un calcul glissant ajouterait la fin de la fenêtre qui vient de se fermer au début de celle qui vient de s'ouvrir, et donnerait un chiffre qui n'appartient à aucune des deux, justement quand vous voulez voir que votre budget est neuf.
C'est la vue la plus immédiate de votre travail en cours. Si vous travaillez depuis un moment sans longue pause, cette fenêtre montre ce que vous avez consommé depuis son ouverture.
Pourquoi le compte à rebours affiche un tilde (~)
Le compte à rebours de réinitialisation en bas du panneau latéral indique « Claude 5h resets in: ~Xh Ym ». Le tilde est voulu : il signale une approximation, pas une valeur exacte.
Claude Code écrit les données de session dans des fichiers locaux après la fin complète de chaque réponse, pas au moment où vous envoyez votre premier message. Au début d'une session, la première requête est souvent longue : chargement du contexte, lecture de fichiers, réflexion. Cette première réponse peut prendre 10 à 25 minutes, et pendant ce temps rien n'est encore écrit dans le journal local. Le plus ancien horodatage que le plugin peut lire n'est donc pas le vrai début de votre session, mais le moment où votre première réponse est arrivée.
Le compte à rebours du plugin peut donc avoir 10 à 25 minutes de retard sur l'affichage de Claude. Pour l'heure exacte, consultez la section d'utilisation du forfait dans Claude Code ou sur claude.ai. La valeur du plugin est un repère fiable, mais l'affichage de Claude fait foi.
Avec le flux (voir Pourcentages officiels d'Anthropic), cet écart disparaît : chaque relevé contient le moment où la fenêtre en cours se réinitialise. Dès qu'il existe un relevé de la fenêtre en cours, le plugin utilise le début officiel, même si la fenêtre a été ouverte sur claude.ai, un autre appareil ou un autre outil.
Les trois vues temporelles et leurs relations#
Le panneau latéral montre trois résumés différents de votre activité : Fenêtre de 5 heures en cours, Cette session et Aujourd'hui. Ce sont trois découpages indépendants des mêmes données : ils ne s'emboîtent pas automatiquement comme le feraient des heures, des jours et des semaines.
| Vue | Ce qu'elle couvre | Se réinitialise quand |
|---|---|---|
| Fenêtre de 5 heures en cours | Fenêtre ancrée : tout depuis son ouverture | Elle expire : le message suivant en ouvre une nouvelle, par pas fixes de cinq heures quelles que soient les pauses |
| Cette session | Toutes les entrées avec l'identifiant de session actuel, quelle que soit la date | Vous démarrez une nouvelle session Claude Code (nouveau fichier JSONL) |
| Aujourd'hui | Jour calendaire : tout depuis minuit | Chaque jour à minuit |
La conséquence principale : une session peut s'étendre sur plusieurs jours. Si vous avez commencé une longue session hier et l'avez poursuivie aujourd'hui, « Cette session » affiche plus de jetons qu'« Aujourd'hui ». C'est voulu : la session cumule au-delà des limites de jour, tandis qu'« Aujourd'hui » ne compte qu'à partir de minuit.
De même, la fenêtre de 5 heures n'est pas une partie d'« Aujourd'hui » : une fenêtre ouverte tard hier soir déborde au-delà de minuit, et tout ce qu'elle contient compte toujours pour la même limite. Les deux peuvent aussi être identiques : si votre fenêtre s'est ouverte ce matin et que vous n'aviez pas travaillé avant aujourd'hui, les deux chiffres sont les mêmes jusqu'à la fermeture de la fenêtre.
Le plugin le rend visible : une petite ligne sous chaque titre de section précise la période couverte. « Cette session » indique quand la session a commencé, pour voir tout de suite si les chiffres couvrent plusieurs jours.
Modèles#
Claude Code envoie les requêtes à différents modèles selon la tâche. Le panneau latéral montre une barre de pourcentages empilée de la répartition des modèles sur les 7 derniers jours, chaque famille de modèles dans sa propre couleur :
| Modèle | Couleur dans le panneau | Rôle typique |
|---|---|---|
| Haiku | Sarcelle | Tâches rapides et légères, coût le plus bas |
| Sonnet | Bleu | Équilibre entre capacité et coût |
| Opus | Rose | Raisonnement complexe, travail exigeant |
| Fable | Violet | Capacité la plus élevée, coût le plus élevé |
| Autre | Gris | Noms de modèles inconnus ou futurs |
Les couleurs des modèles évitent volontairement le vert, l'ambre et le rouge. Dans ce plugin, ces trois couleurs signifient bien, attention et critique : une couleur identifie quelque chose ou le juge, jamais les deux. Jusqu'en octobre 2026, ce tableau indiquait encore les couleurs d'avant la 2.0 (cyan, bleu, violet, ambre).
Connaître votre répartition de modèles explique une grande partie des variations de coût d'un jour à l'autre. Une journée riche en Opus coûte tout autre chose qu'une journée passée surtout dans Haiku. Pour la gamme actuelle et les prix exacts, la page de tarifs d'Anthropic fait foi, voir aussi Tarifs de l'API plus bas.
Sessions#
Claude Code écrit un fichier journal JSONL par session. Le plugin lit tous les fichiers sous ~/.claude/projects/ et regroupe l'usage par session. Le tableau Top Sessions du tableau de bord montre quelles exécutions ont consommé le plus de jetons, utile pour repérer des sessions étonnamment coûteuses.
Ce qui compte pour une limite#
Anthropic applique deux limites et rien d'autre : la fenêtre de 5 heures ci-dessus et un plafond hebdomadaire qui se réinitialise à un moment fixe. Il n'y a pas de limite quotidienne : l'anneau Aujourd'hui n'est donc pas un quota (voir L'anneau Aujourd'hui).
Les jetons d'entrée et de sortie comptent, et le cache n'est pas gratuit non plus. Des mesures comparées aux pourcentages officiels que Claude Code rapporte (octobre 2026) indiquent que les écritures en cache comptent nettement pour la fenêtre de 5 heures et que les lectures en cache comptent un peu. Une analyse antérieure des dépassements observés pointait dans l'autre sens ; les nouvelles mesures sont plus directes. Les chiffres du plugin comptent toujours uniquement l'entrée et la sortie. Quand une longue session doit reconstruire son cache, par exemple dans une nouvelle fenêtre de 5 heures après une pause ou quand un grand contexte est chargé pour la première fois, la valeur officielle peut donc devancer le plugin. En pratique : les longues sessions avec un grand contexte consomment la fenêtre de 5 heures plus vite par réponse que les sessions courtes et neuves.
Anthropic ne publie aucune des deux limites en jetons. Depuis la 2.5, Token Usage n'affiche donc un pourcentage pour une limite que s'il vient d'Anthropic, toujours avec l'heure du relevé (voir Limites : des pourcentages qui viennent uniquement d'Anthropic). Il faut pour cela le flux, un petit fichier avec les pourcentages officiels (voir Pourcentages officiels d'Anthropic). Entre deux relevés, la semaine est prolongée avec vos jetons comptés et marquée « extrapolé ». La fenêtre de 5 heures ne l'est pas, car la vitesse à laquelle elle se remplit dépend surtout du contexte qu'une session transporte, ce que les journaux locaux ne peuvent pas dire de façon fiable. Sans le flux, vous voyez les jetons comptés, le temps jusqu'à la réinitialisation et la fourchette à laquelle votre fenêtre de 5 heures s'est remplie jusqu'ici.
L'anneau Aujourd'hui#
Il n'y a pas de limite quotidienne. Anthropic ne limite que la fenêtre de 5 heures et la semaine. L'anneau Aujourd'hui compare votre usage du jour à votre propre moyenne par jour actif, calculée sur tous les jours que Claude Code conserve sur le disque (votre réglage de conservation des données, cleanupPeriodDays).
Depuis la 2.5, il l'affiche comme un multiple et non comme un pourcentage : « 2,0x votre journée habituelle » signifie que vous travaillez deux fois plus que d'habitude aujourd'hui, rien de plus. Une journée chargée est un changement dans votre façon de travailler, pas un avertissement, c'est pourquoi l'anneau reste gris neutre (depuis la 2.1.0). Seuls les anneaux de la fenêtre de 5 heures et de la semaine montrent à quel point vous êtes proche d'une limite, et seulement avec une valeur officielle. Jusqu'à la 2.1, la même comparaison s'affichait « 200 % » ; le multiple garantit que chaque pourcentage à l'écran vient d'Anthropic ou est une extrapolation hebdomadaire marquée comme telle à partir d'une valeur d'Anthropic.
Pourcentages officiels d'Anthropic (le flux)#
Facultatif, depuis la 2.1.0. Claude Code connaît les pourcentages officiels de votre forfait, les chiffres qu'affiche /usage. Deux petits scripts du dépôt du plugin les écrivent dans ~/.claude/ratelimit-log.jsonl. Depuis la 2.5, ce fichier est la seule source de pourcentages de limite dans Token Usage : sans lui, les anneaux de la fenêtre de 5 heures et de la semaine restent gris et montrent les jetons comptés et le temps jusqu'à la réinitialisation ; tout le reste fonctionne de la même façon. Le guide complet (en anglais) se trouve dans le dossier extras sur GitHub.
Ce que vous y gagnez
| Sans flux | Avec flux | |
|---|---|---|
| Début de la fenêtre de 5 heures | Reconstitué à partir de votre premier message enregistré | Le début officiel, même si la fenêtre a été ouverte sur claude.ai, un autre appareil ou un autre outil |
| Anneau 5 heures | Gris : jetons de la fenêtre et temps jusqu'à la réinitialisation | Le pourcentage officiel d'un relevé de la fenêtre en cours, avec son heure et les jetons comptés depuis |
| Anneau hebdomadaire | Gris : jetons de la semaine et temps jusqu'à la réinitialisation | Le pourcentage officiel, prolongé entre deux relevés avec vos jetons comptés et marqué « extrapolé » |
| Réinitialisation hebdomadaire | Tirée de votre message de limite hebdomadaire, une fois que vous avez atteint le plafond | Tirée du flux, à la minute près, y compris au changement d'heure |
Un exemple réel tiré de nos propres données, le 27 octobre 2026 : à 13:10, le plugin extrapolait la semaine d'un 24 % officiel à environ 28 % ; le relevé officiel suivant, six minutes plus tard, indiquait 29 %.
Prérequis
- Un abonnement Pro ou Max avec lequel Claude Code est connecté. Avec une clé API, il n'y a pas de pourcentages de forfait.
- Node.js, car les deux scripts sont de petits programmes Node. Vérifiez avec
node --version. S'il manque, installez la version LTS depuis le site de Node.js. Claude Code installé avec l'installateur natif n'apporte pas Node.js. - Une version récente de Claude Code et, pour l'interrogation planifiée, la ligne de commande
claude.
De quel script ai-je besoin ?
| Où vous travaillez | Script |
|---|---|
| Dans un terminal | ratelimit-statusline.js comme ligne d'état. Gratuit, les relevés arrivent pendant que vous travaillez |
| Dans Obsidian, un éditeur ou un autre client sans ligne d'état | ratelimit-poll.js, exécuté selon un planning |
| Les deux | Les deux. Ils écrivent dans le même fichier |
Une ligne d'état ne fonctionne que tant que le terminal interactif de Claude Code est ouvert. Les clients qui intègrent Claude Code ne l'exécutent pas, la ligne d'état seule y produit donc peu ou pas de relevés.
Option A : script de ligne d'état
Copiez le script dans ~/.claude/ratelimit-statusline.js et ajoutez cette entrée à ~/.claude/settings.json, à côté des clés déjà présentes :
"statusLine": { "type": "command", "command": "node ~/.claude/ratelimit-statusline.js" }
Sous Windows, utilisez le chemin complet avec des barres obliques, par exemple node C:/Users/<vous>/.claude/ratelimit-statusline.js. Redémarrez Claude Code ; la ligne d'état affiche alors 5h 12% | week 34%. Vous avez déjà votre propre ligne d'état ? Gardez-la et ajoutez-y la partie journalisation de notre script.
Option B : interrogation planifiée
Avant de la mettre en place : chaque exécution est une vraie requête, minuscule (l'invite ok envoyée à Haiku, sans session enregistrée), et compte dans votre usage. Si aucune fenêtre de 5 heures n'est ouverte à ce moment-là, la requête en ouvre une, et votre fenêtre suivante commence à l'heure de l'interrogation. Planifiez-la à des heures où vous travaillez de toute façon ; trois fois par jour suffisent largement pour la semaine, que le plugin prolonge entre deux relevés. L'anneau de 5 heures n'affiche qu'un relevé de la fenêtre en cours : avec trois interrogations par jour, il est donc gris la plupart du temps. C'est l'état honnête, pas une erreur. Depuis la 2.5, le script réessaie une fois après un délai dépassé : une exécution juste après la sortie de veille n'a souvent pas encore de réseau.
Ou seulement pendant que vous travaillez (depuis la 2.5, recommandé si vous voulez voir l'anneau de 5 heures). Lancé avec --only-when-active, le script vérifie d'abord si Claude Code a écrit dans ses journaux de session au cours des 20 dernières minutes, et s'arrête sinon sans requête. Pendant que vous travaillez, une fenêtre de 5 heures est de toute façon ouverte : l'interrogation n'en ouvre pratiquement jamais une elle-même et peut tourner toutes les heures. L'anneau de 5 heures affiche alors une valeur officielle la plupart du temps où vous travaillez. Chaque exécution pendant une activité est une requête minuscule, les exécutions sans activité ne coûtent rien. Jusqu'à la 2.5.0, nous recommandions toutes les 30 minutes : deux fois plus de requêtes pour un relevé au mieux une demi-heure plus récent. Les commandes de cette variante pour Windows, macOS et Linux se trouvent dans le guide du dossier extras cité plus haut ; avec cron, c'est simplement 0 7-23 * * * avec l'option à la fin.
Copiez le script dans ~/.claude/ratelimit-poll.js et lancez-le une fois à la main avec node ~/.claude/ratelimit-poll.js. Il affiche 5h 12% | week 34%. Planifiez-le ensuite.
Windows (PowerShell, s'exécute à 12:00, 17:00 et 22:00, rattrape les exécutions manquées si l'ordinateur était éteint, sans fenêtre de console) :
$node = (Get-Command node).Source
$script = "$env:USERPROFILE\.claude\ratelimit-poll.js"
$action = New-ScheduledTaskAction -Execute 'conhost.exe' -Argument "--headless `"$node`" `"$script`""
$triggers = '12:00','17:00','22:00' | ForEach-Object { New-ScheduledTaskTrigger -Daily -At $_ }
$settings = New-ScheduledTaskSettingsSet -StartWhenAvailable
Register-ScheduledTask -TaskName 'TokenUsageLimitPoll' -Action $action -Trigger $triggers -Settings $settings
Pourquoi conhost.exe --headless (depuis la 2.5.1) : node.exe est un programme console, le Planificateur de tâches ouvre donc une fenêtre de console à chaque exécution, même quand rien n'est interrogé. Jusqu'à la 2.5.0, nos commandes lançaient node.exe directement et faisaient exactement cela. Lancée ainsi, l'exécution reste invisible. Nous l'avons testé sous Windows 11. Microsoft ne documente pas cette option, et certains logiciels de sécurité signalent les lancements de console masqués comme suspects. Si le vôtre le fait, ou si la tâche ne s'exécute pas, utilisez plutôt -Execute $node -Argument "`"$script`"" et acceptez la courte fenêtre.
Déjà planifiée avec un guide précédent ? Ceci garde votre tâche, vos horaires et vos options et ajoute seulement le lancement invisible :
$old = (Get-ScheduledTask -TaskName 'TokenUsageLimitPoll').Actions[0]
if ($old.Execute -notmatch 'conhost') {
$new = New-ScheduledTaskAction -Execute 'conhost.exe' -Argument "--headless `"$($old.Execute)`" $($old.Arguments)"
Set-ScheduledTask -TaskName 'TokenUsageLimitPoll' -Action $new
}
macOS et Linux (crontab -e, avec des chemins complets obtenus par which node et which claude, car cron s'exécute avec un PATH minimal) :
0 12,17,22 * * * CLAUDE_BIN=/chemin/complet/vers/claude /chemin/complet/vers/node /Users/<vous>/.claude/ratelimit-poll.js
Sous Linux, le dossier personnel est généralement /home/<vous>. Les erreurs des exécutions planifiées sont écrites dans ~/.claude/ratelimit-poll-errors.log. Si le script ne trouve pas la ligne de commande de Claude Code, définissez CLAUDE_BIN avec son chemin complet.
Vérifier que cela fonctionne
- Le fichier
~/.claude/ratelimit-log.jsonlexiste et reçoit de nouvelles lignes. - Actualisez le panneau latéral. L'anneau hebdomadaire affiche un pourcentage avec « relevé hh:mm » (ou « extrapolé » avec la valeur officielle en dessous), et l'indication « Les pourcentages officiels nécessitent le flux. » sous les anneaux a disparu. L'anneau de 5 heures affiche un pourcentage juste après un relevé dans la fenêtre en cours. Dans le tableau de bord, les panneaux indiquent « official percentage from Anthropic » ou « projected from the last official value ».
- Juste après un relevé,
/usagedans Claude Code et les anneaux du plugin affichent les mêmes pourcentages.
Comment le plugin utilise les relevés
- Début de la fenêtre : chaque relevé contient le moment où la fenêtre de 5 heures en cours se réinitialise. La fenêtre correspond aux cinq heures qui précèdent ; le plugin connaît ainsi le vrai début, même si la fenêtre a été ouverte là où il ne peut pas voir.
- Anneau 5 heures : affiche le dernier relevé seulement tant que sa fenêtre est ouverte, avec l'heure du relevé et les jetons comptés depuis. Dans une fenêtre, la valeur officielle ne peut que monter : c'est donc un minimum. Rien n'est prolongé. Un relevé d'une fenêtre précédente n'est pas affiché.
- Anneau hebdomadaire : affiche le dernier relevé de la semaine en cours. Entre deux relevés, il est prolongé avec vos jetons comptés par rapport à la limite hebdomadaire que les relevés impliquent (jetons de la semaine jusqu'à un relevé divisés par son pourcentage, à partir des relevés de 10 % et plus ; en dessous, l'arrondi à l'entier est trop grossier) et marqué « extrapolé ». Après une réinitialisation hebdomadaire sans nouveau relevé, il repart de 0 % avec la limite de la semaine précédente, marqué « extrapolé depuis la réinitialisation ».
- Crédits d'utilisation : avec des crédits d'utilisation (usage credits), vous pouvez continuer à travailler après la limite hebdomadaire. Les relevés à 100 % ou plus, et tout ce qui suit dans la même semaine, ne servent pas à la limite hebdomadaire ; une semaine à 100 % affiche la valeur officielle sans la prolonger.
- Réinitialisation hebdomadaire : reprise du relevé comme un moment exact, elle reste donc juste au changement d'heure.
- Autres fenêtres : si Anthropic signale plus que la fenêtre de 5 heures et la semaine (par exemple une limite hebdomadaire propre à un modèle), les deux scripts l'enregistrent et le plugin l'affiche sous les anneaux, tel que signalé.
- Pas de flux pendant un moment : sans relevé adapté, les anneaux redeviennent gris et montrent les jetons comptés et le temps jusqu'à la réinitialisation. Rien n'est estimé entre-temps.
Limites connues
- L'extrapolation hebdomadaire ne compte que l'entrée et la sortie. Officiellement, les écritures en cache comptent aussi (les lectures un peu). Sur une semaine, cela se compense bien (1,2 point d'écart en moyenne dans notre mesure), mais une grosse reconstruction du cache n'apparaît entièrement qu'avec le relevé suivant.
- Les relevés n'existent que quand un script tourne : tant qu'une ligne d'état est affichée ou aux heures planifiées.
- Pourcentages entiers : les valeurs officielles sont arrondies. Un pour cent d'une fenêtre de 5 heures peut représenter quelques milliers de jetons.
Dépannage
| Ce que vous voyez | Que faire |
|---|---|
| La ligne d'état est vide | Node.js est introuvable. Vérifiez node --version ; sous Windows, mettez le chemin complet de node.exe dans la commande |
5h ? | week ? | Aucun pourcentage reçu. Connectez-vous avec votre abonnement au lieu d'une clé API, mettez Claude Code à jour |
| Interrogation : « Claude Code CLI not found » | Définissez CLAUDE_BIN avec le chemin complet de claude |
| Interrogation : « No rate_limit_event in the output » | Lancez claude une fois à la main et connectez-vous avec votre abonnement |
| Anneau 5 heures gris avec « pas encore de relevé dans cette fenêtre » | Normal entre deux interrogations à heures fixes. Lancez l'interrogation une fois à la main puis actualisez, ou planifiez-la toutes les heures avec --only-when-active |
| Windows : une fenêtre de console s'ouvre à chaque interrogation | La tâche lance node.exe directement (notre guide jusqu'à la 2.5.0). Passez au lancement invisible, voir « Déjà planifiée avec un guide précédent ? » |
Windows : la tâche avec --headless ne s'exécute pas, ou un logiciel de sécurité la signale | Utilisez le lancement simple avec node.exe et acceptez la courte fenêtre |
| Anneau hebdomadaire gris avec « pas encore de relevé cette semaine » | Aucun relevé depuis la réinitialisation hebdomadaire, et aucun la semaine précédente non plus. Attendez le relevé suivant ou lancez l'interrogation une fois à la main |
Confidentialité et suppression
Tout reste sur votre machine. Chaque ligne contient un horodatage, les pourcentages avec leurs heures de réinitialisation et, depuis la ligne d'état, l'identifiant de session et de modèle. Le plugin se contente de lire le fichier et n'exécute jamais les scripts lui-même. Pour le retirer, supprimez l'entrée statusLine, la tâche planifiée (Unregister-ScheduledTask -TaskName 'TokenUsageLimitPoll') ou la ligne cron, et si vous le souhaitez le fichier journal. Les anneaux de la fenêtre de 5 heures et de la semaine restent alors gris et montrent les jetons comptés et le temps jusqu'à la réinitialisation.
Mis à jour le 10 octobre 2026 : la première version de cette section ne mentionnait pas Node.js et ne proposait que la ligne d'état, qui ne fonctionne pas dans des clients comme Obsidian. Les deux sont ajoutés. Mis à jour pour la 2.5 : jusqu'à la 2.1, le plugin utilisait les relevés pour corriger ses propres estimations de limite et revenait à ces estimations sans eux ; depuis la 2.5, les relevés sont la seule source de pourcentages.
Réinitialisation hebdomadaire#
La limite hebdomadaire se réinitialise à un moment fixe, différent d'un compte à l'autre. Tout ce qui concerne la semaine en dépend : l'anneau hebdomadaire, la prévision et la carte d'activité.
En général, vous n'avez rien à régler. Avec le flux, le plugin reprend le moment exact de la réinitialisation depuis le relevé officiel. Sans lui, il le lit dans le message que Claude écrit quand vous atteignez une limite hebdomadaire. Dans les deux cas, les paramètres affichent une coche verte et la provenance de la valeur. Tant qu'aucune réinitialisation n'a été détectée, le plugin suppose dimanche 18:00 et le dit.
Changement d'heure. La réinitialisation d'Anthropic est fixée en UTC, son heure locale se décale donc d'une heure au changement d'heure. Jusqu'à la 2.1, le plugin l'enregistrait comme un jour et une heure locaux, si bien qu'après le passage à l'heure d'hiver chaque limite de semaine était décalée d'une heure. Depuis la 2.5, une réinitialisation détectée est conservée comme un moment exact et suit le changement automatiquement.
Vous pouvez la régler à la main dans Paramètres → Réinitialisation hebdomadaire. Un réglage manuel l'emporte et reste en heure locale : la détection automatique ne l'écrase pas, elle ne fait que le confirmer.
Le panneau latéral, la carte d'activité et le calendrier#
Une barre d'icônes à gauche bascule entre quatre pages. Depuis la 2.0, c'est la seule disposition ; l'ancienne vue « Classic » et le réglage qui permettait de basculer ont été supprimés.
| Page | Ce qu'elle contient |
|---|---|
| Aperçu | Trois anneaux (Fenêtre 5h, Aujourd'hui, Cette semaine) avec la fourchette de vos dépassements en dessous, la carte d'activité de la semaine de facturation en cours, votre dernière action et le détail des jetons. Les anneaux de la fenêtre de 5 heures et de la semaine n'affichent un pourcentage que s'il vient d'Anthropic, avec l'heure du relevé ; sinon ils restent gris et montrent les jetons comptés et le temps jusqu'à la réinitialisation. L'anneau Aujourd'hui affiche un multiple de votre journée habituelle |
| Calendrier | Les deux derniers mois sous forme de grilles mensuelles |
| Analyse | Les résumés sur 7 jours et N jours en tuiles d'indicateurs avec courbes de tendance, plus la répartition des modèles |
| Paramètres | Les mêmes réglages que dans l'onglet de paramètres d'Obsidian, sans quitter le panneau latéral |
Tout ce qui figure sur l'Aperçu porte volontairement sur aujourd'hui ou la semaine en cours ; ce qui couvre une période plus longue se trouve dans Analyse ou dans le tableau de bord. Dans l'en-tête, Dashboard et Report génèrent des fichiers, CSV exporte dans votre vault et la flèche force une actualisation immédiate.
Chacune des quatre lignes de jetons de l'Aperçu porte un petit repère : un point vert quand la valeur est proche de votre propre moyenne récente, une flèche ambre quand elle est nettement au-dessus. La période de comparaison suit votre réglage de conservation des données Claude, pas un nombre fixe de jours.
Carte d'activité
La grille de l'Aperçu couvre votre semaine de facturation en cours. Une ligne par jour calendaire, une cellule par tranche de deux heures, douze cellules par jour.
Elle compte huit lignes, et non sept : une semaine qui va par exemple du dimanche 17:00 au dimanche suivant 17:00 touche huit dates, la première et la dernière ligne sont donc volontairement partielles. Les cellules hors de la fenêtre sont dessinées comme de simples contours vides ; c'est ce qui rend visible la limite de votre cycle au lieu de la cacher dans des tranches artificielles de 24 heures.
La couleur compare chaque cellule à votre propre tranche habituelle de 2 heures : la moyenne de toutes les tranches de 2 heures avec activité sur les jours conservés (la valeur est indiquée sous la grille). Faible en dessous de la moitié, moyen jusqu'à cette valeur, élevé jusqu'au double, rouge au-delà du double. La nuance à l'intérieur d'un palier montre où s'y situe une cellule. Jusqu'à la 2.1, les cellules étaient mesurées par rapport à une limite de 5 heures estimée, qui n'existe plus.
Trois sortes de rien restent distinctes : hors de la fenêtre (contour seul), pas encore atteint (pâle) et réellement aucune activité (rempli). Seule la dernière dit quelque chose de votre semaine. À côté de la grille, Jours actifs compte les jours de cette semaine de facturation avec de l'activité.
Calendrier d'activité
La page Calendrier affiche les deux derniers mois côte à côte. Deux plutôt qu'un, car en début de mois une seule grille ne montrerait qu'une poignée de jours utiles et cacherait justement la période que vous cherchez. Les flèches reculent la paire aussi loin que l'archive le permet ; le calendrier ne va jamais dans le futur.
Chaque jour passé porte un point coloré, mesuré par rapport à votre propre moyenne journalière récente : vert en dessous, ambre autour, rouge pour un pic (2x ou plus). Les jours sans activité n'ont pas de point. Cliquez sur un jour pour ajouter une note privée ; elle est stockée dans les paramètres du plugin, jamais dans vos données de session.
Exporter vos données (CSV)#
Trois fichiers CSV : la vue des projets, la matrice jour par vault et les indicateurs clés. Deux façons de les obtenir, et ils n'atterrissent pas au même endroit.
Bouton CSV dans l'en-tête du panneau latéral : le plugin écrit les fichiers dans votre vault, dans le dossier défini sous Paramètres → dossier d'export CSV. Le menu nomme ce dossier avant que vous cliquiez. Les mêmes exports se trouvent dans la palette de commandes sous « Export ».
Menu d'export CSV du tableau de bord : le tableau de bord est une page de navigateur, il confie donc le fichier à votre navigateur, qui décide où il va, en général votre dossier Téléchargements. Une page web ne peut pas choisir un dossier de destination ; c'est une règle des navigateurs, pas une fonction manquante.
Les deux voies produisent des nombres bruts et des dates ISO, prêts pour le calcul dans Excel, Sheets ou un script. Tout est généré en local : pas d'envoi, pas de réseau, comme dans le reste du plugin.
Les indicateurs clés suivent la même règle que les anneaux (depuis la 2.5) : les valeurs officielles de la fenêtre de 5 heures et de la semaine avec l'heure du relevé, l'extrapolation hebdomadaire marquée comme telle, la limite hebdomadaire qu'implique le flux et la fourchette de vos dépassements (la plus basse et la plus haute). Les anciennes lignes avec des limites estimées ont disparu. Les cellules de texte qui commencent par =, +, - ou @, comme un nom de dossier inhabituel, reçoivent une apostrophe en tête pour qu'Excel ou LibreOffice ne puissent pas les exécuter comme formule ; les nombres restent tels quels.
Archive et données à long terme#
Pourquoi cela existe. Claude Code gère lui-même ses fichiers de session locaux et les supprime selon un calendrier : 30 jours par défaut, réglé par cleanupPeriodDays dans son propre ~/.claude/settings.json. Sans copie ailleurs, tout ce qui est plus ancien disparaît tout simplement.
Ce qui est écrit, et où. Chaque fois qu'Obsidian est ouvert (à chaque actualisation, par l'interrogation régulière ou l'observateur de fichiers), le plugin vérifie quels jours récents ont déjà un fichier d'archive et en écrit un pour chaque jour manquant, y compris aujourd'hui, mis à jour au fil de la journée. Les fichiers arrivent dans un dossier ordinaire de votre vault, un par jour : Token Usage Archive/AAAA-MM-JJ.md (nom du dossier réglable dans les paramètres). Chaque fichier ne contient que des totaux : nombres de jetons par type, nombre de sessions, volume de jetons par modèle et ventilation par vault et par projet pour ce jour, jamais un prompt, une réponse ou quoi que ce soit qui ressemble à un contenu de conversation.
Une fois écrit, le fichier d'un jour passé est considéré comme définitif et n'est plus touché lors des actualisations suivantes. La seule exception voulue : quand une version ajoute une source de données entièrement nouvelle (les sessions du mode agent de l'application de bureau sont arrivées ainsi dans la v1.8.0), une reconstruction unique réécrit une fois les jours récents concernés, afin que des totaux incomplets avant l'existence de cette source ne restent pas faux pour toujours.
La limite honnête. L'archive ne peut sauver que ce qui existe encore au moment où Obsidian est réellement ouvert. Si Obsidian reste fermé plus longtemps que la période de conservation de Claude Code, les jours intermédiaires sont supprimés avant que le plugin ait pu les voir ; il n'y a aucun moyen de l'éviter sans fonctionnement continu. Si vous ouvrez Obsidian moins d'une fois par jour, augmentez Paramètres → Conservation des données Claude (écrit directement dans le cleanupPeriodDays de Claude Code, avec une sauvegarde .bak automatique avant) pour vous donner une marge plus large. Pour un vrai pilotage à long terme, comme les tendances de coûts ou la comparaison de contrats sur plusieurs mois, 90 à 180 jours sont plus réalistes que les 30 jours par défaut.
L'archivage peut être entièrement désactivé (Paramètres → Activer l'archive quotidienne) si vous préférez que le plugin ne crée jamais de fichiers dans votre vault ; tout continue de fonctionner, mais la portée historique se limite alors à ce que Claude Code conserve encore sur le disque.
Tableau de bord et suivi par vault et par projet#
Le panneau latéral est fait pour un coup d'œil ; le tableau de bord HTML (palette de commandes → « Open Token Usage dashboard ») est fait pour se poser avec les chiffres. Il régénère un fichier HTML statique et l'ouvre dans votre navigateur : un instantané, pas une connexion en direct, honnêtement horodaté comme tel dans le coin.
Trois onglets. Dashboard : les panneaux de budget pour la fenêtre de 5 heures, aujourd'hui et la semaine, puis cinq cartes d'indicateurs (Weekly Forecast, Limit Health, Cache Efficiency, Daily Velocity, Focus Score), une barre de semaine, le graphique quotidien, la répartition des modèles, l'histogramme, Top Sessions et les limites de débit que vous avez atteintes, avec leur fourchette. Reports : les mêmes chiffres présentés comme dans le rapport Markdown. Projects : la ventilation par vault et par projet, ci-dessous.
Même règle que le panneau latéral (depuis la 2.5) : les panneaux de budget, la zone globale, la carte Limit Health et le verdict de la barre de semaine n'utilisent que des valeurs officielles, avec l'heure du relevé, ou l'extrapolation hebdomadaire marquée qui en découle. Sans le flux, les panneaux montrent les jetons comptés et le temps jusqu'à la réinitialisation, et Limit Health renvoie vers la configuration au lieu de deviner. Le Weekly Forecast reste : il prolonge votre propre usage compté jusqu'à la fin de la semaine de facturation, ce n'est pas une limite.
Le menu de période (30/60/180/360 jours) recalcule instantanément, dans le navigateur, les cartes de synthèse, le graphique quotidien et le graphique du cache ; une fenêtre complète de 360 jours est toujours intégrée. La répartition des modèles, l'histogramme, Top Sessions et la détection des limites de débit restent sur la fenêtre de données en direct, car l'archive qui alimente les périodes plus longues ne contient que des totaux journaliers, pas ce niveau de détail par session. Cela vaut aussi pour la fourchette de vos dépassements : elle se mesure à partir des jetons comptés jusqu'à chaque dépassement, que seule la fenêtre en direct contient encore.
Les noms de dossiers et de modèles sont neutralisés (depuis la 2.5). Le nom de projet affiché dans le tableau de bord est le dernier dossier du répertoire de travail dans lequel une session a démarré. Jusqu'à la 2.1, le tableau de bord insérait ces noms dans la page sans les échapper : un nom de dossier piégé, par exemple celui d'un dépôt cloné, aurait pu exécuter un script dans la page du tableau de bord, dans votre navigateur. Nous l'avons trouvé lors de notre propre contrôle de sécurité en octobre 2026 et n'avons aucun indice d'une utilisation. Le panneau latéral dans Obsidian n'était pas concerné.
Onglet Projects, pour plus d'un vault ou d'un client. Chaque ligne est un dossier dans lequel une session Claude Code a démarré : votre vault Obsidian, le regroupement du mode agent de l'application de bureau (affiché comme Claude Desktop (Agent Mode)) ou tout autre répertoire où vous avez lancé Claude Code directement. Les dossiers sous 1 % du total sont regroupés en une ligne « Other ». Cochez « Show sub-project detail » pour déplier, directement dans le tableau, tout vault dont le répertoire de travail a changé pendant une session ; la même ventilation figure aussi dans l'export autonome Vault_Token_Usage_Projects.md, pratique pour répartir les coûts entre clients lors de la facturation. Un clic sur un en-tête de colonne trie.
Commandes d'export (palette de commandes), chacune écrasant son fichier cible dans votre vault à chaque exécution : Create Token Usage report (Token Usage Report.md), Open Token Usage dashboard (Token Usage Dashboard.html), Create Vault Token Usage Projects report (Vault_Token_Usage_Projects.md). Les trois chemins sont réglables, voir Référence des paramètres.
Ce qui est mesuré (et ce qui ne l'est pas)#
Le plugin couvre toutes les façons dont vous utilisez Claude Code : terminal, Obsidian, un éditeur comme VS Code et le mode agent de l'application de bureau, tout alimente les mêmes chiffres (voir Sources de données et transparence pour le détail). Ce qu'il ne peut pas montrer, c'est le chat ordinaire : les conversations dans la fenêtre de chat normale de l'application de bureau Claude, ou sur claude.ai dans un navigateur. Elles n'écrivent jamais de nombres de jetons sur le disque dans le format que lit ce plugin ; le seul signal disponible y est un pourcentage arrondi de la limite de votre forfait. Si une journée vous semble plus chargée que ce qu'affiche le tableau de bord, c'est très souvent la raison.
Référence des paramètres#
Chaque réglage du plugin, dans l'ordre où il apparaît sous Paramètres → Token Usage. Les valeurs par défaut sont choisies pour qu'une nouvelle installation fonctionne bien sans rien toucher.
| Réglage | Par défaut | Ce qu'il fait |
|---|---|---|
| Langue | Anglais | Langue de l'interface du plugin (anglais, allemand, français, italien, espagnol). Prend effet immédiatement. |
| Réinitialisation hebdomadaire | détectée automatiquement | Quand votre limite hebdomadaire se réinitialise. Reprise du flux ou de vos propres messages de limite hebdomadaire comme un moment exact, elle suit donc le changement d'heure ; un réglage manuel l'emporte toujours et reste en heure locale. Voir Réinitialisation hebdomadaire. |
| Période du rapport | 30 jours | Jusqu'où le tableau de bord et le rapport remontent. Au-delà de votre conservation des données Claude, les jours plus anciens sont complétés automatiquement à partir de l'archive. |
| Activer l'archive quotidienne | Activé | Écrit un petit fichier de synthèse Markdown par jour dans votre vault. Désactivez-le si vous ne voulez pas que le plugin crée des fichiers dans votre vault. |
| Conservation des données Claude | 30 jours (valeur par défaut de Claude Code) | Combien de temps Claude Code garde lui-même les fichiers de session, lu depuis les réglages de Claude Code et, si vous le modifiez ici, réécrit dans ceux-ci. |
| Intervalle d'actualisation automatique | 30 secondes | Interrogation de secours ; l'observateur de fichiers détecte déjà de lui-même les nouvelles réponses de Claude, au plus tard après 30 secondes. |
| Chemin du rapport dans le vault | Token Usage Report.md | Chemin relatif au vault pour le rapport Markdown. |
| Chemin du rapport vault dans le vault | Vault_Token_Usage_Projects.md | Chemin relatif au vault pour l'export autonome par vault et par projet. |
| Chemin du tableau de bord dans le vault | Token Usage Dashboard.html | Chemin relatif au vault pour le tableau de bord HTML. |
| Dossier d'archive dans le vault | Token Usage Archive | Dossier relatif au vault qui contient les fichiers d'archive quotidiens. |
| Dossier d'export CSV dans le vault | Token Usage Exports | Dossier relatif au vault dans lequel le plugin écrit les exports CSV. Voir Exporter vos données. |
Chaque champ de chemin ou de dossier a à côté un bouton « Afficher dans le dossier » qui ouvre l'emplacement exact dans le gestionnaire de fichiers de votre système.
Tarifs de l'API#
Prix de l'API d'Anthropic par million de jetons, entrée et sortie standard, état octobre 2026 :
| Modèle | Entrée / 1M | Sortie / 1M |
|---|---|---|
| Haiku 5.5 * | 0,10 $ | 0,50 $ |
| Haiku 4.5 | 1,00 $ | 5,00 $ |
| Sonnet 5.5 | 2,00 $ | 10,00 $ |
| Sonnet 5 ** | 2,00 $ | 10,00 $ |
| Sonnet 4.6 | 3,00 $ | 15,00 $ |
| Opus 5.5 | 4,00 $ | 20,00 $ |
| Opus 5 | 5,00 $ | 25,00 $ |
| Fable 5.1 | 10,00 $ | 50,00 $ |
| Fable 5 | 10,00 $ | 50,00 $ |
* Haiku 5.5 pour les prompts jusqu'à 100 000 jetons ; au-delà, 0,50 $ en entrée / 2,50 $ en sortie.
** Sonnet 5 a été lancé à 2 $ / 10 $ comme prix de lancement jusqu'au 31 août 2026. Anthropic en a fait depuis le prix standard ; la hausse annoncée à 3 $ / 15 $ n'a pas eu lieu. La version précédente de cette page disait encore le contraire.
Tarifs du cache, en plus des prix d'entrée standard :
- C.Write : 1,25 fois le prix d'entrée standard du modèle pour un cache de 5 minutes, 2 fois pour un cache d'une heure (le cas habituel pour Claude Code avec un abonnement)
- C.Read : 0,1 fois le prix d'entrée standard du modèle ; 0,05 fois sur Opus 5.5 et Sonnet 5.5, 0,025 fois sur Fable 5.1
Ce sont des prix d'utilisation de l'API, pas des prix d'abonnement mensuel à l'application Claude ou à Claude Code Max. Le plugin Token Usage lit des données enregistrées en local : il ne fait aucun appel à l'API et n'a aucun accès à votre compte de facturation Anthropic.
Pourquoi les coûts s'accumulent#
Une requête isolée coûte rarement cher. Calcul rapide avec Sonnet 5 à son prix standard de 2 $ / 10 $ par million :
- 10 000 jetons d'entrée × 2 $ / 1M = 0,02 $
- 2 000 jetons de sortie × 10 $ / 1M = 0,02 $
- Total : environ 0,04 $
C'est presque rien. Le problème, c'est la répétition et la croissance du contexte. Chaque nouveau message d'une session renvoie généralement l'historique de la conversation et les fichiers ouverts comme entrée. Après dix échanges, le dixième message transporte les neuf tours précédents plus les documents joints : l'entrée totale grandit à chaque étape, même si vous ne tapez qu'une courte question.
La question elle-même est rarement ce qui coûte. Ce qui part avec elle, si.
Ce qui fait monter les coûts#
- Les longues sessions où une grande fenêtre de contexte est renvoyée à chaque requête
- Les gros fichiers ou bases de code entières joints, qui voyagent comme entrée avec chaque message
- Des requêtes rapides et fréquentes sur une courte période
- Un modèle haut de gamme pour des tâches qu'un modèle moins cher accomplit aussi bien
Conseils pratiques#
Mesurer d'abord. Le graphique quotidien et le tableau des sessions du plugin montrent où vont réellement les jetons. On ne peut pas optimiser ce qu'on n'a pas regardé.
Éviter le contexte inutile. Les gros fichiers joints « au cas où » s'ajoutent à chaque entrée. Ne joignez que ce dont Claude a besoin pour la tâche en cours.
Choisir le modèle selon la tâche. Toutes les requêtes n'ont pas besoin d'Opus. Les questions rapides, la mise en forme et les modifications de code simples fonctionnent souvent bien avec Haiku ou Sonnet, pour une fraction du coût. Comparez la qualité et le coût total par tâche accomplie, pas seulement le prix par jeton.
Comprendre le cache. Un pic de C.Write au début d'une session est normal : un grand contexte a été établi. Ce qui compte, c'est que C.Read suive. Si le même contexte est réutilisé sur de nombreuses requêtes, le coût initial d'écriture s'amortit vite et le coût effectif par requête baisse nettement.
Utiliser le tableau de bord. Le tableau de bord HTML (ouvert via le bouton graphique du panneau latéral) montre votre historique d'utilisation, 30, 60, 180 ou 360 jours via le sélecteur de période dans l'en-tête, ainsi que la répartition des modèles et la tendance de l'efficacité du cache. Regarder les données sur plusieurs jours révèle des tendances qu'une vue de session isolée ne montre pas.
FAQ et dépannage#
Est-ce que cela fonctionne sous macOS et Linux, ou seulement sous Windows ? Sur toutes les plateformes : le cœur du plugin a toujours été indépendant de la plateforme. Le seul détail propre à une plateforme est l'emplacement des sessions du mode agent de Claude Desktop, une particularité de Windows ; l'explication complète est dans Sources de données et transparence.
« Cette session » affiche plus de jetons qu'« Aujourd'hui », est-ce un bug ? Non. Une session Claude Code peut passer minuit, voir les trois vues temporelles plus haut.
Pourquoi mes anneaux de 5 heures et de la semaine sont-ils gris, sans pourcentage ? Depuis la 2.5, le plugin n'affiche un pourcentage de limite que s'il vient d'Anthropic. Il faut pour cela le flux facultatif. Sans lui, les anneaux montrent les jetons comptés et le temps jusqu'à la réinitialisation, et une courte ligne en dessous mène à la configuration. Avec une interrogation à heures fixes, quelques fois par jour, l'anneau de 5 heures reste quand même gris la plupart du temps, car un relevé de 5 heures ne vaut que dans la fenêtre où il a été pris. Une interrogation toutes les heures avec --only-when-active change cela. Voir Limites : des pourcentages qui viennent uniquement d'Anthropic.
Pourquoi la carte « Limit Health » du tableau de bord n'affiche-t-elle pas de valeur ? Pour la même raison : elle a besoin d'une valeur hebdomadaire officielle issue du flux. Tant qu'il n'y en a pas, la carte renvoie vers la configuration au lieu de deviner.
Où est passée la limite estimée ? Elle a été supprimée dans la 2.5 parce qu'elle se trompait trop souvent : pour la fenêtre de 5 heures, elle s'écartait en moyenne de 36 points des valeurs officielles. Ce qui reste, c'est la fourchette à laquelle votre fenêtre de 5 heures s'est remplie jusqu'ici.
Mon chat dans le navigateur (claude.ai) ou dans le chat normal de l'application de bureau n'apparaît nulle part. C'est attendu, pas un bug : voir Ce qui est mesuré et Sources de données et transparence plus haut.
L'examen des plugins d'Obsidian signale « Direct Filesystem Access ». Dois-je m'inquiéter ? Non, cet avertissement est attendu et inévitable pour ce que fait ce plugin ; ce qui est lu et ce qui ne l'est pas est détaillé dans Sources de données et transparence.
Les chiffres d'une journée ont changé après une mise à jour du plugin. Les anciennes données sont-elles corrompues ? Presque certainement pas : voir la reconstruction unique dans Archive et données à long terme.
Puis-je suivre plus d'un vault Obsidian, ou répartir l'usage par client ? Oui, voir Tableau de bord et suivi par vault et par projet.
Ai-je besoin d'une clé API ou d'un compte Anthropic pour utiliser ce plugin ? Non. Il lit des fichiers locaux que Claude Code écrit déjà sur votre propre machine.
J'ai fermé Obsidian pendant quelques semaines. Cet usage est-il perdu pour de bon ? S'il est sorti de votre période de conservation des données Claude pendant qu'Obsidian était fermé, oui : voir l'encadré sur la limite honnête dans Archive et données à long terme.
Compatibilité et mises à jour de Claude Code#
Token Usage lit les fichiers de session JSONL que Claude Code écrit en local. Anthropic met régulièrement Claude Code à jour, parfois d'une manière qui influence la façon dont les données de session sont enregistrées ou dont la télémétrie interne est comptée.
Nous examinons les notes de version d'Anthropic à chaque version majeure de Claude Code et adaptons le plugin si nécessaire. Les changements de compatibilité importants sont documentés dans le journal des modifications du plugin sur GitHub.
À propos de ce plugin#
Token Usage est un plugin communautaire Obsidian open source. Il lit les fichiers JSONL locaux écrits par Claude Code ; aucune donnée n'est envoyée nulle part. Quelque chose manque sur cette page ? Les tickets et les demandes de fonctionnalités sont les bienvenus à tout moment.
- GitHub : beolatn/TokenUsage
- Répertoire des plugins Obsidian : Token Usage
- Auteur : Björn-Olaf Lange · langeatn.de
Les prix cités sur cette page proviennent de la documentation officielle d'Anthropic. Dernière mise à jour octobre 2026. Les prix peuvent changer ; vérifiez toujours les tarifs actuels sur le site d'Anthropic.