Claude Code のステータスラインに5時間・7日の使用率を出す(rate_limits)
ステータスライン用スクリプトに渡る JSON には rate_limits.five_hour / seven_day の使用率とリセット時刻が入っている(v2.1.80 以降)。コンテキスト使用率と並べて常に見えるようにしておくと、上限に当たる前に作業を切り替えられる。
手順
~/.claude/settings.json:
json
{
"statusLine": { "type": "command", "command": "~/.claude/statusline.sh" }
}~/.claude/statusline.sh(chmod +x):
bash
#!/bin/bash
input=$(cat)
MODEL=$(echo "$input" | jq -r '.model.display_name')
CTX=$(echo "$input" | jq -r '.context_window.used_percentage // empty')
FIVE_H=$(echo "$input" | jq -r '.rate_limits.five_hour.used_percentage // empty')
WEEK=$(echo "$input" | jq -r '.rate_limits.seven_day.used_percentage // empty')
RESET=$(echo "$input" | jq -r '.rate_limits.five_hour.resets_at // empty')
out="$MODEL"
[ -n "$CTX" ] && out="$out | ctx ${CTX%.*}%"
[ -n "$FIVE_H" ] && out="$out | 5h ${FIVE_H%.*}%"
[ -n "$RESET" ] && out="$out (〜$(date -d @"$RESET" +%H:%M 2>/dev/null || date -r "$RESET" +%H:%M))"
[ -n "$WEEK" ] && out="$out | 7d ${WEEK%.*}%"
printf '%s' "$out"used_percentageは 0〜100、resets_atは Unix 秒(ISO 形式ではない)- 見た目に凝るなら逆瀬川さんの記事に表示用スクリプトの例がある。記事の URL を Claude に渡して入れてもらうのが早い
注意点
rate_limitsは claude.ai の Pro / Max 契約者(または支出上限のある Claude apps gateway 経由)だけで、セッション最初の API 応答のあとに現れる。各窓は欠けることがあるので// emptyで受ける- gateway 経由では
rate_limits.spend_limit(使用率、ドル額)も来る - 時刻表示を更新し続けたい場合は
statusLineにrefreshInterval(秒)を足す - 上限に近いときの使い方は Claude Code: Haiku 5.5 の自動コンパクトを100Kにして安い料金帯に収める も参照
追記(2026-10-29)
@suthio_ も /usage の内容をステータスバーに出していて「地味に便利」と紹介していた(X の投稿より @suthio_ · 2026-03-04 )。
出典
- @oikon48 · 2026-03-20 (紹介元 @gyakuse · 2026-03-20 )
- 記事「Claude Codeの使用率がステータスラインに表示できるようになったので表示用のスクリプトを作った話」: nyosegawa.com
- 公式: code.claude.com