はじめに
みなさん、Claude Code使ってますか?私は毎日使っています。
Vibe Codingガチアンチだったのですが、Claude Code + Sonnet 4の組み合わせがあまりにも強力すぎて、今では手放せません。
ところで Claude Max プラン、最高ですよね。月額$100で使い放題。
でも、ふと思いませんか?
「これ、従量課金だったらいくらかかってたんだろう…?」
そんな疑問を解決し、「Maxプランでこんなに得してる!」とニヤニヤするためのCLIツール「ccusage」を作りました。
きっかけ
このツールを作るきっかけになったのは、@milliondevさんの以下の記事です。
この記事では、Claude Codeがローカルに保存しているJSONLファイルをDuckDBで分析する方法が紹介されています。
ただ、毎回DuckDBでクエリを書くのは少し面倒ですし、サクッと使用状況を確認したいと思い、CLIツールとして実装しました。
ccusageでできること
1. インストール不要で即実行
npx ccusage@latest
bunx ccusage
インストールしなくても、上記のコマンドを実行するだけですぐに使用状況を確認できます。
2. 日別レポート
日付ごとのtoken使用量とコストを表形式で表示します。
実行結果の例:
╭──────────────────────────────────────────╮
│ │
│ Claude Code Token Usage Report - Daily │
│ │
╰──────────────────────────────────────────╯
┌──────────────────┬──────────────┬───────────────┬──────────────┬────────────┐
│ Date │ Input Tokens │ Output Tokens │ Total Tokens │ Cost (USD) │
├──────────────────┼──────────────┼───────────────┼──────────────┼────────────┤
│ 2025-05-30 │ 277 │ 31,456 │ 31,733 │ $17.45 │
│ 2025-05-29 │ 959 │ 39,662 │ 40,621 │ $16.37 │
│ 2025-05-28 │ 155 │ 21,693 │ 21,848 │ $8.33 │
├──────────────────┼──────────────┼───────────────┼──────────────┼────────────┤
│ Total │ 11,174 │ 720,366 │ 731,540 │ $336.17 │
└──────────────────┴──────────────┴───────────────┴──────────────┴────────────┘
3. セッション別レポート
プロジェクトとセッションごとの使用量を確認できます。どのプロジェクトが一番コストがかかっているかが一目瞭然です。
4. 期間フィルタリング
特定の期間のデータだけを表示できます。
ccusage --since 20250525 --until 20250530
5. JSON出力
プログラムで処理しやすいJSON形式での出力もサポートしています。jq
などのツールと組み合わせて、さらに詳細な分析が可能です。
ccusage daily --json | jq .total
Claude Codeのデータ構造
Claude Codeは使用履歴を~/.claude/projects/
以下にJSONL形式で保存しています。各行には以下のような情報が含まれています:
- メッセージの全て
- タイムスタンプ
- 入力token数
- 出力token数
- 使用モデル
- プロジェクト名
- セッションID
などなど…
ccusageはこれらのファイルを読み込んで集計し、見やすい形で表示します。
コスト計算
料金計算はlitellmが提供しているデータを実行時に参照し、モデルごとのtoken単価を取得しています。これにより、最新の料金体系に対応できます。
また、モデルの種類によってtoken単価が異なりますが、ccusage
ではモデルごとに集計し、合計コストを算出しています。
そのため、元の記事よりもより正確なコスト計算が可能です。
制限
ccusage
はローカルのClaude Codeの使用履歴ファイルを直接読み込みコストを計算します。そのため、複数マシンでClaude Codeを使用している場合、各マシンの履歴ファイルを統合する必要があります。
もしアカウント全体での使用状況を把握したい場合は、Dropboxなどを使用して履歴ファイルを同期することをおすすめします(もちろんこれは公式に推奨されている方法ではないため、自己責任で行ってください)。
まとめ
ぜひ一度お試しください!
そして、できたら #ccusage
のハッシュタグをつけて、あなたの使用状況をTwitter/BlueSkyにシェアしてください笑
リンク
謝辞
このツールの開発にインスピレーションを与えてくださった@milliondevさんに感謝します。元記事のDuckDBを使った分析手法は非常に勉強になりました。
余談
えー、6日ですでに362ドル使ってますね…。
追記
このツールは97%ほどはClaude Codeに書いてもらいました。自分は環境構築とやりたいことを指示して、ライブラリのドキュメントを渡して、自分でやった方が早そうな軽微な修正をし、gitのコミットメッセージを整え、npmへの公開作業を行っただけです。
lintやformatter、テストを適切に設定していれば、それにそってClaude Codeが自律的にコードを記述、修正してくれるので、非常に楽でした。
Vibe Codingアンチでしたが、時代が変わっていくのをこの1週間で実感しています。
Views: 0