visionhub DAILY AI SLIDE2026-10-31
Claude CodeやCodexの利用料を約2〜3割減らすOSS|Microsoft研究者らのTokenEconomizer
同じリポジトリで毎回くり返す無駄を、前回までの作業記録から見つけて省くプラグイン。モデルもエージェントのコードも変えない。v0.1.0は10月27日(JST)に公開された。[1]
平均コスト(5つのエージェント×モデル組合せ)
−18.4〜30.9%
SWE-Bench 277タスク・
著者測定(第三者の再現はまだ)。プラグイン自身のモデル呼び出しも含む。
[1][2]
30通り
6リポジトリ×5組合せの30通りすべてで安く
10/13リポジトリ作成
10/16論文公開(arXiv)
10/27v0.1.0リリース・告知
10/31本稿
01 / 課題
同じリポジトリでも、毎回同じ無駄に料金を払っている
エージェントは毎ターン、指示文・全ツール定義・会話履歴に課金される。同じリポジトリでは、その多くが繰り返しになる。[1]
リポジトリの学び直し「pytestではなくpython -m pytest」を毎回調べ直す。
使わないツール定義の送信一度も使わないツールの定義が、毎リクエスト送られる。
失敗ループ同じエラーに同じ直し方。トークンだけが積み上がる。
02 / ビフォー・アフター
使う回数が増えるほど、1回あたりのコストが下がる 概念図・実測値ではありません
1セッションのコスト = 本来の作業 + 3種類の無駄。最初の3セッションで1つずつ学び、次のセッションからその無駄が縮む。[1]
本来の作業
リポジトリの学び直し
使わないツール定義の送信
失敗ループ
S1学習:
リポジトリの事実事実を
学ぶ
S2学習:
未使用ツールツールを
学ぶ
S3学習:
失敗ループループを
学ぶ
S43つとも
効いている3つとも
効く
S5
S6
公式READMEのアニメーション図の構成を、編集部が静止図にした概念図。棒の高さは説明用で、測定値ではない。学び直しの削減は Micro-skills(既定オフ)を有効にした場合。[1]
03 / 仕組み
前回までの作業記録から学び、次回の無駄を3つの方法で省く
エージェント本体(モデル・重み・コード)は変えない。エージェントが既に読む場所(セッション冒頭の文脈、自前の設定ファイル)を通じて働く。[1]
→↓
🧠
学習~/.tokeneconomizer に
ローカル保存
→↓
⚙️
次セッションに適用事実を提示・ツールを外す・
ループに介入
↺ 同じリポジトリで、毎セッション繰り返す
📌 Micro-skillsリポジトリの事実を覚える既定 OFF
リポジトリ固有の事実を覚え、セッション冒頭に提示する。
何度も確かめられた事実だけを使う。後で矛盾したら捨てる。
提案モデルの呼び出しが増えるため既定オフ。[1]
✂️ Tool pruning使わないツールを外す既定 ON
使われないツールの定義を、次セッションから送らない。
しばらく使われなかったツールだけが対象。
toolprune restore で戻せる。戻したツールは再び外されない。[1]
🛟 Loop guard失敗のくり返しに介入する既定 ON
同じ失敗をくり返していないか、判定用のモデルが確かめる。
「詰まっている」と強く判断したときだけ、別の方法を促す。
進展しているターンには介入しない。[1]
✋ 作業を止めるのは人。プラグインは自分で止めない
① 詰まりを検知同じ失敗が続く → 判定用モデルが確認
→
② 別の手を促す「別の方法を試して」という短いメモを渡す
→
③ 止め方を伝えるまだ詰まっていれば、止め方(例:Esc)を1行で通知
→
👤 人が止める止めるかどうかは人の判断
無人実行(headless)では通知を誰も見ないまま、エージェント側の上限まで走り得る。運用で意識する。[1]
設定値(既定)を見る
| 仕組み | 既定の設定 |
| Micro-skills(既定オフ) | 事実の提案は3セッションごと(k=3)。3セッションで確かめた事実を採用。矛盾したら破棄 |
| Tool pruning(既定オン) | 10プロンプト(p=10)・2セッション以上(m=2)、または5セッション(s=5)使われないツールを外す。toolprune restore で戻す |
| Loop guard(既定オン) | 判定の確信度0.7以上(c=0.7)で誘導。誘導は1ターン1回まで(r=1) |
各値は config set で変更できる。[1]
04 / 結果
5組合せすべてで安くなった。Opus 4.8だけ「1回で解けた割合」が低下 著者測定
SWE-Bench 277タスク・6リポジトリ。各リポジトリは学習ゼロから開始。[1][2]
エージェント+モデル平均コスト削減1回で解けた割合
Claude CodeOpus 4.8▼ ここだけ「1回で解けた割合」が低下
−1.0
「1回で解けた割合」の変化はポイント差。コストはキャッシュ価格で請求ベースに算定し、プラグイン自身のモデル呼び出しを含む。リポジトリ別の内訳はプロジェクトページへ。[1][3]
30通り
6リポジトリ×5組合せの30通りすべてで安く(それぞれ5〜40%減)
277 タスク
SWE-Bench・6リポジトリ・5組合せ
6〜20%
セキュリティ監査系2種。全タスクが新規リポジトリ
読み方:「安くなった」と「同じだけ解けた」は別の指標。いちばん安くなった Opus 4.8 で、成功率だけが下がっている。
05 / 対応範囲
動作を確かめたバージョンが狭い
検証済みは下の範囲だけ。新しい版は未検証。ツールを外せる単位もエージェントで違う。[1]
Claude Code2.1.300〜2.1.310
単体ツール単位
Codex0.153.1〜0.164.0
機能パッケージ単位
Copilot CLI1.0.83〜1.0.102
MCPサーバー単位
opencode実験的(1.19.5/2.2.0)
ツール除外なし
Python 3.10+ が PATH 上に必要手持ちのプラン/ログインで動作プラグインは認証情報を扱わない一部が失敗してもセッションは継続
06 / チームで使う前に
✅ チームで導入する前に確かめる3点
個人の便利ツールとしてではなく、組織の品質基準で採否を決めるための3点。
1
自社リポジトリで、コストと「1回で解けた割合」を両方測る安くなっても成功率が落ちれば損。Opus 4.8の結果がその実例。
2
~/.tokeneconomizer に溜まるログの扱いを決める学習データは各人のマシンに残る。社内規程(保存・持ち出し・削除)に照らして確認する。
3
数字は著者自身の測定。第三者の再現はまだ「30通りすべてで安く」の強さと「測ったのは著者」の留保は、セットで読む。
1つのリポジトリで試す3ステップ 記事の提案・公式手順ではない
既定の2つだけ入れる使い慣れた1リポジトリで、Tool pruning と Loop guard のみ。外れて困るツールを先にメモ。
1〜2週間、2指標を記録status でコストを見つつ、タスクの成否も同じ表に。ターミナルからのコマンド実行は無料。
[1]
Micro-skills を後から足す提示される事実を microskills で確認。悪化したら仕組み単位でオフに。
SOURCES & NOTES
出典と、確認した範囲
- TokenEconomizer 公式リポジトリ(README):仕組み3点、既定値、対応版、ベンチマーク結果、ローカル保存、可逆性。https://github.com/microsoft/TokenEconomizer
- 「TokenEconomizer: Experience-Driven Black-Box Cost Control for Coding Agents」arXiv:2610.22732(2026年10月16日 JST 公開)。https://arxiv.org/abs/2610.22732
- TokenEconomizer プロジェクトページ:リポジトリ別の内訳チャートと注釈付き実行例。https://tokeneconomizer.github.io