Usage Meter: Die Claude Code Nutzungslimit-Anzeige über dem Prompt
5-Stunden- und 7-Tage-Nutzung deines Plans als kleine Balken über dem Prompt, mit Reset-Countdown und Sitzungskosten.
Berechtigungen
- Verändert die OberflächeZeichnet in die Oberfläche von Claude Code: Leisten, Bereiche, Statustext, Toasts (ui.render / $.ui.*).
- getestet mit
- v2.1.291
- zuletzt getestet
- erfordert
- Claude Code ≥ 2.1.287
- Oberflächen
- über dem Prompt, Toast
- Quelle
- Hamza Zafar (hamzafer) (MIT)
In Claude Code installieren:
/plugin install usage-meter --marketplace hamzafer/claude-code-modsWas macht diese Mod?
Usage Meter ist eine Community-Mod von Hamza Zafar (hamzafer) aus seiner Sammlung claude-code-mods. Diese Claude Code Nutzungslimit-Anzeige zeichnet eine Zeile über dem Prompt von Claude Code mit den Rate-Limit-Fenstern deines Plans und den Kosten der Sitzung, zum Beispiel ⏱ 5h █▆▁▁▁ 34% · resets 2h10 · 7d ███▁▁ 61% · $0.42 session.
Jedes Fenster bekommt einen Balken aus fünf Zellen in Blockzeichen, sodass Teilzellen feinere Stufen zeigen, als ganze Blöcke es könnten. Balken und Prozentwert sind unter 75 % grün, ab 75 % gelb und ab 90 % rot. Das erste Fenster (normalerweise das 5-Stunden-Fenster) zeigt immer, wann es zurückgesetzt wird. Die anderen, etwa das 7-Tage-Fenster oder ein Ausgabenlimit, zeigen ihre Reset-Zeit erst, wenn sie hoch stehen. Der Countdown läuft jede Minute weiter. Ein Fenster, dessen Reset-Zeit verstrichen ist, bleibt ausgeblendet, bis Claude Code einen frischen Wert meldet – ein veraltetes 100 % siehst du also nie.
Überschreitet ein Fenster 90 %, warnt ein Toast einmal pro Reset-Zeitraum, zum Beispiel 5h usage limit at 92%, resets in 1h05. In einem schmalen Terminal lässt die Zeile zuerst die Nebenfenster weg, dann die Kosten, damit das Hauptfenster immer passt. Ohne Abo (in einer Sitzung mit API-Schlüssel) gibt es keine Planfenster, und nur die Kosten werden angezeigt.
Wenn du bereits unser Kontext-Meter nutzt, überschneiden sich die 5-Stunden- und 7-Tage-Werte und die Kosten. Das Kontext-Meter schreibt sie als Text in die Statuszeile und ergänzt den Füllstand des Kontextfensters; Usage Meter zeichnet sie als Balken über dem Prompt mit laufendem Countdown und lässt den Kontext weg. Laut README des Autors ist Claude Code 2.1.287 oder neuer nötig.
Demo
Die Aufnahme startet Claude Code mit geladener Mod, sendet einen kurzen Prompt und zeigt nach dem Turn die Zeile über dem Prompt: die 5-Stunden- und 7-Tage-Planfenster als kleine Balken mit ihren Prozentwerten, die Zeit bis zum Reset des 5-Stunden-Fensters und die Sitzungskosten. Die Planbalken erscheinen, weil das Demo-Konto mit einem Claude-Abo angemeldet ist.
Installation
Nutze eine beliebige Methode aus dem Installationsblock; alle installieren direkt aus dem eigenen Marketplace des Autors. Es muss nichts konfiguriert werden.
$ install usage-meter
Erfordert Claude Code ≥ 2.1.287
Wird aus dem Marketplace des Autors installiert: hamzafer/claude-code-mods
1.Eine Zeile, direkt in Claude Code
/plugin install usage-meter --marketplace hamzafer/claude-code-modsIn eine laufende Sitzung einfügen (v2.1.275+). Claude Code fragt zuerst, ob der Marketplace hinzugefügt werden soll.
2.Aus deiner Shell
claude plugin marketplace add hamzafer/claude-code-mods claude plugin install usage-meter@claude-code-modsFühre danach in jeder bereits geöffneten Sitzung /reload-plugins aus.
3.Ohne Installation ausprobieren
git clone https://github.com/hamzafer/claude-code-mods claude --plugin-dir ./claude-code-mods/mods/usage-meterLädt die Mod nur für eine Sitzung. An deinen Einstellungen wird nichts geändert.
So funktioniert es
Aus hooks/register.tsx die beiden Hooks, die Messwerte erfassen:
on('session.start', async ($, e, next) => {
const result = await next(e)
// Moves the reset countdown on while a window has a reset time.
timer?.cancel()
timer = $.clock.every(TICK_MS, () => { /* bumps the tick atom */ })
const usage = await $.session.usage().catch(() => null)
if (usage) await take($, usage.rateLimits, usage.cost?.usd).catch(() => {})
return result
})
on('session.measure', async ($, e, next) => {
const result = await next(e)
await take($, e.rateLimits, e.cost?.usd).catch(() => {})
return result
})take behält die Fenster mit einem endlichen Prozentwert, legt sie in einem vom Host verwalteten $.state-Atom ab und ruft warn auf. warn zeigt einen Toast für jedes Fenster bei 90 % oder mehr, vor dem im aktuellen Reset-Zeitraum noch nicht gewarnt wurde. Verschiebt sich eine Reset-Zeit um mehr als eine halbe Stunde, zählt das als neuer Zeitraum. Der ui.render-Hook auf AbovePrompt liest den Schnappschuss und ein tick-Atom, das der 60-Sekunden-Timer hochzählt, sodass der Countdown ohne neuen Messwert neu gezeichnet wird. Die reinen Funktionen build, fit, bar, colorFor und countdown erzeugen die Segmente, und die Tests des Autors decken sie ab.
Anpassen
Es gibt keine Optionen in /config und keinen Slash-Befehl. Die Konstanten oben in register.tsx steuern die Details: CELLS (Balkenbreite, 5), TICK_MS (Countdown-Aktualisierung, 60 Sekunden), WARN_AT (Toast-Schwelle, 90) und LABELS für die Fensternamen (5h, 7d, spend).
Berechtigungen & Sicherheit
Wir lesen jede Datei, die das Plugin ausführen kann, bevor wir es starten: hooks/hooks.json, hooks/register.tsx, die Typdeklarationen und die Tests. Es gibt keine package.json, kein Installationsskript und keinen gebündelten Code.
Ändert die UI betrifft die Zeile über dem Prompt und den 90-%-Toast. Die Mod liest Nutzungswerte, die Claude Code ohnehin erfasst, über $.session.usage und das Ereignis session.measure, und hält sie in $.state. Sie führt keine Befehle aus, liest oder schreibt keine Dateien, nutzt kein Netzwerk, liest keine Umgebungsvariablen und ruft das Modell nicht auf. claude plugin validate meldete keine Fehler oder Warnungen, und die 11 Tests des Autors liefen unter Claude Code 2.1.291 durch.
- Verändert die Oberfläche
- Zeichnet in die Oberfläche von Claude Code: Leisten, Bereiche, Statustext, Toasts (ui.render / $.ui.*).
Kompatibilität & Fehlerbehebung
Geprüft mit Claude Code 2.1.291 unter macOS (validate und Tests). Wenn die Zeile nicht erscheint:
claude --versionist 2.1.287 oder neuer.- Du nutzt ein Claude-Abo. Mit einem API-Schlüssel erscheinen nur die Kosten, und zwar erst, wenn sie über $0.00 liegen.
- Claude Code hat eventuell erst nach der ersten Modellantwort Nutzungswerte. Sende einen Prompt, dann füllt sich die Zeile.
- Über der Eingabe ist eine Umfrage geöffnet; die Zeile kehrt zurück, sobald sie geschlossen ist.
FAQ
- Sendet Usage Meter eine Anfrage, um meine Nutzung abzufragen?
- Nein. Die Mod liest die Werte, die Claude Code ohnehin hat: beim Sitzungsstart über $.session.usage und danach über das Ereignis session.measure. Die Mod selbst stellt keine Netzwerkaufrufe.
- Was ist, wenn ich einen API-Schlüssel statt eines Abos nutze?
- Dann meldet Claude Code keine Planfenster, und die Zeile zeigt nur die Sitzungskosten, sobald sie über null liegen. Gibt es nichts anzuzeigen, wird die Zeile ausgeblendet.
- Wann warnt die Mod mich?
- Wenn ein Fenster 90 % überschreitet, erscheint ein Toast wie „5h usage limit at 92%, resets in 1h05“ – einmal pro Fenster und Reset-Zeitraum.
- Was bedeuten die Farben?
- Grün unter 75 %, gelb ab 75 % und rot ab 90 %. Das 7-Tage-Fenster zeigt seine Reset-Zeit ebenfalls, sobald es 75 % erreicht.
- Worin unterscheidet es sich vom Kontext-Meter (cm-context-meter)?
- Das Kontext-Meter schreibt Kontext-Prozent, Planfenster und Kosten als Text in die Statuszeile und warnt bei 80 % Kontext. Usage Meter zeichnet Balken über dem Prompt, ergänzt einen laufenden Reset-Countdown und warnt bei 90 % eines Planfensters, zeigt aber den Kontextfüllstand nicht.
# Ähnliche Mods
EmpfohlenKontext-Meter
Kontextfüllstand, 5-Stunden- und 7-Tage-Plannutzung und Sitzungskosten in der Statuszeile, plus Warnung vor dem Limit.
- Statuszeile
- Toast
- Verändert die Oberfläche
getestet mit v2.1.310
Mehr in Kontext, Kontingent, Kosten, Statuszeile & Prompt-Leiste.