ClaudeModsClaude Code mod 디렉터리
☰
● 0 명 접속 중 · 조회 0 회
+ 프로젝트 제출
← 프로젝트 목록으로
GitHub 저장소 · 대시보드 및 HUD

statuspane — Claude Code 플러그인 · ClaudeMods

이 작품 신고본인의 작품인가요? 소유권 확인

ClaudeMods에서 이 Claude Code 플러그인의 원본 소스와 필요한 권한을 확인하세요. statuspane: Claude Code 프롬프트 위에 떠 있는 상태 카드 — 모델, 노력, 컨텍스트, 5시간/주간 제한, 비용, 디렉터리

xxuanji86@xuanji86
번역 완료

이 mod 소개

<div align="center">

statuspane

Claude Code를 위한 플로팅 상태 카드.<br> 모델, 컨텍스트, 속도 제한, 비용 및 브랜치를 한눈에 확인하고, GitHub CI 및 배포, 그리고 모든 스크립트가 제공할 수 있는 진행률 표시줄을 보여줍니다.

Version Claude Code mod License: MIT validates

English · 中文

<img src="assets/card.svg" alt="The status card above the Claude Code prompt" width="720"> </div>

Why

Claude Code의 statusLine은 셸 스크립트에서 나온 한 줄의 텍스트입니다. statuspane은 mod입니다: 프롬프트 바로 위에 위치한 작은 카드로, Claude Code 자체의 세션 수치를 읽고 클릭할 수 있습니다 — 스크립트를 작성할 필요가 없습니다.

Features

| | | | --- | --- | | Model · effort | 사용 중인 모델, Claude가 작업 중인지 여부, 그리고 추론 노력을 게이지에 표시 (▮▮▮▯▯ high) | | Context | 사용된 토큰 / 윈도우를 표시하는 게이지 (▰▰▰▱▱▱ 42% 222k/1M), 그리고 ⟲ compact: 누른 다음 confirm을 눌러 /compact 실행 (Claude가 작업 중이면 턴 이후에) | | Rate limits | 5시간 및 7일 사용량을 각각 작은 게이지에 표시하고, 재설정 카운트다운 포함 (↻2h41m) | | Where you are | 디렉터리와 git 브랜치. 카드가 좁게 유지되도록 축약됩니다 | | Session cost | 이 세션에서 지금까지 발생한 비용 | | GitHub CI | 브랜치의 최신 Actions 실행 및 푸시로 트리거되는 실행 (배포 포함) (GitHub CI) | | Progress rows | 모든 스크립트나 mod가 제공할 수 있는 막대. 매초 새로 고침됩니다 (Progress API) | | Clickable | 숨기기, 표시, 설정은 버튼입니다. 모든 것이 마우스로 작동합니다 | | Settings | 원하는 줄과 막대 너비를 선택하세요. 세션 간에 저장됩니다 |

Claude Code 자체의 테마 색상으로 그려지므로 다크, 라이트 및 색맹 테마를 따릅니다: 게이지는 Claude의 악센트 색상이며, 60%부터 테마의 경고 색상, 85%부터 오류 색상으로 변합니다 (컨텍스트: 50% / 80%).

Install

Claude Code 2.1.287 이상이 필요합니다. 이는 mods(함수 후크)를 도입한 릴리스입니다. 2.1에서 테스트되었습니다

설치

먼저 작성자의 README에서 marketplace와 플러그인 이름을 확인하세요. 저장소 구조에 따라 명령어가 달라질 수 있습니다.

claude plugin marketplace add xuanji86/claude-statuspane
claude plugin install statuspane
원문 / README
<div align="center">

statuspane

A floating status card for Claude Code.<br> Model, context, rate limits, cost and branch at a glance, your GitHub CI and deploys, plus progress bars any script can feed.

Version Claude Code mod License: MIT validates

English · 中文

<img src="assets/card.svg" alt="The status card above the Claude Code prompt" width="720"> </div>

Why

Claude Code's statusLine is one line of text from a shell script. statuspane is a mod: a small card that lives just above the prompt, reads Claude Code's own session figures, and can be clicked — no script to write.

Features

| | | | --- | --- | | Model · effort | The model in use, whether Claude is working, and its reasoning effort on a gauge (▮▮▮▯▯ high) | | Context | A gauge with tokens used / window (▰▰▰▱▱▱ 42% 222k/1M), and ⟲ compact: press, then confirm, to run /compact (after the turn, if Claude is working) | | Rate limits | 5-hour and 7-day use, each on a small gauge, with reset countdowns (↻2h41m) | | Where you are | Directory and git branch, shortened so the card stays narrow | | Session cost | What this session has cost so far | | GitHub CI | The branch's latest Actions run and the runs a push sets off, deploys included (GitHub CI) | | Progress rows | Bars any script or mod can feed, refreshed every second (Progress API) | | Clickable | Hide, show and settings are buttons; everything works with the mouse | | Settings | Pick the lines you want and the bar width; saved across sessions |

It is drawn in Claude Code's own theme colors, so it follows dark, light and colorblind themes: gauges in Claude's accent, turning to the theme's warning color from 60 % and its error color from 85 % (context: 50 % / 80 %).

Install

Needs Claude Code 2.1.287 or later, the release that brought mods (function hooks); tested on 2.1.288. Mods are early access: their API may change between releases, and a release that breaks the card gets a fix here.

/plugin marketplace add xuanji86/claude-statuspane
/plugin install statuspane@claude-statuspane
<details> <summary>From a terminal instead</summary>
claude plugin marketplace add xuanji86/claude-statuspane
claude plugin install statuspane@claude-statuspane
</details>

The card appears in terminals at least 70 columns wide; the desktop app shows none, since it has its own. It adds to your setup and replaces nothing: a configured statusLine keeps showing; delete it from ~/.claude/settings.json if you want the card alone.

Use

<table> <tr> <td width="50%" valign="top">

Settings — click ⚙

<img src="assets/settings.svg" alt="The settings page" width="100%">

Click a line to switch it, [ - ] / [ + ] for the bar width (6–24), then ✓ Done.

</td> <td width="50%" valign="top">

Hidden — click ▾ hide

<img src="assets/hidden.svg" alt="The card folded to one button" width="100%">

One button stays at the right edge; click ◂ status to bring the card back. /statuspane does the same from the prompt.

</td> </tr> </table> <details> <summary><b>Tip:</b> the <code>-</code> at the panel's corner, and a one-key shortcut</summary>

The - at the top right of the panel is Claude Code's own "hide plugin panel". It hides the whole panel, and only its keybinding brings it back (default ctrl+x ctrl+a). If your terminal doesn't pass ctrl+x chords through, bind it to one key in ~/.claude/keybindings.json:

{
  "bindings": [
    { "context": "Chat", "bindings": { "ctrl+s": "abovePrompt:toggle", "ctrl+q": "chat:stash" } }
  ]
}

ctrl+s is "stash" by default, so the example moves stash to ctrl+q.

</details>

GitHub CI

Two switches on the settings page, both off until you turn them on. They need the GitHub CLI signed in (gh auth login).

| Switch | Shows | | --- | --- | | CI · this branch | The latest Actions run of the branch the session is on: checked every minute, every 10 seconds while it runs | | CI · after a push | When Claude runs git push or gh pr merge, the runs that set off (for a merge, on the base branch) until they finish; the result stays for 10 minutes |

Each row reads <repo> <branch> and then:

| | | | --- | --- | | ⟳ test · 1m20s | accent: under way, with the jobs running now and the time so far | | ⟳ deploying · 1m20s | a job whose name has deploy in it is running | | ✓ deployed · 3m ago | green: done, and a deploy job succeeded (✓ passed when none ran) | | ✗ test failed · 3m ago | red: the job (or workflow) that failed | | ⊘ cancelled · 3m ago | every run was cancelled or skipped |

All of one commit's workflows make one row; scheduled runs are left out.

Progress API

Show your own progress on the card, from any language or from another mod. Rows are sorted by id, at most five show, and each one goes away by itself once its source stops reporting. The card reads the 20 most recently written files, so old files left behind never crowd out a new one.

From any script: a JSON file

Write ~/.claude/statuspane/progress/<id>.json (the folder can be moved with STATUSPANE_PROGRESS_DIR, an absolute path or one starting with ~/):

{ "label": "build", "percent": 42.5, "text": "3/7 · 1.2/min", "ttl": 300, "state": "running" }

| Field | Type | | | --- | --- | --- | | label | string | Shown before the bar, up to 24 characters (defaults to the id) | | percent | number, optional | 0–100. Leave it out for a text-only row | | text | string, optional | Shown after the bar, up to 60 characters | | ttl | seconds, optional | How long the row stays after the file was last written (default 300) | | state | string, optional | running (accent), ok (green) or error (red): colors the gauge and the text |

<id> uses letters, digits, ., _ and -. Write to a temporary file and rename it over the target so the card never reads half a file; delete the file to remove the row at once.

Ready-made helpers in examples/ (they check the id, cut fields to length and write atomically; the shell one needs python3):

examples/report-progress.sh build "build" 42.5 "3/7"            # id label [percent] [text] [ttl] [state]
from report_progress import report, clear
report("my-job", "my job", 40, "4/10", state="running")
clear("my-job")

From another mod: $.statuspane

List statuspane under dependencies in your mod's plugin.json (its types are then laid into your .claude-plugin/types/statuspane/), and call:

await $.statuspane.progress({ id: 'my-job', label: 'my job', percent: 40, text: '4/10', ttl: 120, state: 'running' })
await $.statuspane.clear('my-job')

Same fields as the file. Rows from a mod live in memory, so report again after statuspane reloads.

Already reporting

  • ainiee-translate v1.14+ — progress --watch / --line show translation progress.

Privacy and safety

Its footprint, as the awesome-claude-code-mods scan reads it from claude plugin validate:

reach

Everything stays on your machine. statuspane reads Claude Code's own session figures, runs git branch --show-current in the session's directory, and lists the progress folder. Only with a CI switch on does it reach out: it reads the origin remote and runs gh run list / gh run view (and gh pr view after a merge) for that repository, through gh and your own sign-in. From that folder it reads only *.json files of at most 64 KB, strips control, bidi and zero-width characters from their text, cuts every field to length, and never runs anything they contain.

Develop

git clone https://github.com/xuanji86/claude-statuspane
cd claude-statuspane
claude plugin validate .
claude plugin test .
claude --plugin-dir .        # or add the folder to CLAUDE_CODE_PLUGIN_DIRS

A session that loaded the mod from its folder reloads it each time you save a file. Issues and pull requests are welcome.

License

MIT © Anji Xu

원본 출처 보기 ↗

비슷한 프로젝트