増えすぎたスキルとCLAUDE.mdは、Claude Codeの/doctorで健康診断できる

Claude Codeを数か月使っていると、スキルや設定ファイルが少しずつ積み上がっていきます。どれが実際に使われているのか、壊れていないか、体感では判断できません。/doctorコマンドを使うと、この棚卸しをまとめて実施できます。実際に自社環境で回したところ、約3か月間壊れたまま放置されていたスキルが見つかり、毎回読み込まれるコンテキストを約1,000トークン削減できました。

/doctorで何ができるか

/doctorが診断できる5項目(環境・設定・スキル棚卸し・CLAUDE.md減量・承認して適用)のマップ図解

Claude Codeには/doctorというコマンドが用意されています。名前のとおり、セットアップの健康診断をしてくれるコマンドです。環境と設定に溜まった問題を読み取り専用で調べ、修正案を提示し、承認したものだけを適用します。

診断できる範囲は広く、大きく分けると5つあります。

  • インストール・環境の健全性を確認する — インストール方式やバージョン、自動更新の状態、シェル設定に残った古いエイリアスを調べます。環境起因の不調を切り分けられます
  • 設定ファイルを検証する — settings.jsonの無効なエントリや書式エラーを検出します。「書いたのに効いていない設定」が見つかります
  • スキル・拡張機能を棚卸しする — 使われていないスキル・プラグイン・MCPサーバーの検出です。私の環境では、使用回数の実データ付きで列挙され、壊れたスキルも見つかりました
  • CLAUDE.mdの減量を提案する — AIに常時読ませる手順書ファイルCLAUDE.mdから、コードや他の資料から導出できる内容を特定して削減案を出します(v2.1.206で追加された比較的新しい機能で、対象範囲はバージョンによります)
  • 承認したものだけ適用する — 診断は読み取り専用で行い、修正はこちらが承認したものだけを適用します。勝手に書き換えられることはありません

この中でも効果が大きいのがCLAUDE.mdの減量です。公式ドキュメントのMemoryページには「CLAUDE.mdは1ファイル200行未満を目標に。長いファイルはコンテキストを消費し、指示の遵守率を下げる」と明記されています(原文は英語・筆者訳、2026-08-02確認)。

長すぎる手順書はかえってAIが指示を守らなくなる、というのが公式の説明です。書き足す一方で肥大化しがちなCLAUDE.mdを、/doctorは「この記述はコードから導出できるので削れる」という形で具体的に指摘してくれます。

実行形式は2つあります。ターミナルから打つclaude doctorはインストール状態を素早く確認する軽量版、セッション内で打つ/doctorは診断から修正の適用まで進む対話版です。この記事で扱うのは後者です。

なぜ健康診断が必要か

31本のスキルが積み上がったPCで、1本の配線が切れているのに気づけない状況の図解

Claude Codeにはスキル(定型作業の手順書をAIに渡す拡張機能)を後から追加できます。便利なので増やしていくと、標準設定ではスキルの名前と説明文が「目次」として毎回のセッションに読み込まれます。自社環境では31本のスキルで約1,844トークン相当が常時コンテキストに乗っていました。

問題は、この積み上がりを体感でしか把握できないことでした。「なんとなく重い」「入れたスキルを使えていない気がする」と思っても、根拠になる数字の出し方が分かりません。

さらに厄介なのは、壊れたスキルが何も知らせてくれないことです。参照先のファイルが消えたスキルは、エラーも警告も出さずに静かに読み込まれなくなります。明示的に調べない限り、壊れたことに気づく機会がありません。

実際に回した結果

健康診断の結果(壊れたスキル1本発見・未使用11本オフ・約1,000トークン削減・所要15分)を示す図解

自社環境(Claude Code 2.1.220・スキル31本)で実際に回しました。スキャン対象は直近の50セッション・11プロジェクト分で、所要は対話込みで約15分です。

一番の収穫は、壊れたまま放置されていたスキルの発見でした。参照先のフォルダごと消えたスキルが1本あり、累計7回使っていたのに、最終利用の5月14日を最後に約3か月間、読み込まれた記録がありませんでした。エラーが出ないため、指摘されるまで誰も気づいていません。

使用実績のデータも出ました。上位はブラウザ操作系の66回を筆頭に日常的に回っている一方で、記録上一度も使われていないスキルが8本、最終利用から2〜3か月経ったものが4本ありました。「使っていない気がする」が数字で確定した形です。

こうした候補のうち11本の無効化と、リンク切れ1本の削除、CLAUDE.md 2本の整理を承認しました。合計で、毎セッション読み込まれるコンテキストを約1,000トークン削減できています。無効化は設定に1行書くだけの可逆な方式で、必要になったらその行を消せば復活します。

意外な結果もありました。「動作が重いのはフック(コマンド実行前後に挟む自動処理)のせいでは」と疑っていたのですが、最も頻繁に動くフックの実測は100回実行で中央値25ミリ秒と、まったく問題ありませんでした。思い込みを実測で否定できるのも健康診断の効用です。

つまずきと対処

ざっくり集計の概算1.25kを別の実装で検算し、約1,000に確定させた対比図

削減効果の集計では一度失敗しています。最初にAIがawkで概算した削減値は約1.25kトークンでしたが、これは誤りでした。スキル説明文の切り出しに失敗し、本文まで数えていたためです。

Pythonで書式を正しく解析し直して、確定値の約1,000トークンを得ました。AIが出した集計値は別の実装で数え直してから使う——今回のような棚卸しでも、この検算の一手間は省かない方が安全です。

まとめ

使い込んだ環境ほど、スキルも設定も手順書も溜まっていきます。判断材料は全部ローカルに記録されているので、/doctorに読ませれば棚卸しの根拠が数字で揃います。診断自体は読み取り専用で、変更も内容を確認して承認した項目だけに適用されるため、小さく安全に試せます。

当社では半年に1回程度の定期健診として回すことにしました。「なんとなく重い」と感じているClaude Codeがあれば、まず1回診てもらう価値があります。

社内のAIツール運用の整備や活用支援については、AI導入支援サービスでご相談を承っています。気になる点があれば、お問い合わせからお気軽にご連絡ください。