0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude Code のスキルを47本運用して測った、7つのこと

0
Last updated at Posted at 2026-09-14

Claude Code のスキルは、入れるだけなら1分で終わります。公開されているものも数多くあります。

そうなると、やることは決まっています。片っ端から入れるのです。

自作47本を運用しながら1ヶ月ほど測った結果、増やすほど呼ばれなくなることが分かりました。
重くなるからではありません。入れたスキルの説明が、黙って消えるからです。

この記事は、これまで公開した検証記事6本を1つの流れにまとめ直し、
今週(2026-09-11)出た公式の評価コマンドを7つ目として足したものです。

1. 増やしても重くならない          80本足して +185トークン
2. 超えたぶんは説明が消える        自分の2本が 388字→0、350字→0
3. どれが消えるかは毎回変わる      同じ環境で実行ごとに違った
4. 効くスキルは確かに効く          出力 −43%(9回中9回)。ただし情報も減る
5. 指示書型と実装型は別もの        起動時トークンで約28倍の差
6. 制限モードでは全部消える        ツール42→23、スキル47本→0本
7. 公式の評価コマンドが出た        ただし「量」は測れない

検証環境: Windows 10 / Claude Code 2.1.247〜2.1.270 / 測定は 2026-08-19〜09-14


1. 増やしても、重くはならない

最初に、いちばん心配される点から確かめました。スキルを増やすとコンテキストを圧迫するのか。

自作47本の環境に、80本足して127本にしました。

スキル本数 入力トークン
47本 82,179
127本 82,364

増えたのは185トークン。 80本足して、この差です。

理由は、スキル一覧に文字数の予算があるからです。予算の範囲で各スキルの説明文を載せ、
超えたぶんは載せません。だから本数を増やしても、一覧の大きさはほとんど変わりません。

予算は設定で動かせます。skillListingBudgetFraction を上げて 100,000 まで広げたところ、
1,285トークン分の説明が戻ってきました。

/skill-doctor の予告とは、ずれます

/skill-doctor は「未使用19本が毎ターン載っている」と教えてくれます。
言われたとおり消すと、3,710トークン減りました。 ただし予告は約2,160でした。

予告と実測が1.7倍ずれます。 消す判断の材料にはなりますが、数字は自分で測り直すほうが安全です。

なお1本消してもプロンプトキャッシュは飛びませんでした。 ここは気にしなくてよさそうです。

→ 詳細: Claude Code にスキルを80本足しても、増えたトークンは185だった


2. 超えたぶんは、説明が消える

ここからが本題です。予算を超えると何が起きるのか。

GitHub でトレンド入りしていたスキル集37本(mattpocock/skills、255,313スター)を、
自作47本に足しました。

入力トークン
自作47本 82,255
+ スキル集37本(計84本) 81,971

284トークン減りました。 足したのに減っています。

減った先を追うと、元から入れていた自作スキル2本の説明が、388文字→0、350文字→0
なっていました。

説明の文字数 呼び出し回数
よく使う2本 1文字も減らない 42回 / 25回
消えた2本 388→0 / 350→0 0回

削られるのは、呼び出し回数が少ないものからでした。

入れたばかりのスキルは当然0回なので、真っ先に落ちます。
「新しく入れたスキルが呼ばれない」と感じるとき、説明が載っていない可能性があります。

エラーは出ません

一番厄介なのはここです。説明が消えても、名前は必ず残ります。

スキル一覧を見ても、47本すべての名前が並んでいます。画面上は正常です。
警告もログも出ません。

「入れたのに使われない」は、設定ミスではなく予算切れかもしれません。

予算いっぱいでなければ、普通に増えます

私の環境は、入れる前から予算いっぱいでした。 手持ちが少なければ、
足したぶんは普通にトークンが増えるはずです。予算に余裕がある環境では測っていないので、
そこは確かめていません。

→ 詳細: GitHubトレンドのスキル集を入れたら、自分のスキル2本の説明が消えた


3. どれが消えるかは、実行ごとに変わります

2の実験を4回繰り返して、もう1つ分かったことがあります。

同じ環境・同じスキル構成でも、削られる対象が回ごとに違いました。

ある回   decompose の説明 240文字(そのまま残った)
別の回   decompose の説明  58文字(削られた)

「このスキルは安全」と固定的に考えられません。

呼び出し回数が多いものは4回とも無傷でしたが、回数が中位のものは回ごとに揺れます。

運用として引き出せる結論は1つです。

本当に呼んでほしいスキルは、呼び出し実績を作っておく。 入れただけで放置すると、
別のスキルを足したときに真っ先に落ちます。


4. 効くスキルは確かに効く。ただし情報も減る

「増やすな」という話ばかりしてきましたが、効くものは効きます。

Hacker News で269ポイントを集めた ayghri/i-have-adhd(30,233スター、MIT、SKILL.md 1枚)を測りました。
エージェントの回答から前置きを取り、行動を先頭に置かせるスキルです。

同じ質問3問を、スキルあり・なしで各3回投げた結果です。

対照 スキルあり
Q1 git 643字 348字 −46%
Q2 CSV 2,163字 1,593字 −26%
Q3 Docker 2,847字 1,256字 −56%
平均 1,884字 1,066字 −43%

9回中9回、スキルありのほうが短くなりました。 範囲も重なりません。

Q1  対照 620, 643, 744    スキル 238, 348, 350
Q2  対照 2119, 2163, 2367 スキル 1488, 1593, 1715
Q3  対照 2361, 2847, 2860 スキル 1178, 1256, 1617

ただし情報も減っています

各回答に技術キーワードがいくつ出るかを数えました。

対照 スキルあり
Q1 4.3個 3.0個 −30%
Q2 6.0個 5.0個 −17%
Q3 9.0個 8.3個 −8%

「短くなったのに情報は同じ」ではありません。

ただし文字数のほうが大きく減るので、密度は上がります。Q3 では1,000字あたり 3.2個 → 6.6個

そして中身が入れ替わります。 Q1 では「-m はトレーラーを消す」という注意が増え、
代わりに git commit --amend --only が消えました。単に削られたのではありません。

→ 詳細: 3万スターの Claude Code スキルを入れたら、出力が43%短くなった


5. 指示書だけのスキルと、実装を持ち込むスキルは別もの

何を入れるかを決めるとき、中身の型でコストがまったく違います。

スター60,480の Agent Skill を入れて、自作の同種スキルと比べました。

自作 導入したもの
実装 SKILL.md 1本 Python 308ファイル / 32MB
常時のトークン 約103
起動時のトークン 3,225 約90,000(約28倍)
標準的な Windows 動く 動かない(Python 3.12+ が必須、手元は 3.11.9)

約28倍の差がありました。しかも手元では動きませんでした。

入れる前にコストは見えます

claude plugin details <プラグイン名>

常時いくつ・起動時いくつのトークンを使うかが、導入前に表示されます。
後者かどうかは、これで分かります。

なお uninstall しても、キャッシュ32MBは残りました。

環境確認の落とし穴

「Python 3.12+ が必須」を見て、自分は要件を満たしていると誤認しました。
別の場所に入れた Python を見ていたからです。

「入っているか」ではなく「そのツールから見えるか」を確認する。 ここは自分のミスでした。

→ 詳細: スター6万のAgent Skillを入れたら、呼ぶたびに9万トークン必要だった


6. 制限モードでは、スキルが全部消えます

2.1.248 で --restrictedCLAUDE_CODE_RESTRICTED=1 でも同じ)が入りました。

通常 --restricted
ツール 42 23(45%減)
自作スキル 47本 0本

消えるのは Bash / PowerShell / WebFetch だけではありません。
公式の説明にない Workflow / Monitor / LSP と MCP ツール8個も消えます。

一方 Write / Edit / Agent / WebSearch残ります。 読み取り専用モードではありません。

~/.claude/ 配下が丸ごと対象になります。 ユーザー設定を読まないモードなので
そうなっていると思われますが、公式にその理由までは書かれていません。
Skill ツール自体は残りますが、呼ぶ先がありません。

--tools で名前を挙げれば戻ります。default プリセットでは戻りません(公式の記述どおり)。

スキルを積んでいる人ほど、このモードでは何も残りません。
それが目的のモードなので正しい挙動ですが、「安全になる」より先に「手元の資産が全部消える」
と理解しておくほうが、事故が少ないと思います。

→ 詳細: Claude Code に制限モードが入った。自作スキル47本が0本になった


7. スキルの採点ツールは、構造しか見ていません

スキルの良し悪しを自動で採点するツールがあります。9次元のルーブリックで点を付けます。

測っているのは構造です。手順が明確か、具体的か、失敗時の分岐があるか、
チェックポイントがあるか。

書いてある内容が事実として正しいかは、どの次元にも入っていません。

しかも具体的に書かれた誤りほど、「具体性」の次元で高得点になります。
規格の条番号を間違えて書いたスキルが、間違えたまま点数を上げました。

点数とは別に「おかしいところはないか」と聞く

同じモデルに、ルーブリックを使わず**「問題があれば指摘して」**と頼むと、矛盾に気づきます。
点数には出ません。

ただしその指摘も鵜呑みにはできません。 2つのモデルが一致して指摘した項目のうち、
1件は誤りでした。

→ 詳細: スキルの採点ツールは、書いてある内容が正しいかを見ていない


8. 公式の評価コマンドが出ました。ただし「量」は測れません

ここだけ今週の話です。2.1.269(2026-09-11)に claude plugin eval が入りました。

プラグインを評価ケースに掛けて点数を出す公式コマンドです。実験設計が丁寧です。

One run of a non-deterministic agent tells you little, so each case runs three times by default.

Each case runs three times with your plugin and three times without it, so one case is six runs.

1ケース6ラン。 そして WITHW/OUT の差 Δ がプラグインの寄与です。
高得点でも Δ が0なら、そのスキルは効いていません。

ケースと grader は claude plugin eval init が自動で書いてくれます。

grader は6種類。すべて pass/fail です

種類 何を見るか 課金
regex 返答やファイルに正規表現が一致するか 無料
tool_used そのツールが呼ばれた回数が範囲内か 無料
tool_order 2つのツールの呼び出し順 無料
file_exists 生成されたファイルがあるか 無料
llm 判定モデルが基準に照らして合否を出す 課金
baseline 参照トランスクリプトと比べて同等以上か 課金

そして公式ドキュメントにこう書かれています。

There are no custom-code graders.

自作の検査を挟めません。

だから、この記事の数字は eval では出せません

ここまでに出した数字を思い出してください。

185トークン増えた        284トークン減った
説明が 388字 → 0        出力が 1,884字 → 1,066字(−43%)
ツールが 42 → 23        起動時トークンが 3,225 → 90,000

全部「量」です。 6種の grader はすべて合否で、量を返しません。
数を扱えるのは regexmatch: "count:N"ちょうどN回)と
tool_usedmin / max範囲内か)だけで、どちらも合否に潰れます。

claude plugin eval で言えるのは「短いと判定されたか」まで。
「43%短くなった」は出せません。

集約も違います。公式は the case's score is the mean across its runs平均)。
自分はずっと中央値で見てきました。外れ値を1回引くと、平均は動きます。

使い分けるのが正解だと思います。

  • 挙動が安定して再現するかclaude plugin eval。CI に載る。自動化できる
  • どれだけ変わったか → 手で測る。--output-format json のトークン数を数える

運用として、結局どうするか

7つを実務の手順に落とすと、こうなります。

入れる前

  1. claude plugin details でコストを見る。 起動時9万トークンのものが混ざっている
  2. 指示書1枚か、実装を持ち込むかを確認する。後者は依存と容量とトークンを引き受けることになる
  3. 自分の環境で要件を満たすか、そのツールから確認する。 「入っているか」ではなく「見えるか」

入れたあと

  1. 一覧のトークン数を前後で比べる。 増えないなら、何かの説明が消えている
  2. 本当に呼んでほしいスキルは、呼び出し実績を作る。 0回のものから削られる
  3. /skill-doctor の予告は1.7倍ずれた。 消す前後で自分で測る

評価するとき

  1. claude plugin eval で挙動の再現性を測る。 ただし量は出ないので、必要なら手で数える
  2. 採点ツールの点数とは別に、「おかしいところはないか」と聞く

言えないこと

  • すべて自分の環境1つの測定です。スキル47本、MCP サーバーあり、Windows 10。
    素の環境より前提が多い状態で測っています
  • **予算切れの挙動は「自分が予算いっぱいだったから」**観測できました。
    手持ちが少ない環境では、しばらく起きません
  • 4の i-have-adhd3問×3回。題材を変えれば比率は変わります
  • 6の制限モードは 2.1.248 時点の測定です。その後の版では確かめていません
  • 8の claude plugin evalドキュメントを読んで --help を叩いた段階で、
    自作スキルに実際に掛けた結果はまだありません
  • 測定期間に Claude Code は 2.1.247 から 2.1.270 まで動いています。
    各項目の測定時点はリンク先の記事に書いてあります

まとめ

  • スキルは増やしても重くならない。 80本足して +185トークン。一覧には文字数の予算がある
  • 代わりに説明が黙って消える。 呼び出し回数が少ない順に落ち、名前だけが残る
  • エラーは出ない。 画面上は正常に見えるので、運用では気づけない
  • どれが消えるかは実行ごとに変わる。 「このスキルは安全」と固定的に考えられない
  • 効くスキルは効く(出力 −43%、9回中9回)。ただし情報も減る(−8〜−30%)
  • 指示書型と実装型は別もの。 起動時トークンで約28倍の差。claude plugin details で事前に見える
  • 制限モードでは47本が0本になる。 ツールも 42→23
  • 採点ツールは構造しか見ない。 具体的に書かれた誤りほど高得点になる
  • 公式の評価コマンドが出た。 1ケース6ラン、Δ が本体。ただし量は測れない

スキルは資産ですが、置いておくだけでは資産になりません。

入れた数を増やすより、呼ばれているものを絞って残すほうが効きます。


参考


JQITのエンジニアの95%以上は未経験からの採用です。
よければコーポレートサイトにも遊びに来てください。

コーポレートサイト

エンジニア採用も行っています。もしご興味あれば覗いてみてください。

採用サイト

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?