Claude Code Usage Status Line
Claude Code、z.ai GLM、DeepSeekの使用量をリアルタイムで監視
ターミナルから直接確認できます。
無料、オープンソース、設定不要。
100% 無料対応OS: WindowsLinuxmacOS
3つのOSそれぞれにx64版とARM64版、合計6つのアーカイブ。
1.4.1の新機能
DeepSeekがClaudeとz.aiに加わり、セッションの支出額にようやく意味のある数字が表示されるようになりました。
Claudeアカウントごとに1行
僕はCLAUDE_CONFIG_DIR変数を使って2つのClaude Codeアカウントを切り替えているんだけど、statuslineには実際にどのアカウントが有効かにかかわらず、いつも律儀に1つ目のアカウントの数字が表示されていた。これでstatuslineはこの変数を読むようになり、キャッシュもバックオフもアカウントごとに分離された。
当然の帰結として、どのアカウントのデータか証明できないデータは、期限切れと表示されていても、もうまったく表示されない。誰か別の人のパーセンテージが表示されるくらいなら、セグメントが消えるほうがいい。
無効なトークンはそう教えてくれる
これまでは401が一般的なエラーに埋もれていて、APIが落ちているのかトークンの期限が切れたのかもわからないまま、行は黙り込んでいた。
今は別扱いになり、アカウントのキャッシュは無効化され、メッセージも明確になった。トークンを単純にローテーションするだけなら、もう何も止まらず、表示は次のアカウントから再開する。
3つ目のプロバイダー : DeepSeek
僕は仕事の一部をDeepSeekに回しているので、ほかと同じ快適さがほしかった。アカウントの残高を目の前で確認できることだ。今では行に表示され、APIが返した通貨のままで、変換はされない。
DeepSeekが公開しているのは支出履歴ではなく、残高だけだ。そのため行には、z.aiと同じように残高が表示される。これを検出するには少し余計な作業が必要だった。僕のランチャーはClaude CodeにClaudeモデルだと伝えながら、トラフィックは別の場所へ送っていて、statuslineはAnthropicの認証情報を探していたので、有効なキーなのにcredentials missingに行き着いていた。今ではランチャーから引き継いだAPIアドレスも見て、本当は誰と話しているのかを判断する。
ピクトグラムの凡例
- ⌛ 5時間のスライディングウィンドウ
- 📅 全モデル合計の7日間
- F 使用中モデルのゲージ、ここではFable
- 💰 残高または残っているクレジット
- 💸 セッションの支出(API課金アカウントでは実際のコスト、z.aiとDeepSeekでは残高の差分)
- 🧠 コンテキストウィンドウ
モデルごとのゲージにはピクトグラムではなく頭文字(F、s、o)を残している。ラベルはAPIから来てモデルによって変わるので、固定されたアイコンではいずれ嘘をつくことになる。最小構成のLinuxディストリビューションでは、fonts-noto-color-emojiをインストールすれば、すべて表示される。
モデルごとのゲージとクレジット
移行済みのアカウントでは、AnthropicはSonnetとOpusの固定ゲージを2つ返すのではなく、現在のモデルに紐づいた週間ウィンドウを返すようになった。表示される文字はモデルに従うので、Fableの場合はFになる。
ウィンドウが上限に達してクレジットに切り替わると、💰のセグメントが詳細モードになり、使用額、上限、残額を表示する:💰 €12.56/€14 (left €1.44)。未移行のアカウントでは、sとoを含む以前の表示が維持される。
セッションの実際の使用額
Claude Codeが計算するセッションコストは、申告されたモデルの料金で見積もられている。私のところでは、アカウント全体が$8.13で、セッションのコストが$0.26くらいだったのに、💸 $24.64と表示されていた。100倍ということは、使える情報としては何もないに等しい。
今ではアカウントの実際の残高を基準に測定され、最初のプロンプトで取得した後、更新のたびに比較される。z.aiもこの機会に表示を追加している。これまではセッションの使用額をまったく表示していなかった。
表示されるモデルが実際に動いているモデル
名前についても同じで、バックエンドがDeepSeekを提供している間、行にはOpus 4.7と表示されていた。これからは、表示される名前が実際のプロバイダーに従う。
対応関係が宣言されていない場合も壊れることはなく、空欄ではなく以前の名前が表示されたままになる。
Claude Codeの下部にあるステータス行
必要な情報をひと目で確認
1本のステータス行。Claude、z.ai、DeepSeekの使用データをすべて表示。
プロジェクトを自動検出
現在のディレクトリ名を表示する(パスの末尾)。完全なパスで行を埋め尽くすことなく、どのプロジェクトで作業しているかをいつでも把握できる。
アクティブなモデル
どのモデル(Opus、Sonnet、Haiku、GLM、DeepSeek)が使われているかを、ステータスバーで直接確認できます。プロバイダーは自動的に検出されます。
使用率
5時間、7日間のウィンドウと現在のモデルのゲージ(未移行のアカウントではSonnetとOpusを分けて表示)、色付きのインジケーター:緑、黄色、赤。
カウントダウン
制限がいつリセットされるかを正確に把握できます。カウントダウン↻は、対象となる各メトリックの横に表示されます。
コンテキストウィンドウ
会話の途中で上限に達するのを避けるため、コンテキストウィンドウの使用状況を監視できます。
z.ai / GLMとDeepSeekのサポート
z.aiアカウントの残高(💰 9.88$)を表示し、選択した通貨(EUR、GBP、CAD…)に自動変換します。DeepSeekの残高も、ネイティブ通貨のまま、変換なしで表示されます。
古いデータのインジケーター
値の前に付いた~は、キャッシュの有効期限が切れているものの、APIが利用できない状態(429のバックオフ)であることを示します。常に何を読んでいるのかがわかります。
スマートキャッシュとバックオフ
APIへの負荷を抑えるため、プロバイダーごとに1分間キャッシュします。429が発生した場合は、レート制限を吹き飛ばさないよう、5分間の自動バックオフを行います。
設定ゼロ(Claude)
インストーラーを起動すれば、それだけです。Claudeの認証情報を~/.claude/.credentials.jsonから自動的に読み込みます(macOSではKeychainからも読み込みます)。
サブスクリプションに応じてStatus Lineに表示される内容
Status Lineはあなたのプランに自動的に適応し、関連するメトリックを表示します。
z.aiの設定(GLMモデル)
z.ai経由でGLMモデル(glm-5.1など)とClaude Codeを使っている場合、残高を表示するにはちょっとした追加設定が必要です。
ZAI_API_KEY)を受け付けず、別のウェブセッションJWTを要求します。しかもログインエンドポイントは、あらゆる自動化(Selenium、Playwrightなど)をブロックするcaptcha TianCaptcha(Aliyun)で保護されています。だから、信頼できる唯一の方法は、実際のブラウザからトークンをコピーすることです。ステップ1:JWTを取得する
- 普段使っているブラウザでz.ai/manage-apikey/billingを開く
- ログインする(求められたらcaptchaを解く)
- F12でDevToolsを開き、Networkタブに移動する
- F5でページを更新する
accountBalanceという名前のリクエストをクリックする- Headersで、
Authorizationの値を、Bearer接頭辞なしでコピーする(トークンはeyJhbGciOiJIUzUxMiJ9で始まります)
ステップ2:JWTを保存する
コンパニオンバイナリのClaudeUsageStatusline.ZaiRefreshはインストール時に提供されます。トークンの形式を検証し、~/.claude/.zai-credentials.jsonに書き込みます。
Windows:
& "$env:LOCALAPPDATA\ClaudeUsageStatusLine\ClaudeUsageStatusline.ZaiRefresh.exe"Linux / macOS:
~/.local/bin/ClaudeUsageStatusline.ZaiRefreshステップ3(任意):表示通貨
残高はデフォルトでUSDで返されます。EUR(または他の通貨)で表示するには、実行ファイルの隣にあるappsettings.jsonを編集します:
{
"Zai": {
"NativeCurrency": "USD",
"DisplayCurrency": "EUR",
"ExchangeRateCacheHours": 24
}
}為替レートは無料APIから1日1回取得され、ローカルにキャッシュされます。
JWTを更新するタイミングは?
セッションJWTには明示的な有効期限がありません:その有効期間はz.aiのサーバーによって管理されています。一定期間操作がなかった場合や明示的にログアウトした場合、いずれ無効になります。
更新が必要なサイン:
- statuslineに
z.ai: token missingと表示され、新しいウィンドウの指示に従うよう促される - 期限切れデータのプレフィックス(
~💰)が残り続ける - ログに
401 Unauthorizedが含まれる
どちらの場合も、ZaiRefreshがウィンドウで勝手に開くので、新しいJWTを貼り付けるだけです。
DeepSeekの設定(APIキー)
z.aiより簡単です:APIキーが1つあれば十分で、captchaも一切ありません。
キーを作成する
DeepSeekアカウントのAPI keysセクションで、キーを作成する。それはsk-で始まり、一度しか表示されない: すぐにコピーする。
statuslineに渡す
2つの方法がある。環境変数DEEPSEEK_API_KEY、またはstatuslineが自分で読み込む小さなファイル:
{"apiKey": "sk-votre-cle"}~/.claude/.deepseek-credentials.jsonに保存する。その後に更新するものは何もない: APIキーは勝手に期限切れにならない。

Join the conversation
You need an account to comment on this article. Creating one is free and takes under a minute.
No comments yet.