Claude Codeのステータスラインは、ターミナル画面の下でモデル名・作業場所・コンテキスト使用率などを表示する機能です。いちばん簡単な設定方法は、Claude Codeへ/statuslineと表示したい内容を入力することです。まずは「モデル名・作業フォルダー・コンテキスト」の3項目に絞ると、複数の仕事を並行するときも現在地を確認しやすくなります。
この記事は2026年10月28日に確認した公式資料をもとにしています。コードと図は編集部の説明用で、Claude Codeの実画面や実測結果ではありません。項目の有無は契約・接続・製品の版によって変わります。
Claude Codeのステータスラインで何が分かるか
ステータスラインは、設定したスクリプトへClaude Codeが会話の情報をJSONで渡し、スクリプトの標準出力を画面へ表示する仕組みです。表示を作る部分はローカルで動き、その仕組み自体がAPIトークンを消費するわけではありません。ただし、自分で外部通信やAI呼び出しをスクリプトに追加すれば、その処理は別です。
たとえば、次のような1行を作れます。数値とモデル名は、見た目を説明するための架空の例です。
[モデル名] project-a | context 32% | 5h 18%
このうちcontextは会話に入っている情報の使用割合、5hは対応する契約で取得できる利用枠の消費割合です。同じ「%」でも分母が異なります。情報を多く並べる前に、何を判断するための数字かを決めます。詳しい定義は公式のステータスライン解説にあります。
ステータスラインを/statuslineで設定する
ターミナル版Claude Codeで、次のように依頼します。最初から色や多数の記号を指定するより、欲しい情報と、値がないときの表示を伝える方が確認しやすくなります。
/statusline モデル名、作業フォルダー名、コンテキスト使用率を1行で表示して。値が未取得なら0%とせず「未取得」と表示して。
公式資料によると、Claude Codeがホームの.claude配下へスクリプトを作り、設定を更新します。途中でファイル変更の確認が出たら、保存場所と変更内容を読んで判断します。「画面の表示を変える依頼」でも、実体としてはコマンドを動かす設定なので、見覚えのない外部送信や不要な処理が入っていないかを確認してください。
設定後は、表示されたモデル名と作業場所が自分の会話と一致するかを見ます。最初の応答前には一部の値がまだないことがあるため、空欄だけで故障と決めつけません。表示を消したいときは/statuslineで削除を依頼するか、settings.jsonのstatusLine項目を取り除きます。別の設定まで消さないよう、変更差分を確認します。
ステータスラインを自分のスクリプトで作る
表示内容をチームでそろえたい場合は、入力を受け取る小さなスクリプトとして管理できます。以下はPython 3が利用できる環境向けの説明例です。機能を増やす前に、モデル・フォルダー・contextの3つだけを出す形にしています。
import json
import sys
from pathlib import Path
data = json.load(sys.stdin)
model = (data.get("model") or {}).get("display_name") or "未取得"
workspace = data.get("workspace") or {}
current_dir = workspace.get("current_dir")
folder = (Path(current_dir).name or current_dir) if current_dir else "未取得"
context = (data.get("context_window") or {}).get("used_percentage")
percentage = "未取得" if context is None else f"{context:.0f}%"
print(f"[{model}] {folder} | context {percentage}")
たとえばホームの.claude/statusline.pyとして保存し、settings.jsonへ次の項目を加えます。ファイル全体の置換ではなく、すでにある項目との統合が必要です。Pythonの実行名は環境に合わせて確認してください。
{
"statusLine": {
"type": "command",
"command": "python3 ~/.claude/statusline.py"
}
}
commandに指定したコマンドはシェルで実行され、スクリプトには標準入力を通じてJSONが渡されます。Pythonを明示して実行するこの例では、Bashスクリプトを直接起動する例と設定が異なります。Windowsでは利用できるPythonの起動方法とパスの書き方を合わせ、公式のWindows設定例も参照します。各OSのインストール手順をここへ混ぜず、普段利用している環境で小さく確かめます。
取り付ける前に、架空のJSONを保存してスクリプトへ渡すと、表示処理だけを検証できます。これはClaude Code本体での表示確認とは別です。たとえばused_percentageが32の入力、nullの入力、context_window自体がない入力の3通りで、エラーにならず意味が分かる表示になるかを見ます。
ステータスラインの数字を混同しない
| 表示する値 | 用途 | 読み違えない点 |
|---|---|---|
model.display_name | 現在のモデルを確認 | 自分が想定した会話かも併せて見る |
workspace.current_dir | 今の作業場所を確認 | 開始した場所を表すproject_dirと区別する |
context_window.used_percentage | 会話の情報量を確認 | 契約の残り利用回数ではない |
rate_limits | 対応する利用枠を確認 | 契約や接続条件によって値がない |
cost.total_cost_usd | 会話の費用見積もりを確認 | 実際の請求金額と同じとは限らない |
コンテキストの割合は、直近のAPI応答に基づく値です。/contextではその後に追加されたメッセージの推計も加わるため、同じ瞬間に値が違うことがあります。「数字が違うからどちらかが壊れた」とせず、観測のタイミングを確認します。
rate_limitsは、公式資料ではPro・Maxの利用者や、利用額上限を設定したClaude apps gatewayなどの条件が説明されています。さらに初回のAPI応答前には存在しないことがあります。取得できない値を0%へ変換すると、「余裕がある」という別の意味に見えるので、表示設計では未取得とゼロを区別します。
料金見積もりも、会話の比較や変化を見るための値として扱います。請求やプランの残量そのものを確定する数字にはしません。使用量が増えた理由を調べたい場合は、/usageと使用量の確認方法で、数字の見方と確認手順を参照してください。

ステータスラインの更新を重くしない
ステータスラインは、応答の到着や会話の圧縮、権限モードの変更などのきっかけで再実行されます。時計など、会話が止まっていても変わる値を表示したいときは、statusLineのrefreshIntervalで周期的な更新を設定できます。公式仕様では秒数の最小値は1です。ただし、毎秒更新できるからといって、重い調査を毎秒行う必要はありません。
編集部としては、最初は受け取ったJSONだけで表示を作る方法を勧めます。Gitの情報や外部サービスの値を加えるときは、その取得が失敗しても残りの表示が消えないように分けます。広いファイル検索やネットワーク接続を毎回入れると、状態を素早く見るはずの表示が遅くなります。
実行中に次の更新が来ると、古いスクリプトが中断されることがあります。長い処理を抱えない、必要な結果は短時間だけ再利用する、出力を短くする、といった設計が役立ちます。横幅に応じて項目を減らしたい場合、公式資料ではCOLUMNSとLINESの環境変数を利用する方法が案内されています。
ステータスラインが表示されないときの確認順
「そもそも1行も出ない」と「一部の数値だけ空欄」は分けて調べます。いきなり設定を作り直すと、元の原因が分からなくなります。
- スクリプトだけで動くか。架空のJSONを入力し、標準出力へ文字が出て、正常終了するかを確認します。
- 設定がそのファイルを指しているか。statusLineの大文字小文字、commandのパス、利用するPythonやシェルを見ます。
- 初回応答を受けたか。一部データがまだない場合は未取得表示を使います。
- フォルダーの信頼確認が済んでいるか。未承認の作業フォルダーでは、ステータスラインのコマンドが動かないことがあります。
- 管理設定による制限がないか。disableAllHooksやallowManagedHooksOnlyの影響を、組織の管理者と確認します。
公式資料では、出力がなく正常終了しないスクリプトでは表示が空になることや、claude --debugでエラーを確認する方法が説明されています。デバッグログを他人へ渡す際は、作業パスや会話情報が含まれていないか点検します。設定リファレンスで制約の意味を確認し、会社の管理設定を独断で解除しないでください。
表示が崩れるときは、色・絵文字・複数行を一度減らして、プレーンテキストで切り分けます。許可ダイアログやヘルプの表示中は一時的に隠れる場合もあるので、通常の入力画面で確認します。ステータスラインを設定すると一部のキー操作ヒントが表示されなくなる点も、初めて使う人へ伝えておくと迷いを減らせます。
ステータスラインは、次の判断に必要な情報へ絞る
まず/statuslineで3項目を指定し、表示と実際の会話を照合します。次に必要なら利用枠やGitの状態を足し、欠測とゼロ、コンテキストと利用上限を明確に分けます。手元の表示が整ったら、チーム全員に同じ項目が必要かを考えて共有してください。
チーム導入では、画面の便利さだけでなく、任せる仕事と成果物の確認手順までそろえることが重要です。社内の仕事に合わせた運用を作る場合は、AI社員導入支援をご覧ください。





