AI News HubLIVE
站内改写2 分で読了

Claude Codeのレート制限消費をステータスラインに表示する

本記事では、Claude Codeのカスタムステータスラインスクリプトを紹介します。コンテキスト使用率、トークン数、コード変更量、レート制限の残り容量をリアルタイムで表示し、開発者が予期せぬ制限に遭遇するのを防ぎます。

ソースHacker News AI著者: fotoflo

Claude Codeのステータスラインをカスタマイズ:レート制限消費を一目で把握

Claude Codeでは、statusLine設定を使用してデフォルトのステータスラインを任意のコマンドに置き換えることができます。本記事では、作業中にコンテキストウィンドウ、トークン消費、コード変更量、レート制限の残り容量を常に表示する2行のステータスラインスクリプトを紹介します。

1行目:現在の作業コンテキスト

1行目は、カレントディレクトリ、Gitブランチ、使用中のモデル、セッション名を表示します。例:~/dev/aimhuge (main) [opus] Invert menu order in projects page。これにより、どのリポジトリ、どのブランチ、どのモデルで何をしているかを一瞬で把握できます。

2行目:リソース消費とレート制限

2行目は2つのグループに分かれ、縦線で区切られています。左側はセッションのリソース消費:コンテキストウィンドウの残り割合(ctx:N%)、これは100%から減少し、20%を切ると赤くなって圧縮が必要であることを知らせます;総トークン数(tok:Nk);およびこのセッションで追加・削除されたコード行数(+N/-N)。作者は特にコード行の変化を重視しており、削除行数は効果的なリファクタリングの指標であると述べています。

右側はレート制限の消費状況:5時間および7日間ウィンドウの残り割合とリセット時刻を表示します。例:5hr:95% reset 10pm · 7d:95% reset Mon 5pm。残量が多いときは緑、消費が進むと黄、そして赤に変わります。これにより、タスクの途中で突然「制限に達しました」と表示される驚きを回避できます。

さらに、ステータスラインは現在のパーミッションモードも表示し、なぜClaudeが許可を求めなかったのかを開発者が理解できるようにします。

動作の仕組み

Claude Codeは、カレントディレクトリ、モデル、セッション、トークン、コストデータを含むJSONオブジェクトを、statusLineが指すコマンドにパイプで渡します。作成者は、jqを使ってそのJSONを解析し、ANSIエスケープコードで各パーセンテージを色付けするPOSIXシェルスクリプトを作成しました。スクリプトには、トークン数を可読形式(k/M単位)に変換したり、残量に応じて色を変えるヘルパー関数が含まれています。

インストール方法

最も簡単な方法は、このページのURLをClaude Codeに渡して「このステータスラインをインストールして」と依頼することです。手動で行う場合は以下の3ステップ:

  1. スクリプトを ~/.claude/statusline-command.sh に保存します。
  2. chmod +x で実行権限を付与します。
  3. ~/.claude/settings.json に以下の設定を追加します:

{ "statusLine": { "type": "command", "command": "bash ~/.claude/statusline-command.sh" } }

Claude Codeを再起動すると、2行のステータスラインが表示されます。この「コックピット」により、開発者は常にリソースの余裕を把握し、スムーズに作業を進めることができます。