Claude Codeの画面の右下には、コンテキストの使用量が元から出ています。僕は、その数字を見に行ったことがほとんどありませんでした。見に行くのが面倒だったからです。
そこで、見に行かなくても目に入る場所へ、自分で表示を足してみました。使ったのは、Claude Codeの画面と動きを作り変えられる「mods」という仕組みです。
いちばん効いたのは、画面が便利になったことではありません。自分の使い方の「重さ」が、初めて数字で見えたことでした。

modsは、Claude Codeの中で動くJavaScript/TypeScriptのプラグインです。ツールを実行した、メッセージを送った、画面を描こうとした。そうした出来事が起きた瞬間に呼ばれて、「見る」「書き換える」「代わりに答える」のどれかをします。
画面を自由に作り直せるわけではありません。あらかじめ決まった場所に表示を足すか、すでにある行を描き直す仕組みです。
足せるのは、右側のペイン、入力欄の上の帯、入力欄の下のステータス行、右上の通知など。描き直せるのは、作業中のスピナー、ツールの行、メッセージなどです。逆に、入力欄そのものと権限確認のダイアログは対象外で、左のサイドバーも描ける場所の一覧には入っていません。
描画が出るのは、ターミナルと、デスクトップアプリのCodeタブです。僕が使ったのは後者でした。
▶︎ あわせて読みたい:モデルより「ハーネス」。Claude Codeを包む外側の設計が、主戦場になる理由
最初に手を付けたのは、入力欄の上の帯です。標準の表示は「Thinking…」程度で、Claudeが何をしているのかは分かりません。
作った表示では、作業中に「▶ いま:SQL:select … 表名」のような1行が出ます。何を相手に何をしているかが、ひと目で分かります。
その下に、Claudeの直前のひとことも出します。たとえば「次にRLSポリシーを確認します。」。何をしているかだけでなく、なぜそれをしているかまで追えます。
作業が終わると、帯は「▶ Claudeから:」に変わり、最後の回答の最後の1文が出ます。その下には、PROGRESS.mdに書いた「次の一手」。別の作業から戻ってきたとき、何をしていたかをすぐ思い出せます。

帯には、情報を詰め込みすぎないことにしました。多い帯は、そのうち読まなくなるからです。そこで帯は「いま」と「次の一手」の2つだけに絞り、数字は右のペインへ寄せました。
ひとつだけ注意があります。SQLやコマンドの中身がそのまま画面に出るので、画面共有をするときは気をつけてください。

数字の置き場所に選んだのが、右側のペインです。常時出しているのは、次の4つです。
1つ目は、コンテキストの積み上げ棒です。会話、ツールの説明、指示ファイル、スキル一覧のうち、どれがどれだけ場所を取っているかが分かります。
2つ目は、1回のやり取りで増えた量です。送信の前後で合計を比べて実測し、増えた中身は文字数から見積もって並べます。
3つ目は、毎回送られている定義のうち、重いものです。どのコネクタのツール説明か、どの指示ファイルか、が名前つきで並びます。
4つ目が、「こう使うと軽くなる」という助言です。数字を並べるだけでは、見て終わってしまいます。「行の範囲を指定して読む」「SQLは列とlimitを絞る」「大きな調査はサブエージェントへ出す」。役に立ったのは、数字よりこちらでした。

測ってみて分かったことがあります。Gmailでメールを1通送っただけで、コンテキストが約9千増えたのです。中身から説明できたのは約2千だけで、残りの大半はGmailのツール説明の読み込みでした。コネクタのツールは、普段は名前だけが送られ、使う瞬間に詳しい説明が読み込まれる仕組みだからです。
コンテキストを可視化する発想は、公式にもあります。公式のサンプルには、コンテキストの残りを予報のように入力欄の上へ描くmodが入っています。

右のペインで、いちばん目を引いたのは「毎回送られている定義」でした。全体の指示ファイル、つまりCLAUDE.mdとrulesフォルダのファイルが、約2.2万トークン(文字数からの見積もりです)も占めていたのです。
この指示ファイルは、どのプロジェクトでも、毎回の送信に含まれます。この30日だけで約2千件のセッション記録がありますから、そのすべてに乗っていたことになります。
内訳を開くと、もっと具体的に分かりました。いちばん重い1枚は約5千。LPにAIチャットを載せるときのセキュリティの決まりでした。
困ったのは、この決まりを「設計のときだけ読む」とCLAUDE.mdに書いていたことです。ところが置き場所がrulesフォルダだったので、設計と関係のない作業でも、毎回読み込まれていました。読む場面を決めたつもりで、置き場所が毎回読ませていたわけです。
ほかにも、実態と違う古いルールが見つかりました。書かれているフックがそもそも存在しないもの、サブエージェントの権限モードを指定しても無視されると説明したもの。こうしたものまで、毎回送っていました。

見えたので、直せました。やったことは次の4つです。
1つ目は、設計のときだけ読むものを、自動では読み込まれない別のフォルダへ移したことです。CLAUDE.mdの冒頭には「必要なときに読むファイル」の一覧を置き、その作業に入る前にだけ読む形にしました。
2つ目は、実態と違うルールの廃止です。書かれたフックがない、設定が無視される、アプリが同じ一覧を示している。この3種類を消しました。
3つ目は、重なっていたルールの統合です。英語で書かれた汎用のテンプレート5枚を、要点だけの1枚にまとめました。
4つ目は、残すものを決めたことです。口調と言語、危険な操作の前の確認、過去の失敗から足した注意は、そのまま残しました。
結果、全体の指示ファイルは約2.2万から約5千になりました。整理前の全文は別のフォルダに残してあるので、必要になれば戻せます。
数字は、どちらも文字数からの見積もりです。新しいセッションで実測して確かめるのは、これからです。

mods自体は、全部で5つ作りました。この記事で紹介したのは、特に効いた帯とペインの2か所です。危険なコマンドを実行前に止めるmodも作りましたが、自分の使い方には合わず、外しました。
ひとつだけ、安全の話を。modは、あなたと同じ権限でそのまま動きます。サンドボックスの中ではなく、ファイルの読み書きも通信もできます。他の人が作ったmodを入れるときは、先に「claude plugin validate」で中身の一覧を確認するのが安全です。
modsを作らなくても、試せることがあります。「/context」を開けば、コンテキストの内訳を、分類別に一度だけ見られます。指示ファイルとツールの説明が、どれだけ場所を取っているか。そこを見るだけで、直したくなる箇所が見つかるかもしれません。
僕がやったことは、右下の数字を「見に行く」ものから、「目に入る」ものに変えただけでした。それだけで、指示ファイルの置き方まで変わりました。見えるようにすることが、使い方を変える一番の近道でした。
「/context」を実行すると、コンテキストの内訳を分類別に見られます。読み込まれたCLAUDE.mdも分かります。常に目に入る場所へ出したいときは、modsで右のペインに表示する方法があります。
まず、特定の作業のときだけ必要なルールを、自動では読み込まれない別のフォルダへ移します。あわせて、実態と違う古いルールの廃止と、重なっているルールの統合を行います。今回の例では、この3つで約2.2万トークンから約5千トークンまで減らしました。
modは、あなたと同じ権限でそのまま動きます。他の人が作ったmodを入れる前に、「claude plugin validate」で、反応する出来事と呼び出す処理の一覧を確認しておくと安全です。
Claude Codeを、自分の仕事に合わせて作り変えるところまで。AIを徹底的に使いこなすためだけのコミュニティ「フロンティア・リーダーズ」:https://frontier-leaders.vercel.app/
2時間で、AI活用術を実践のハンズオンで学べます(過去回のアーカイブ):https://handson.workstyle-evolution.co.jp/
YouTube『いけともch』:https://www.youtube.com/@iketomo-ch