Claude CodeのステータスラインでコンテキストとGit状態を見る
公開 2026-04-25 更新 2026-09-11

関連テーマ:利用量・コスト・速度を把握する
ステータスラインは、セッション情報を標準入力JSONで受け取り、スクリプトの出力をプロンプト下部へ表示する仕組みです。モデル名、コンテキスト使用率、コスト、経過時間、作業ディレクトリ、Gitブランチなどを常時確認できます。
最小設定
設定にパスを書くだけでは、表示用の処理は作られません。
- 1セッション情報標準入力のJSONとしてスクリプトへ渡る。
- 2表示スクリプト必要な値を取り出し、表示する文字列を出力する。
- 3プロンプト下の表示モデル・ブランチ・使用率などを確認する。
表示が空なら、スクリプトの実在・実行方法・JSON処理を確認します。推定コストは請求額と区別します。
対話中に/statusline show model, context percentage, and git branchと頼むと、Claude Codeがスクリプトと設定を作成します。手動なら、まず表示用スクリプトを作り、その実在するパスをユーザーまたはプロジェクト設定へ指定します。次の例は~/.claude/statusline.shを作成済みで、実行できるシェルがある場合の設定です。設定だけを貼ってもスクリプトは作成されません。
{
"statusLine": {
"type": "command",
"command": "~/.claude/statusline.sh",
"padding": 2,
"refreshInterval": 5
}
}
スクリプトはstdinからJSONを読み、必要な項目だけ出力します。WindowsではPowerShellスクリプトやjqの有無、実行ポリシー、パスの引用符を確認し、まず手動で同じコマンドを動かします。refreshIntervalは時間表示などを更新する時だけ指定し、短すぎる間隔で重いGit処理を繰り返さないようにします。
コスト表示は推定値で、公式請求と一致するとは限りません。ステータスラインへプロンプト本文や秘密情報を出力しないでください。消す時は/statusline deleteなどを使うか設定のstatusLineを削除します。公式Status Line、Costsを照合しました。実機検証はしていません。
表示項目を増やす時は、stdin JSONに存在しない値を既定値へ置き換え、Gitコマンドが失敗してもセッションを止めないようにします。色や記号より、モデル名、ブランチ、コンテキスト率、コスト推定を優先し、表示が長くなりすぎないようにします。
スクリプトのJSON解析に失敗しても、ステータスラインが空になるだけで作業を止めない実装にします。新しいClaude Codeで入力フィールドが増減する可能性を考え、存在しない項目へ依存しないようにします。
利用量の正確な請求確認はプラン別の監視方法、外部メトリクスへ送る場合はOpenTelemetry構成へ進みます。
このテーマを続けて読む
料金の考え方からモデル選択、利用状況の見える化へ進みます。
利用量・コスト・速度を把握するの記事をまとめて見る