⏳ This skill is pending AI review.

Scores will appear once the review pipeline completes.

version unknown

tokdiet

@naenote⭐ 0 stars

Claude Code のローカルログ(~/.claude/projects)を読み、トークンの使い道と上限に当たりやすい原因を診断して、証拠つきの改善計画を出す。「トークンを減らしたい」「上限に当たる」「何が重いか調べて」「トークン診断」「token diet」と言われたときに使う。計画を出したところで止まり、ユーザーの承認なしにファイルを変更しない。変更後は前後比較で効果を測る。

Choose how to use this skill

You do not need every option. Choose the path your AI client supports. The stable page stays the same; versioned files are immutable.

1. Native installer

This listing has no registered native installer command. Use the complete package or source fallback below, depending on what your client supports.

Do not guess an installer command or replace an existing version without reviewing the diff.

2. Complete package recommended

Download the ZIP when available. It includes SKILL.md plus the references, security notes and version metadata.

No complete ProSkills package is published for this listing yet.

3. Prompt-only

Copy the prompt above when the agent can read the stable page or when you want to adopt the workflow without installing a skill.

Need only the instruction file?

Download SKILL.md only if your client requires a single file. The complete ZIP is safer for a full installation because it preserves the references and release context.

No path installs or executes anything by itself. Your agent still needs access to the project files. Before updating, compare the installed version and review the diff.

—/10

// RATINGS

⭐GitHub Stars
⭐ 0 on GitHubGitHub ↗

New / niche

🟢ProSkills Score
—
📍

Not yet listed on ClawHub or SkillsMP

// README

tokdiet

Claude Code の利用上限に当たりやすい人や、トークンを何に使っているのかわからない人のためのスキルです。Claude Code が手元に残すログを読み、使用量の内訳と、減らせそうな箇所を調べます。結果は、根拠つきの改善計画として出ます。Claude は計画を出したところで止まり、あなたが承認するまで何も変更しません。

Claude Code の節約術は多く出回っています。ただ、どれが自分の環境で効くのかは、自分のログを測らないとわかりません。上限に当たるたびに節約術を試しては、効いたのかわからないままになる。その状態を終わらせたくて作りました。何が重いかを手元のログから示し、変更の前後を同じ物差しで測れます。

個人が作った試用版です。仕様と出力は変わることがあります。使ってみた感想は、このリポジトリの Issues に書いてください。感想をもとに直していきます。

使い始めるまでに読むのは、「何がわかるか」「導入」「使い方」です。ほかの節は、必要になったときに開いてください。「用語集」は末尾にあります。

何がわかるか

  • 使用量とキャッシュ率を、モデル別(Opus、Sonnet、Haiku のどれをどれだけ使ったか)、ツール別(ファイルの読み込み、コマンドの実行など)、プロジェクト別(匿名の P1..Pn)に出します。
  • 無駄の原因。ログから測れたものだけを出します。
    • 常駐オーバーヘッド(指示ファイル、スキルの説明文、MCP の説明)
    • 使っていない MCP とスキル
    • 同じファイルの再読込、範囲指定なしの大ファイル読み
    • 巨大なツール結果
    • compaction の推定
    • キャッシュ率の低いセッション
    • サブエージェントの多重起動
    • 繰り返し実行される Bash コマンド
    • 上位モデルの使用割合
  • 各項目は 2 つに分けます。「クイックウィン」は、品質への影響が出にくいと考えられる変更です。「要検証」は、候補を挙げるだけのもので、品質が同じかは自分のログで確かめます。
  • 上限到達のエラーがログに残っていれば、その時刻と、直前 5 時間の消費トークンを出します。

出力の一部を、合成データから作ったサンプルで示します。次は sample/synthetic-report.md の「クイックウィン」の 1 行です。

同一ファイルの再読込: Read 12 回中、同一セッションで編集を挟まず同じファイルを再度読んだ回数 8(66.7%)。回数は数えた値で、無駄かどうかは文脈次第。変更案は「再読込を避ける運用、必要範囲のみ読む」。

数えた回数と、断定できない点を分けて書くのが、この出力の形です。

ログは外に出ません

  • Python 3 の標準ライブラリだけで動きます。スクリプトはログを外へ送りません。
  • 書くのは、--out で指定したディレクトリと、--snapshot で指定したファイルだけです。
  • 読むのは、ローカルのファイルだけです。ログのほかに、次のファイルを読みます。スキルや指示ファイルが、ほかの設定やスクリプトから参照されているかを調べるためです。
    • ログに記録された作業ディレクトリから辿れる git リポジトリの中にある、.md、.yml、.json、.sh、.py、.js、.ts、.toml、.txt などの 512KB 以下のファイル(約 3 万件まで)
    • CLAUDE.md、.claude/rules、.claude/agents
    • ホームにあるスキルとプラグインの SKILL.md
  • --root で範囲を絞っても、スキルの呼び出し回数を数えるために、既定のログの場所(~/.claude/projects)を走査します。
  • 読んだファイルは、書き換えません。詳細版の action-brief.md には、パス、名前、件数、見出しが出ます。シークレットらしい文字列はマスクしますが、完全ではありません。共有してよいのは、匿名の report.* だけです。
  • ソースは合計で約 2,000 行です。実行する前に、次のようなコマンドで通信やプロセス起動がないことを確かめられます。
grep -nE "socket|urllib|http\.client|subprocess" skills/tokdiet/scripts/*.py

導入

次のどちらかです。

プラグインとして入れる

Claude Code で次を実行します。

/plugin marketplace add naenote/tokdiet
/plugin install tokdiet@tokdiet

スキルとしてコピーする

git clone https://github.com/naenote/tokdiet.git
cp -r tokdiet/skills/tokdiet ~/.claude/skills/

使い方

Claude Code で、こう頼みます。

tokdiet でトークンの使い方を診断して

Claude は次の順で進めます。

  1. ログを集計し、詳細版の action-brief.md(優先アクションの一覧)を作る。
  2. 各項目の根拠を、再確認コマンドで自分でも確かめる。再確認コマンドは、たとえば指示ファイルの文字数を wc -c <ファイル> で数え直すものです。
  3. 対象、実測、変更案、確認方法を計画として出し、ここで止まる。
  4. あなたが選んだ項目だけを変更する。
  5. 数日から 2 週間使ったあと、前後比較で効果を測る。

Claude を使わずに直接実行することもできます。

python3 skills/tokdiet/scripts/tokdiet.py --out ~/tokdiet-out --snapshot ~/tokdiet-out/baseline.json
python3 skills/tokdiet/scripts/leakcheck.py ~/tokdiet-out/report.md ~/tokdiet-out/report.html --logs ~/.claude/projects
オプション意味
--out DIR出力先(必須。--list-models のときは不要)。ログやリポジトリの外を勧めます
--root DIR読むログの場所。既定は ~/.claude/projects。1 プロジェクトだけ見るときは ~/.claude/projects/<proj>
--no-briefaction-brief.md を作らず、匿名レポートだけ作る
--snapshot FILE集計のベースライン JSON を保存する(権限 0600。パスなどを含むのでローカル専用)
--prices FILEモデル ID ごとの単価の JSON。渡さなければ、金額は出ない(「金額の概算と単価」の節)
--list-modelsログに出てくるモデル ID を一覧して終わる。単価を調べる対象の確認用
--compare FILE保存済みベースラインとの差分を、action-brief.md の末尾に出す

leakcheck.py は、匿名レポート(report.*)にログ由来の情報が混ざっていないかを機械的に調べます。パス、メール、URL、ログ本文の断片、セッション ID などが対象で、1 件でも見つかれば終了コード 1 を返します。action-brief.md には使いません。

実行が拒否されたとき

権限モードが auto mode だと、スクリプトの実行が、外部のコードを動かす操作として自動で拒否されることがあります。tokdiet が、ダウンロードしたスクリプトを実行するからです。

  • 権限モードを Accept Edits に切り替えてください。切り替えると、スクリプトの実行も、根拠の再確認コマンドも、確認なしで通りました(2 つの環境で確かめました)。終わったら、元のモードに戻して構いません。
  • 切り替えずに、自分で実行することもできます。Claude Code の入力欄で、先頭に ! を付けてコマンドを打つと、その場で実行されます。コマンドは、上の「Claude を使わずに直接実行する」例と同じです。
  • 実行前に中身を確かめたいときは、「ログは外に出ません」の節の grep と、読むファイルの一覧を使ってください。
  • 許可するかどうかは、あなたが決めます。Claude は、拒否された操作を別の方法で迂回しません。

出力は 2 系統

ファイル中身共有
action-brief.md(権限 0600)実在のスキル名、エージェント名、ファイルパス、コマンドの一部と、実測の重さしない。ローカル専用
report.md / report.html集計値と匿名 ID(P1..Pn)だけ。管理者に見せる、匿名の 1 枚してよい。先に leakcheck.py で検査する

管理者は、「用語集」にある通り、Claude の契約や利用状況を管理している人です。report.md / report.html には、その人に渡すための要約があります。個人で使っているなら、自分で読むための要約です。

action-brief.md と baseline.json には、パス、コマンド、スキル名、エージェント名が入ります。人に渡さず、コミットもせず、Issue にも貼らないでください。共有してよいのは report.* だけです。

金額の概算と単価

report.* には、モデルごとの金額の概算が出ます。単価は価格表として同梱しません。実行のたびに、Claude が claude-api スキルで、ログに出てきたモデルの API 単価(100 万トークンあたりのドル)を読み取り、prices.json に書いてスクリプトへ渡します。単価は頻繁に変わり、モデルごとにも違うためです。渡す単位は、Opus や Sonnet といった系列ではなく、モデル ID です。

  • 金額は、API の単価で計算した概算です。あなたの契約の請求額ではありません。
  • キャッシュの読み取りは、スキルが示す金額があればそれを使い、なければ入力単価の 0.1 倍で計算します。キャッシュの作成は、入力単価の 1.25 倍(5 分)と 2 倍(1 時間)です。
  • 入力が一定の長さを超えると単価が変わるモデルがありますが、その段階分は反映しません。
  • 単価が取れなかったモデルは「単価不明」になり、金額に含まれません。単価をまったく渡さなければ、金額なしのレポートになります。
  • Pro、Max、Team などの定額プランでは、請求額と無関係です。使用量の目安として読んでください。削減できた金額ではなく、「同じ枠でより多く使える余地」を見る数字です。

sample/ に、合成データから作った出力例があります。サンプルの金額は、説明用の仮の単価で計算した値で、実際の価格ではありません。

できないこと

重要なものから順に並べます。

  • 削減効果の % や円は出しません。 根拠がないからです。出すのは占有量の実測だけです。金額は API 単価での概算なので、定額プランでは「枠が広がる」と読んでください。
  • 品質は測れません。 「要検証」は、自分のログで品質が同じかを確かめる前提の候補です。
  • データが少ないと、判断を出しません。 利用量を数えられたセッションが 5 未満なら、優先アクションは出さず「データ不足」と表示します。この閾値 5 は暫定です。ほかの閾値(巨大結果 40,000 字、範囲読み候補 20,000 字、compaction 推定の比率など)も仮置きです。
  • シークレットのマスクは正規表現ベースで、完全ではありません。 メール、JWT、秘密鍵、主要なキーの形式、key=値 の形などを対象にします。既知の形式と違う短いパスワード、自然文に混ざった秘密、パスやスキル名に埋まった機密は検出できません。逆に、マスクしすぎることもあります。マスク済みでも action-brief.md は共有しないでください。
  • プラグイン経由のスキルとコマンドの呼出は推定できません。 「呼出 0 回」や「参照 0 件」は、安全の証明になりません。スキル呼出として数えるのは Skill ツールと <command-name> の入力だけなので、少なく見積もっている可能性があります。組込みスキルの出所は判別できず、「不明」と出ます。
  • Bash 経由の編集は検出できません。 再読込が成果物か参照資料かは、ログに残る Write と Edit の形跡だけで判定します。
  • 他の端末や Web 版の消費は含みません。上限到達の「Time at limit」そのものは取れず、代理指標(到達直前 5 時間の消費など)だけを出します。
  • スキルと MCP の個別のトークン数は測れません。スキルは説明文の文字数、MCP は通知文の総文字数で見ています。項目間で単位が揃わないので、ランキングは目安です。
  • Claude Code のログ形式は非公開で、変わる可能性があります。動作を確認したのは 2026-10 時点の 1 つの環境だけで、Windows などのパス形式は未検証です。compaction の検出は実例が少なく、有効かどうか確かめられていません。
  • 無効化の手順は、公式ドキュメントで確認できた範囲だけ案内します。確認できないものは「公式未確認・手順不明」と出ます。

感想の送り先

GitHub Issues の「試用フィードバック」から送ってください。役に立った点、わかりにくかった点、外れていた点が知りたいです。

貼ってよいのは、匿名の report.md の一部だけです。action-brief.md と baseline.json は貼らないでください。

テスト

python3 -B -m unittest discover -s tests

用語集

この README で使う言葉の一覧です。

言葉意味
トークンAI が文章を読み書きするときの量の単位です。おおまかには、文章が長いほど増えます
上限Claude Code の利用上限です。契約しているプランごとの利用枠に達して、Claude Code が止まることです。枠の細かい決まりは扱いません
ログClaude Code が自分のパソコンに残す、やり取りの記録です。~/.claude/projects にあります
モデルClaude 自体の種類です。Opus、Sonnet、Haiku があります
キャッシュ率前に読んだ内容を、読み直さずに再利用できた割合です。低いと、同じ内容を何度も新しく読み直している可能性があります
指示ファイルCLAUDE.md のように、Claude に毎回読ませる決まりごとを書いたファイルです
スキル特定の作業のやり方を書いた手順書です。Claude は、各スキルの説明文を毎回読み込みます
MCP外部のツールやサービスを Claude Code につなぐ仕組みです。つなぐと、そのツールの説明が会話に載ります
サブエージェントClaude が、本体の会話とは別に起動する補助の Claude です
常駐オーバーヘッド会話のたびに、最初から自動で載る分です。指示ファイル、スキルの説明文、MCP の説明が該当します
compaction会話が長くなったとき、古い部分を要約して縮めることです
管理者会社やチームで、Claude の契約や利用状況を管理している人です。支出の上限やプランを決めます。個人で使っているなら、あなた自身です
単価モデルごとの API の料金です。金額の概算にだけ使います。同梱せず、実行のたびに Claude が公式情報から取ります(「金額の概算と単価」の節)
P1、P2、…(Pn)プロジェクト名を伏せるための匿名の番号です。P1 は 1 つめのプロジェクトを指します
権限 0600そのファイルを、あなたのアカウントだけが読み書きできる設定です(Linux と macOS の設定です)

ライセンス

MIT(LICENSE)

// HOW IT'S BUILT

KEY FILES

skills/tokdiet/SKILL.mdREADME.md

// REPO STATS

0 stars