JetBrains、AI エージェントへの「洞窟人」話法がトークン削減に寄与するか検証
本文の状態
日本語全文を表示中
詳細モードで約9分の本文を読めます。
同じ出来事の情報源
この情報源を基点に整理
JetBrains AI Blog
JetBrains は Claude Code の「Caveman」スキルを厳密にテストし、広告の65%削減が誤りであることを示し、実測値は8.5%に留まりコード生成品質への悪影響も確認されなかったと発表した。
AI深層分析を開く2026年8月4日 17:22
AI深層分析
キーポイント
トークン削減効果の実測値と広告の乖離
JetBrains の厳密なA/Bテストにより、Cavemanスキルの実効的なトークン削減率は65%ではなく8.5%であることが判明した。
アジェント出力における圧縮の限界
コード、差分、ツール呼び出しが主となるアジェント作業では、説明文のみが圧縮対象となり削減率に上限が生じる。
強制使用による最上値の提示
テストはユーザーが任意で発動するのではなく強制的に有効化された状態で行われたため、実際の利用ではさらに低い削減率になる可能性が高い。
出力品質への影響なし
トークン数を圧縮してもタスクの解決率やコードの正確性に悪影響を及ぼす証拠は見つからなかった。
品質への影響は統計的に有意ではない
82件のタスクで比較した結果、Cavemanスタイルでも品質に悪影響はなく、差は統計的に無視できる範囲である。
重要な引用
Advertised saving: 65%. Measured saving: 8.5%.
Caveman correctly leaves all of it verbatim.
In normal use, where the agent must decide to activate it on its own, the realized saving can only be equal or lower than the roughly 10% ceiling measured here.
The question we actually cared about: does making the agent terse make it worse? Across 82 paired tasks in the full run, the answer is no: the arms are statistically indistinguishable.
編集コメントを表示
編集コメント
この調査は、AIツールのベンチマークにおいて「広告の数値」と「実環境での性能」の乖離を浮き彫りにした重要な事例である。開発者はツール選定時に、メーカーが提示する最大限のシナリオではなく、実際のユースケースに近い条件下での検証結果を重視すべきだ。
Source Article
元記事を日本語で読む
本文に関係しない購読案内、埋め込み通知、サイト内プロモーションは除いています。
Claude Code におけるトークン圧縮スキル「Caveman」のペア A/B ベンチマークを SkillsBench で実施しました。実際にトークンを節約できるのか、そして AI エージェントの出力品質が低下しないかが検証対象です。
広告では 65% の削減と謳われていますが、測定された結果はわずか 8.5% でした。
これは強制的にスキルを有効化した場合の実用的なタスクにおける出力トークンの削減量であり、上限値を示すものであり、通常ケースの結果ではありません。
なぜこの検証を行ったのか
JetBrains ではコーディングエージェントを取り巻くツールの適切なテストにより注力しており、その中で「Caveman」というスキルが目を引きました。その売り文句は、同スキルの独自の言い回しで最もよく説明されています。
「Caveman スキルは、エージェントに原始人のように話させるものです。なぜ多くのトークンを使うのか、少数で十分なのに。フィラー(間投詞)を排除します。コードやコマンドはバイト単位で正確に残ります。出力トークンを 65% 削減できます。すべての返信で。永遠に。30 以上のエージェントと動作します。GitHub のスター数も多数。」
私たちはこう考えました。
主張は簡単に作れますが、検証にはコストがかかります。エージェントはチャットウィンドウではありません。エージェントの出力は主にツール呼び出し、ファイル編集、コードです。このスキルの約束はそれらに触れません。そこで、README では測定されていない 2 つのことを測ることにしました。すなわち、多段階のエージェント作業における実際の削減量と、思考プロセスを圧縮することがタスクの結果に悪影響を与えるかどうかです。
検証環境
HarnessHarbor 0.17: Docker でサンドボックス化された試行、タスクレベルの検証器、ペア実行。
エージェント:Claude Code 2.1.200(ヘッドレスモード、bypassPermissions)
モデル:claude-sonnet-5(推論エフォート低設定 --effort low)
ベンチマーク:SkillsBench (benchflow/skillsbench)。87 タスクのうち 86 を実施。各タスクは独自のテストによって自動採点され、0 から 1 のスケールで評価されます(1 は解決済み、部分的な正解も可能)。
Arm Ano-skill:標準の Claude Code
Arm B with skill forced: Caveman を Harbor からインストールし、スキルを付与。さらに 1 行の指示で強制的に有効化します:「Caveman モードを使用せよ…」
ペアリングされたタスクでは、同じモデル、同じ設定、各アームあたりの同じ予算を使用しました。両方のアームから除外されたタスクも除外しています。
実行は 3 回で、請求対象の試行は約 240 回、総費用は約 106 ドルです。
なぜ「強制」が重要なのか:Caveman はユーザーが手動で有効化するスキルです。「caveman mode」や「be brief」といったフレーズを検知してトリガーされます。しかし今回の実験では、すべての回答で強制的に有効化しました。つまり、以下の数値はすべてこのスキルの最良ケースを示しています。通常の運用ではエージェント自身がトリガーを判断するため、実現される節約効果はここで測定した約 10% の上限と同じか、それ以下になります。
発見 1:節約率は 65% ではなく、約 8.5%
宣伝されている節約効果はチャット形式の文章回答によるものです。しかしエージェントの出力は異なります。トークンストリームの大部分を占めるのはコード、差分(diffs)、ツール呼び出し、正確なエラー文字列であり、Caveman はこれらをすべて原文のまま保持します。圧縮されるのはツール呼び出し間の説明文のみで、その量はあまり多くありません。
出力トークンの節約率(ベースライン比較)
smoke: 10 タスク, k=1
re-run: 10 タスク, k=3
full: 86 タスク, k=1
-29.5%
-6.7%
-8.5%
小サンプルのノイズ
ヘッドライン結果、82 のクリーンなペア
宣伝値 -65%
強制 Caveman アームにおける出力トークンの節約率を 3 つの実行で示しました。最初の小規模実行で見られた目立つ -29.5% は再現されず、スケールを拡大すると節約率は -8.5% に収束します(82 のペア化されたタスクで、出力トークンは 592k から 542k に減少)。宣伝されている -65% という数字は現実からかけ離れています。
結果2:品質の低下は検出されなかった
私たちが本当に気にしていたのは、エージェントへの指示を簡潔にすることによって性能が落ちるかどうかでした。全体の実行で82組のペアタスクを評価したところ、その答えは「いいえ」でした。両方の条件(アーム)間で統計的に有意な差は見られませんでした。
タスクごとの対比結果
- 10: スキル付与側がスコアが高い
- 64: 両者同点
- 8: スキル付与側がスコアが低い
※「identical score in both arms」は両者のスコアが同一(同点)を意味します。
全体の実行におけるタスクごとの対比結果について、18組の非同点データに対して符号検定を行ったところ p = 0.82 となり、統計的に有意な差があるとは言い難い結果でした。平均タスクスコアは、ベースラインが 0.326、スキル付与側(skill arm)が 0.311 で、0 から 1 のスケール上で -0.015 の差しかありませんでした。
実行ごとの平均タスクスコア
- no-skill: 0.38, 0.25, 0.45, 0.39, 0.33, 0.31
- with-skill-forced: 0.38, 0.25, 0.45, 0.39, 0.33, 0.31
※グラフの注釈:smoke: k=1(1件のタスク)、10 tasks: k=3(3件のタスク)、86 tasks: k=1(1件のタスク)。
両アームにおける平均タスクスコアの推移です。初期に見られた懸念されるほどの差は、サンプルサイズが増えるにつれて縮小しています。これは実効的な効果というよりはノイズのパターンであり、個々のタスクでは繰り返し実行するたびに、両方の条件で合格と不合格が頻繁に切り替わっています。
スタイル転送自体は設計通りに機能しています:強制されたアームのトランスクリプトは明らかに「洞窟人」風の表現になっていますが、コード関連のアートファクト(生成物)はそのまま正常な状態を保たれています。
結果3:コスト削減効果は実在するが脆い
コスト計算では約 8.5% のトークン削減が確認されたため、スキル適用版は概ね 10% 安くなるはずでした。実際、タスク単体で見ればその通りです。しかし、フルランの生データを集計すると、スキル版の方が 11.6% 高価になっていました(40.60 ドル対 36.39 ドル)。この逆転はたった一つの試行によるものです。依存関係監査タスクが、スキル版では 20 万トークンを超える長文コンテキストの価格帯に突入し、8.29 ドルの請求が発生しました(一方、ベースライン版では 0.33 ドル)。以前の実験でも、同じタスクでベースライン版に 3.25 ドルの外れ値が出たことがありますが、これはスキルのせいではなく、タスク自体の性質です。
結果
安全であり、スタイルについては正直に評価し、削減効果についてはやや過大評価されています。強制的に「 caveman(洞窟人)」モードを適用しても、エージェントの出力品質に悪影響はありません。82 ペアで比較した結果、符号検定 p = 0.82 で有意差は見られませんでした。
しかし、実際のエージェント作業においては、最大でも出力トークンが約 8.5%、コストが約 10% 削減される程度です。これは、エージェントセッションの大半を占めるコードやツール呼び出しは、あえてスキルの対象から外しているためです。広告で謳われている 65% の削減効果は、チャット形式の Q&A には当てはまりますが、コーディングを行うエージェントには適用できません。
レコメンデーション
気に入れば使ってください。面白く、品質面で実測可能な悪影響もありません。ただし、日常のエージェント作業で劇的なコスト削減を期待するのは禁物です。現実的な上限は、一桁後半のパーセンテージ程度です。
- 品質: 検出可能な劣化なし(8 タスクが改善、10 が低下、64 が同等)。0〜1 のスケールで平均スコア差は 0.015(p = 0.82)。
- トークン数: 強制適用時は出力トークンが -8.5%。これが上限値です。自動トリガーによる利用では、削減幅はこれより小さく、あるいはゼロの場合もあります。
コストは期待値で約 -10% ですが、単一の試行におけるばらつきによってすぐに相殺されてしまいます。
方法論に関する補足:最初の 10 タスクのランでは「トークン削減が 30%」と見えたものの、サンプルサイズが大きくなるにつれてその効果は消滅しました。k=1 の評価結果を安易に信じてはいけません。
次にテストしてほしいスキルがあれば、コメント欄で名前を教えてください。短い言葉でも構いません。私たちが検証します。
実行の詳細:Harbor 0.17、claude-sonnet-5(推論努力レベル:低)、SkillsBench の 86/87 タスク、約 240 回の試行、総費用は約 106 ドル。
原文を表示
A paired A/B benchmark of the token-compression skill Caveman on Claude Code, run on SkillsBench: does it actually save tokens, and does it degrade AI agent output quality?
Advertised saving: 65%. Measured saving: 8.5%.
Output-token saving on real agentic tasks, with the skill forcibly activated. This is the ceiling, not the usual-case result.
Why we ran this
We at JetBrains are investing more and more into proper testing of the tooling around coding agents, and one skill got our attention: “Caveman”. Its pitch is best described in its own dialect:
Skill make agent talk like caveman. Why use many token when few do trick. Filler die. Code, commands stay byte-exact. 65% output token saved. Every reply. Forever. Work with 30+ agents. Many GitHub star.
We think:
Claim cheap to make. Verify expensive. Agent not chat window. Agent output mostly tool call, file edit, code: skill promise not touch those. So we measure two things README not measure: real saving on multi-step agent work, and whether squeezing agent think-out-loud hurt task outcome.
Setup
HarnessHarbor 0.17: Docker-sandboxed trials, task-level verifiers, paired runs.
AgentClaude Code 2.1.200, headless, bypassPermissions.
Modelclaude-sonnet-5, reasoning effort low (--effort low).
BenchmarkSkillsBench (benchflow/skillsbench): 86 of 87 tasks. Each task is auto-graded by its own tests on a 0-1 scale, where 1 means solved and partial credit is possible.
Arm Ano-skill: stock Claude Code.
Arm Bwith-skill-forced: Caveman installed via Harbor --skill plus one instruction line forcing activation: “Use caveman mode…”
PairingSame tasks, same model, same settings, same budget per arm; excluded tasks excluded from both arms.
Volume3 runs, about 240 billed trials, about USD 106 total.
Why “forced” matters: Caveman is user-activated. It triggers on phrases like “caveman mode” or “be brief”. We forced it on in every reply, which means every number below is the skill’s best case. In normal use, where the agent must decide to activate it on its own, the realized saving can only be equal or lower than the roughly 10% ceiling measured here.
Finding 1: the saving is about 8.5%, not 65%
Advertised savings come from chat-style prose answers. Agentic output is different: code, diffs, tool invocations, and exact error strings dominate the token stream, and Caveman correctly leaves all of it verbatim. Only the narration between tool calls gets compressed, and there is not much of it.
Output-token saving vs. baseline
smoke: 10 tasks, k=1
re-run: 10 tasks, k=3
full: 86 tasks, k=1
-29.5%
-6.7%
-8.5%
small-sample noise
headline result, 82 clean pairs
advertised -65%
Output-token saving of the forced-Caveman arm across the three runs. The eye-catching -29.5% from the first small run did not replicate; at scale the saving converges to -8.5% (592k to 542k output tokens over 82 paired tasks). The advertised -65% is off-chart.
Finding 2: no detectable quality degradation
The question we actually cared about: does making the agent terse make it worse? Across 82 paired tasks in the full run, the answer is no: the arms are statistically indistinguishable.
Per-task paired outcomes
8
64 tied
10
skill scored higher
identical score in both arms
skill scored lower
Per-task paired outcomes, full run. Sign test over the 18 non-ties: p = 0.82, far from any significant difference. Average task score was 0.326 for baseline vs. 0.311 for the skill arm, a -0.015 gap on a 0-1 scale.
Average task score per run
no-skill
with-skill-forced
0.5
0.25
0
0.38
0.25
0.45
0.39
0.33
0.31
smoke: k=1
10 tasks: k=3
86 tasks: k=1
looked like a regression
gap shrinks
statistically flat
Average task score per arm. The scary early gap shrinks as sample size grows: the pattern of noise, not of a real effect. Individual tasks flip freely between passing and failing on repeat attempts in both arms.
Style transfer itself works exactly as designed: forced-arm transcripts are unmistakably caveman, while code artifacts stay untouched and normal.
Finding 3: the cost saving is real but fragile
Cost tracks the roughly 8.5% token saving, so the skill arm should come out roughly 10% cheaper, and per task, it does. But the raw arm totals in our full run showed the skill arm 11.6% more expensive: USD 40.60 vs. USD 36.39. The entire inversion came from a single trial: one dependency-audit task ballooned past the 200k long-context pricing tier in the skill arm and billed USD 8.29 vs. USD 0.33. In an earlier run the same task threw a USD 3.25 outlier in the baseline arm. It is a property of the task, not the skill.
Outcome
Safe, honest about style, oversold on savings. Forced on, Caveman reliably changes how the agent talks without any measurable damage to what the agent produces: 82 paired tasks, sign test p = 0.82. But on real agentic work it trims about 8.5% of output tokens and about 10% of cost at absolute best, because the tokens that dominate agent sessions are code and tool calls, which the skill deliberately preserves. The advertised 65% belongs to chat-style Q&A, not to coding agents.
Recommendation: use it if you like it. It is fun, and it costs you nothing measurable in quality. Just do not expect huge savings on daily agentic tasks: a high-single-digit percentage is the realistic ceiling.
Quality: no detectable degradation: 8 tasks better, 10 worse, 64 tied; average task score differs by 0.015 on a 0-1 scale (p = 0.82).
Tokens: -8.5% output tokens with activation forced, meaning this is the ceiling; auto-triggered usage saves less or nothing.
Cost: roughly -10% in expectation, routinely erased by single-trial variance.
Methodology bonus: our first 10-task run “showed” a -30% token saving. It dissolved as sample size grew. Never trust a k=1 eval.
You want next skill tested? Drop name in comments. Few word enough. We test.
Run details: Harbor 0.17; claude-sonnet-5 with reasoning effort low; SkillsBench 86/87 tasks; about 240 trials; about USD 106 total spend.
News to Guide
ニュースの次に確認する
発表内容を、現在の料金や仕様と照らし合わせられる関連ガイドです。
今日のまとめ
AIデイリーブリーフで今日の重要ニュースをまとめ読み