Claude Code の消費を、
常時計測する。

gClaudeTokenMonitor (ctm) は、Claude Code のセッションログを差分読みして トークン消費量とコストを 1 秒ごとに更新表示するターミナルモニター。 Go 標準ライブラリのみ・外部依存ゼロ・単一 exe。 タスクバー常駐 UI と、5 分ごとの公式プラン使用率の記録つき。

v0.2.3 Windows 10/11 Go / 依存ゼロ MIT License
CtmMonitor のモニタ・ウィンドウ。18.09M tokens の大型カウンタと 2 層の水槽、5h 9% / week 15% の使用率表示

タスクバーに常駐するモニタ・ウィンドウ。水位=プラン使用率

このページのスクリーンショットの数値は、デモ用に合成した計測データです。

WHAT IS THIS

ログを読むだけ。API キーも設定も不要。

Claude Code は全セッションの応答を ~/.claude/projects/**/*.jsonl に書き出している。 ctm はそのログを tail(差分読み)して、assistant メッセージの usage を集計する。 計測対象のセッションには一切触れないので、観測者効果が起きない。

Claude Code のログは同一メッセージを複数行に重複して書く(実測 1.7 倍の水増し)。 ctm は message.id + requestId をキーに重複を排除する。 キャッシュの 5 分書き込み / 1 時間書き込み / 読み出しも分けて数え、 それぞれ 1.25x / 2.0x / 0.1x のレートで換算する。

DEMO 01 — TASKBAR

水槽が満ちたら、休憩の合図。

CtmMonitor はタスクバーに常駐する小さな窓。5 時間制限(手前・青)と週間制限(奥・紫)を 2 層の水槽として描く。消費が発生するたびに、発生元のプロジェクト名を添えた +N フロートが浮かび上がる。 ドラッグすると水面が揺れる物理演出つき。

1 回の消費で浮かぶ +151.2K のフロート。発生源のプロジェクト名 research が添えられている
複数プロジェクトの +N フロートが同時に積み上がっている様子
Detail レイアウト。5時間制限 34% / 週間・全モデル 61% / 週次・Fable 47% をバーで一覧
デスクトップに置いた gClaudeTokenMonitor の窓。作業中は視界の隅で水位が上がっていく
置きっぱなしで使う — 常駐して視界の隅で水位が上がる
右クリックメニュー。使用率アカウントのサブメニューが開き、自動 / Personal · MAX 20x / Acme Inc · Teams Standard が並ぶ
右クリック — 使用率アカウント(個人 MAX / 会社 Teams)を切替

クリックで表示単位(Auto / K / M / RAW)とレイアウトを切替。右クリック →「Windows 起動時に開始」で常駐化。

DEMO 02 — LIVE

いま燃えているか、あと何分もつか。

ctm の LIVE ビュー。総トークン数・コスト・5 時間ブロックの進行・直近 60 分のスパークライン・モデル別内訳・直近メッセージが 1 画面に表示されている

ターミナルで動く CLI 版モニタ。1 秒ごとに更新

レートリミットの実体である 5 時間ブロックを自動検出し、 プログレスバー・バーンレート(tok/min)・ブロック終了時点の着地見込みを表示する。 直近 60 分はスパークラインで、どの瞬間に燃えたかが分かる。

更新は 1 秒ごと。1〜6 でビュー切替、r で再スキャン、 q で終了。

BLOCKS ビュー。5 時間ブロックごとのトークン・メッセージ数・コスト・使用量バーの履歴

DEMO 03 — VIEWS

6 つの切り口。キー 1 つで切替。

ライブ・日別・モデル別・プロジェクト別・セッション別・5h ブロック別。 「昨日いくら使ったか」「どのプロジェクトが食っているか」「いま動いているセッションはどれか」が 即答できる。

DEMO 04 — SUB-MONITOR

机の上に、専用の計器を。

M5Stack ATOMS3R(128×128 IPS・IMU)を表示専用のサブモニタとして使える。 PC 側の CtmMonitor が 200ms ごとに状態を USB へ送り、デバイス側は 2 層の水槽と スプリングカウンタを 30fps で描画する。本体を物理的に回すと、表示は 「ボールが転がるように」重力の向きへゆっくり追従する。

デバイスへのファーム書き込み・更新もアプリの右クリックメニューから行える。 esptool や Python の導入は不要で、本体のボタン操作も要らない。zip に同梱の ファーム(atom-fw\)を、新品にはそのまま書き込み、接続中のデバイスが 古いときだけ「更新」項目が有効になる(勝手に書き換えることはない)。

実機デモ — 傾けると水は低い側へ寄る。IMU で重力を監視し、水槽が物理法則に追従する
ATOMS3R 実機。128×128 の画面に 5H 窓の 160.56M tokens、$143.71、5h 18% / wk 60% が表示されている
ATOMS3R — 128×128 IPS に 5h 窓のトークン・コスト・使用率を常時表示

DEMO 05 — ALWAYS-ON

「測ろうと思ってから準備する」のを、やめた。

過去ログビューア。日付ごとのメッセージ明細と指示ごとの内訳

常駐レコーダー ctm record が全セッションを ~/.ctm/ に アーカイブし続ける。Claude Code を何個立ち上げても、途中で新しいセッションを開いても、 設定なしで記録される。

計測はあとから期間を切り出すだけ:

●●● ctm query
$ ctm query -from "13:00" -session 1a2b3c4d

再起動してもバイトオフセットから再開(取りこぼし・二重記録なし)。 UI の「過去ログ」からは、日別明細とプロンプトごとの内訳も追える。

DEMO 06 — PLAN LIMITS

公式使用率と、実測の消費を同じ行に。

過去ログの「使用率の推移」タブ。5時間制限 34% / 週間・全モデル 61% / 週次・Fable 47% と、それぞれの実測メッセージ数・トークン・コストが同じ行に並ぶ
使用率の推移 — 公式 % と実測消費が 1 行に同居する

Claude Code が画面に出す「5 時間制限 / 週間制限」の公式使用率(%)を Anthropic の API から取得し、同じ時間窓で ctm が実測した消費と並べて記録する。 「何 % のとき、いくら消費していたか」が残るので、窓の容量を逆算できる。

●●● ctm limits
$ ctm limits

プラン使用制限  max / default_claude_max_20x

  5時間制限
   使用率    0.0% ............................
   リセット  4h55m後 (08-22 20:09)
   実測消費  7 メッセージ / 3.28M トークン / $2.074

* 週間・全モデル
   使用率    8.0% ##..........................
   リセット  106h45m後 (08-27 01:59)
   実測消費  1,036 メッセージ / 275.44M トークン / $231.58
   窓の容量  3.44G トークン / $2895 相当(この使用率からの逆算)
   残り      $2663 相当

常駐レコーダーが既定で 5 分ごとにサンプリング。複数マシン運用では 「% はアカウント全体・実測はそのマシンの分だけ」という非対称を利用して、 他マシンの消費も推定できる。

FEATURES

機能一覧

VS

既存の見方との違い

Claude Code の /cost 等都度実行の集計 CLIctm
リアルタイム表示セッション内のみ✕(実行した瞬間だけ)◯ 1 秒更新・全セッション横断
常時記録✕✕◯ 常駐レコーダー(追記専用)
測り始めの準備不要その都度実行不要(常に記録済み。あとから切り出す)
公式使用率(%)との突合% 表示のみ✕◯ % と実測消費を同じ行に記録
キャッシュ種別ごとの料金レート—ツールによる◯ 5m/1h/read を分離(費用が 20 倍違う)
導入—ランタイムが要る場合ありzip 展開のみ・依存ゼロ

コスト表示は Anthropic 公開リスト価格に基づく推定値。定額プラン(Pro / Max)では実際の請求は発生しない。

INSTALL

インストール(zip 展開だけ)

必要なのは、その PC で Claude Code を使っていること。 プラン使用率(%)も見るなら、claude にログイン済みであること。 Go / .NET / Python のインストールは不要。

  1. Releases から ctm-*-windows-amd64.zip をダウンロード
  2. 任意のフォルダ(例 C:\tools\ctm)に「すべて展開」(フォルダ構成は変えない)
  3. 直下の CtmMonitor.exe をダブルクリック → レコーダー(bin\ctm.exe)も自動で起動
  4. 常用するなら右クリック →「Windows 起動時に開始」
ctm-0.2.0-windows-amd64.zip
├── CtmMonitor.exe   ← これをダブルクリック
├── bin\ctm.exe      CLI / レコーダー(自動起動される)
├── atom-fw\          ATOMS3R 用ファーム(メニューから書き込む)
├── README.md / INSTALL.txt / LICENSE
●●● 動作確認
$ .\bin\ctm.exe status
レコーダー: 稼働中
  記録先       C:\Users\you\.ctm
  本日の記録   588 メッセージ / 100.77M トークン / $242.97
SmartScreen に止められたら: exe を右クリック → プロパティ →「許可する」→ OK。
Smart App Control が有効な PC では、ダウンロードした未署名 exe は解除できずブロックされる (ブロックされたことはバルーンと crash.log で分かる)。その場合は、下の手順でソースからビルドする。

ソースからビルドする場合

●●● build from source
$ winget install Git.Git GoLang.Go
$ git clone https://github.com/GridJapan/gClaudeTokenMonitor.git
$ cd gClaudeTokenMonitor
$ .\build.ps1
$ .\bin\CtmMonitor.exe

必要なのは Go 1.22+ と Git だけ。CtmMonitor は Windows 標準の csc.exe でビルドされる。