Claude Code(クロードコード)のステータスライン(statusline)|プロンプト1本で使用率・effortを1行表示
Claude Codeを毎日使うようになると、「いま会話がどれくらい重くなっているか」「どのモデルが、どの深さで考えているか」が見えないまま使っている時間が長くなります。会話の途中で要約(コンパクト)が入って流れが変わったり、返答の質が落ちたりしても、理由が分からない。結論から書くと、この見えなさはステータスライン(statusline)を1行入れるだけで解消できます。設定は /statusline にプロンプトを1本渡すだけで、スクリプトを自分で書く必要はありません。みやっち🧑💻が実際に使っている1行と、講座の教材に載せているプロンプトの全文を、そのまま公開します。
Claude Codeのステータスラインとは: Claude Codeの入力窓の下に表示される、自分で自由に設定できる表示欄のことです。設定したスクリプトがセッションの情報(作業フォルダ・モデル名・コンテキストの使用量など)をJSONで受け取り、そのスクリプトが出力した文字がそのまま表示されます。パソコンの中で動く仕組みで、表示のためにAPIトークンを消費することはありません。
ステータスラインで何が見えるようになるのか
みやっち🧑💻の画面では、入力窓の下に次の1行が常に出ています。
~/Desktop/ai_crew_hp | Fable 5 | effort:xhigh | 0k/1000k tokens (0%)
左から順に、4つの項目が並んでいます。
- 作業フォルダ: どのプロジェクトのセッションか
- モデル名: いま何のモデルが動いているか
- effort: 推論の深さ。low・medium・high・xhigh・maxのどれで考えているか
- 使用量/上限: この会話にどれだけ詰め込んだか。カッコ内がコンテキストウィンドウの使用率
コンテキストウィンドウは、AIが一度に読み込める情報量の上限のことです。会話が長くなるほどここが埋まり、埋まるほど肝心の情報がノイズに埋もれて精度が落ちる——この話は「コンテキストエンジニアリングとは」(用語集はこちら)で書きました。ステータスラインは、その「埋まり具合」を数字で常時見せる窓です。上の例なら上限は1000k(100万トークン)で、まだ0%。ここが50%、70%と上がっていくのが、会話の途中で目に入るようになります。
みやっち🧑💻が実際に使っている設定は「1行4項目」
自宅のMacの設定は、~/.claude/settings.json の statusLine に bash ~/.claude/statusline.sh を指定し、statusline.sh の中でbashとjqを使い、受け取ったJSONと手元の設定からフォルダ|モデル|effort|使用量/上限(%)の4項目を組み立てて出す、というものです。使用量は「入力トークン+キャッシュ作成+キャッシュ読取」の合計、上限は context_window_size をそのまま使っています。
同じ形式の1行は、Fable 5が日本で再び使えるようになった2026年7月2日の朝の画面にも出ていました。少なくともその時点から日常運用に入っている設定です。
項目を4つに絞っているのは、「何でも出す」より、判断に使う数字だけを常に視界に置いておきたいからです。公式には、セッションのコストやgitブランチなど、もっと多くの情報を出す機能も用意されています(後述のよくある質問で触れます)。ただ、常時見える1行は短いほど目に入ります。
設定はプロンプト1本——教材で使っている /statusline プロンプトの全文
Claude Codeには /statusline というコマンドがあり、「こういう表示にしたい」と自然言語で伝えると、Claude Codeがスクリプトを ~/.claude/ に生成し、settings.json の設定まで自動で更新してくれます。公式ドキュメントが案内している設定方法の1つ目がこれで、非エンジニアはスクリプトを書くのではなく、何を表示したいかを日本語で頼めばよいわけです。
AI Crewの会員教材(Claude Codeの使い方の章)に載せているプロンプトがこちらです。そのままClaude Codeに貼り付けて使えます。
/statusline Claude Codeのステータスラインに以下を1行で表示する設定を作成してください。
重要:
- OSを判定してください。
- Windowsの場合は Bash/sh 前提にせず、PowerShell版を作成してください。
- macOS/Linuxの場合は Bash版で構いません。
- 既存の ~/.claude/settings.json がある場合は、既存設定を壊さずに statusLine だけ追加・更新してください。
表示形式の例:
~/project-name | Opus 4.8 (1M context) | effort:xhigh | 64k/1000k tokens (6%)
表示内容:
- cwd または workspace.current_dir
- $HOME は ~ に置換
- model.display_name
- effort.level
- context_window.current_usage の input_tokens + cache_creation_input_tokens + cache_read_input_tokens の合計
- context_window.context_window_size
- 使用率%
トークン数の算出方法:
stdinで渡されるJSONの context_window.current_usage から、
input_tokens + cache_creation_input_tokens + cache_read_input_tokens
の合計を実際のコンテキスト使用量として計算してください。
output_tokens は含めないでください。
使用率はこの合計 / context_window.context_window_size で計算してください。
Windowsの場合:
- ~/.claude/statusline.ps1 を作成してください。
- ~/.claude/settings.json の statusLine.command は次の形式にしてください。
powershell -NoProfile -ExecutionPolicy Bypass -File C:/Users/<ユーザー名>/.claude/statusline.ps1
- パスはバックスラッシュではなくスラッシュ区切りにしてください。
- sh ~/.claude/statusline.sh は使わないでください。
macOS/Linuxの場合:
- ~/.claude/statusline.sh を作成してください。
- ~/.claude/settings.json の statusLine.command は次の形式にしてください。
~/.claude/statusline.sh
- chmod +x ~/.claude/statusline.sh を実行してください。
null対策:
- context_window.current_usage が null の場合は 0 として扱ってください。
- effort.level が存在しない場合は effort:- と表示してください。
- context_window.context_window_size が null または 0 の場合は 0% と表示してください。
最後に、作成・更新したファイルパスと settings.json の statusLine 設定内容を表示してください。
長く見えますが、やっていることは「表示したい4項目」に加えて、つまずきやすい点を先回りして潰しているだけです。設計意図は4つあります。
- OSを先に判定させる。Windowsでは
sh前提のスクリプトが動かないので、PowerShell版を作らせます。公式もWindowsではGit BashかPowerShell経由で実行すると明記しています - 既存の
settings.jsonを壊さない。settings.jsonにはhooksなど他の設定も入っています。「statusLineだけ追加・更新」と釘を刺しておくと、上書きで他の設定が消える事故を避けられます - 使用量の数え方を明示する。入力+キャッシュ作成+キャッシュ読取の合計で、出力トークンは含めない。公式が
used_percentageの計算式として説明しているのと同じ式です - null対策を入れる。セッション開始直後や
/compact直後は使用量の値が空になるため、そこで表示が崩れないよう「空なら0として扱う」と決めておきます
できあがった statusline.sh の中身が気になったら、ファイルを開いてClaude Codeに「この行は何をしている?」と聞けば、そこから必要な分だけ理解が進みます。まず1行を出して、詰まったところで中身に降りる、で十分です。
使用率が見えると、何が変わるか
ステータスラインが入ると、いちばん変わるのは「会話を続けるか、分けるか」の判断材料が手元にできることです。使用率が上がってきたら、いまの話題に区切りをつけて新しいセッションを開く。あるいは、次の大きな仕事は別の作業フォルダ・別のセッションに切り出す。こうした判断がしやすくなります。数字が見えていなければ、「なんとなく重い気がする」で終わってしまうところです。複数のセッションを安全に走らせる作り方は「Claude Codeの並行作業のやり方」に書きました。
もう1つは、effortの確認です。Anthropicの公式プロンプトガイドが推奨するのは「ほとんどのタスクはhigh、日常作業はmedium・low、最難関はxhigh」という使い分けで、みやっち🧑💻はこれを体力配分だと思って使い分ける、という考え方をFable 5復活の記事に書きました。切り替えたつもりで切り替わっていなかった、という見落としも、常時 effort:xhigh のように見えていれば、その場で気づけます。
ステータスラインはいつ更新され、何を消費するのか
公式ドキュメントによると、ステータスラインはセッション開始時(再開時を含む)に表示され、その後は新しい返答が届いたとき、/compact が完了したとき、権限モードを変えたときなどに更新されます。連続して更新が来ても300ミリ秒で間引かれる仕様なので、返答のたびに数字が追いつく、くらいの感覚で見ていれば十分です。
覚えておきたいのは、ステータスラインはパソコンの中で動き、APIトークンを消費しないという点です。表示のせいで会話が重くなったり、使用量が増えたりすることはありません。やめたくなったら /statusline delete と伝えるか、settings.json から statusLine の項目を消せば元に戻ります。
表示されない・「—」が出るときの確認ポイント(Windows含む)
「claude code statusline 表示されない」で検索してくる方向けに、公式のトラブルシューティングにある確認点を、非エンジニアの言葉に直して並べます。
- スクリプトに実行権限があるか。macOS・Linuxなら
chmod +x ~/.claude/statusline.shを実行します(教材プロンプトはこれも自動でやらせています) - 結果を標準出力に出しているか。スクリプトが最後に
echoで文字を出していないと、何も表示されません - 手動で動かして出力を見る。公式は、テスト用のJSONを
echoでスクリプトに流し込み、1行が出るかを確かめる方法を案内しています。ターミナルでの確認が不安なら、「statusline.sh を手動実行して出力を見せて」とClaude Codeに頼めば代わりに確かめてくれます - Windowsは、パスをスラッシュ区切りにする。Git Bashはバックスラッシュを特殊文字として食ってしまうため、
C:\Users\...の形だとスクリプトが見つかりません。C:/Users/名前/.claude/statusline.ps1のようにスラッシュで書きます。教材プロンプトの「スラッシュ区切りにしてください」はこのためです - 空欄や「—」が出るのは故障ではない。セッション開始直後や
/compact直後は使用量の値がまだ空(null)で、公式もこの状態を前提に「空なら0を使う」フォールバックを勧めています。教材プロンプトのnull対策が入っていれば「0k/1000k tokens (0%)」と表示され、次の返答が来ると数字が入ります - hooksを止める設定を入れていないか。
disableAllHooksを有効にしていると、管理設定によるもの以外のステータスラインも無効になります。組織の管理設定でallowManagedHooksOnlyが設定されている場合も、自分で入れたステータスラインは表示されません
それでも出ない場合、公式は claude --debug で初回実行の終了コードとエラー出力を確認する方法を案内しています。ここまで来たら、そのエラー文をそのままClaude Codeに貼って「直して」と頼むのが早道です。
よくある質問
コストや使用制限(5時間・7日)もステータスラインに出せますか?
出せます。公式が用意しているフィールドに、セッションの推定コスト(cost.total_cost_usd。パソコン側の推定値で、実際の請求額とは異なりうると明記されています)や、Claude.aiのPro・Max購読者向けの5時間・7日の使用制限(rate_limits)があります。みやっち🧑💻は使っていないので体験としては書けませんが、頼み方は同じで、/statusline に「5時間の使用率も足して」のように日本語で伝える形になります。
複数行や色付きの表示にできますか?
できます。公式ドキュメントでは、スクリプトが複数行を出力すれば複数行で表示され、ANSIカラーで色も付けられると説明されています。ただし出力は短く保つよう公式も勧めています。常時見える場所なので、みやっち🧑💻は1行4項目にとどめています。
使用率の数字は何を数えているのですか?
公式の used_percentage は「入力トークン+キャッシュ作成トークン+キャッシュ読取トークン」を上限で割った値で、AIが返した出力トークンは含みません。教材プロンプトの計算式もこれに合わせています。自分で式を書くなら、同じ入力側だけの式にそろえておくと、公式の数字とズレません。
まとめ——見える化の中身を、自分の言葉で決める
ステータスラインそのものは、入力窓の下の1行にすぎません。ですが、会話がどれだけ重いか、どのモデルがどの深さで動いているかが常に見えている状態と、見えないまま使っている状態では、会話を分ける・effortを確かめるといった小さな判断の精度が変わります。しかも設定は、公式の /statusline に「何を見たいか」を日本語で伝えるプロンプト1本です。
そして、「自分は何を常に見ていたいか」を自分で決めて、自分の言葉で作業環境をカスタマイズできること自体が、Claude Codeを自分専用の分身に育てていく土台になります。チャット画面の中だけでAIを使っている限り、何を常時表示するかを自分で決める場面には出会いません。AI CrewはClaude Code・Codexの両方に対応した講座で、こうした作業環境の整え方から、自分の業務をエージェントに移すところまでを、経営者・個人事業主・士業の方と一緒に進めています。まず無料セミナーでお会いしましょう。