nnemirovsky/cc-status-band

Git、モデル、コンテキスト、ブランチの PR レビュー状態を表示する、Claude Code 用の枠付きステータスバンドです。
nnemirovsky/cc-status-band

status-band は Claude Code のコマンドステータス行を固定 2 行に置き換えます。1 行目にはワークツリー、ブランチ、ステージ済み/未ステージ行数、モデルと努力レベル、コンテキスト使用量、作業ディレクトリを表示します。PR がある場合だけ 2 行目にマージ可否、レビュー、CI、競合、ベースとの差分、未解決スレッド、承認、draft/merged/closed 状態を表示し、PR 番号をリンクにします。Git とコンテキストは 10 秒ごと、各ターン後、Bash やファイル編集後に更新し、PR 行は毎分、ディレクトリまたはブランチ変更後、gh pr、gh api、git push、git checkout、git switch の直後に更新します。/plugin marketplace add nnemirovsky/cc-status-band、/plugin install status-band@status-band で導入し、/status-band-setup を実行します。Claude Code 2.1.289+、git、ログイン済みの gh が必要で、MIT ライセンスです。
まず作者の README で marketplace とプラグイン名を確認してください。コマンドはリポジトリの構成によって変わる場合があります。
claude plugin marketplace add nnemirovsky/cc-status-band claude plugin install status-band
Opinionated framed status band for Claude Code with git, model, context, and the branch's PR review state. It takes the place of a command status line and tidies the hint line under the prompt.


This is not ccstatusline or any of the other status line builders. There are no
widgets to pick, no themes and no layout options. It draws one fixed layout in one
fixed palette, the way its author wanted it. The only setting is whether the PR and
CI marks use Nerd Font glyphs. If you want a different look, fork it: the whole
thing is one file, hooks/register.tsx.
First row, the same fields a typical status line has:
main for the main checkout), the branch, and staged plus unstaged
line counts from git diff --shortstat HEAD(from …) when the session started somewhere else.
When the row does not fit, the path moves to its own line.Second row, only when the branch has a pull request, and only what needs attention:
| Shown when | Text |
|---|---|
| GitHub reports it mergeable and no changes are requested | ready to merge (the review state is left out) |
| Review required | review required |
| Changes requested | changes requested |
| CI passed, running, failed | CI ✓, CI ●, CI ✗ 2 failed |
| Merge conflicts, branch behind its base | conflicts, behind |
| Unresolved review threads, when there are any | 3 unresolved |
| Approvals, when there are any | 2 approvals |
| Draft, merged, closed | draft, merged, closed |
| GitHub is still working out the PR after a push, nothing else to show | checking |
PR #2899 is a link to the pull request.
Hint line under the prompt: the band replaces Claude Code's own PR badge, so that
badge is removed from the hint line, together with (shift+tab to cycle).
Git and context refresh every 10 seconds, after each turn and after Bash or file
edits. The PR row refreshes every minute, on a change of directory or branch, and
right after a gh pr, gh api, git push, git checkout or git switch command.
While checks run or GitHub has not yet worked out the merge state, it looks again
every 15 seconds.
Mods reach only some of Claude Code's interface. These stay as Claude Code draws them:
⏵⏵ auto mode on)/rc indicatorImage in clipboard), which keeps its line even when emptygit, and gh logged in for the PR rownerdFont: a Nerd Font in your terminal (the glyphs are GitHub octicons)/plugin marketplace add nnemirovsky/cc-status-band
/plugin install status-band@status-band
Then run the setup command once:
/status-band-setup
It asks three things and changes only what you agree to, skipping what is already done:
nerdFontFORCE_HYPERLINK=1, when it is not set (see
Links that print the URL); it applies after a restartstatusLineDisabled, so renaming it back restores itIt writes only ~/.claude/settings.json, and the nerdFont option through
Claude Code's own config.
| Option | Default | |
|---|---|---|
| nerdFont | false | PR and CI marks as octicons ( ) instead of PR ✓ ● ✗ |
Set it from /config, or in ~/.claude/settings.json:
"pluginConfigs": { "status-band@status-band": { "options": { "nerdFont": true } } }
The PR number is an OSC 8 hyperlink. Claude Code decides whether your terminal
supports those from its environment, and does not recognise every terminal
(agterm, for one). If you see the URL printed after PR #2899, set
FORCE_HYPERLINK=1 in the env block of ~/.claude/settings.json, or let
/status-band-setup do it.
claude plugin validate .
claude plugin test .
claude --plugin-dir .
Claude Code watches a --plugin-dir folder and reloads the mod on each save.
MIT