Skip to main content
skill CX Codex

groove-admin-claude-statusline — Claude Code skill: rich statusline

Installs a single-line statusline in Claude showing model, git context, token usage and rate limits. Useful when you want session state visible at a glance.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add andreadellacorte/groove --skill groove-admin-claude-statusline -a claude-code
Open on GitHub

What groove-admin-claude-statusline does

The skill writes three scripts into ~/.claude/hooks/ and merges config into ~/.claude/settings.json. The statusline redraws on every Claude turn and shows the active model, the CWD folder and git branch with staged +N -N, context tokens used as a percentage, the current effort level, 5h and 7d rate-limit utilisation with reset time, plus the count of active /loop jobs and the soonest one to fire.

Install runs in steps: create ~/.claude/hooks/ if missing, copy statusline.sh, cron-state.sh and cron-state-clear.sh there, make them executable, then merge a statusLine entry and two hooks into settings — PostToolUse on CronCreate|CronDelete and SessionEnd. Existing keys in settings.json are preserved and duplicates are skipped. There is a --list mode to report current state and --uninstall to drop the statusLine entry and the hooks the skill added.

It needs jq, curl, python3 and git. The 5h/7d section relies on a Claude Pro/Max OAuth session; with no token found it is silently omitted. Scripts go to the user-global ~/.claude/hooks/, not the project-local .claude/, so restart Claude after install or neither the line nor the hooks will load.

What it helps with

  • see the git branch and staged diff inside Claude
  • track context usage as a percentage
  • check when the 5h and 7d limits reset
  • count active /loop jobs and their next fire time
  • remove the statusline and hooks in one step

Example prompts for the agent

  • Install the groove-admin-claude-statusline skill and set up the statusline
  • Show the current statusline state: run the skill with --list
  • Remove the statusline and hooks with --uninstall

How to install groove-admin-claude-statusline

1Skills CLI (Vercel)

npx skills add andreadellacorte/groove --skill groove-admin-claude-statusline -a claude-code

2Manually: put the files in place

~/.claude/skills/groove-admin-claude-statusline/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/groove-admin-claude-statusline/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about groove-admin-claude-statusline

How do I install groove-admin-claude-statusline in Claude?

Run npx skills add andreadellacorte/groove --skill groove-admin-claude-statusline -a claude-code. Then restart Claude so the statusline and hooks take effect.

What does the statusline show?

The active model, CWD folder and git branch with staged diff, context tokens used, effort level, 5h and 7d rate-limit utilisation with reset time, and the count of active /loop jobs with the soonest fire time.

Why is the 5h/7d section missing?

That section needs a Claude Pro/Max OAuth session. If no token is found it is silently omitted, while the rest of the line keeps working.

Source text

SKILL.md · MIT
---
name: groove-admin-claude-statusline
description: "Install a rich Claude Code statusline into ~/.claude/hooks/ and ~/.claude/settings.json. Displays model, git context, token usage, effort level, 5h/7d usage limits, and active /loop count with next-fire time."
license: MIT
allowed-tools: Read Write Edit Glob Bash(mkdir:*) Bash(chmod:*) Bash(jq:*) Bash(python3:*) AskUserQuestion
metadata:
  author: andreadellacorte
---

# groove-admin-claude-statusline

Install a rich single-line Claude Code statusline. Writes three scripts to `~/.claude/hooks/` and merges config into `~/.claude/settings.json`.

Use `--uninstall` to remove. Use `--list` to show current status.

## Outcome

`~/.claude/settings.json` has `statusLine` pointing to the statusline script, plus PostToolUse and SessionEnd hooks to track active `/loop` cron jobs. The statusline shows on every Claude Code turn.

## What the statusline shows

```
claude-sonnet-4-6 | myrepo@main (+3 -1) | 42k/200k (21%) | effort: high | 5h 12% @8:00pm | 7d 3% @mar 16, 9:00am | 2 loops | check deployment @4:10pm
```

| Section | Description |
|---|---|
| Model | Display name of the active model |
| Repo@branch | CWD folder name, git branch, staged diff `+N -N` |
| Tokens | Used / total context, % used |
| Effort | Current effort level (low / med / high) |
| 5h / 7d | Rate-limit utilisation with reset time (cached 60s) |
| Loops | Count of active `/loop` crons + soonest-firing prompt and time |

## Steps

### `--list`

Read `~/.claude/settings.json`. Report whether `statusLine` is set, and whether each hook script exists in `~/.claude/hooks/`. Exit.

### `--uninstall`

Remove `statusLine` from `~/.claude/settings.json`. Remove the three `CronCreate|CronDelete` / `SessionEnd` hook entries added by this skill. Do not remove hook scripts (leave for manual cleanup). Report changes. Exit.

### Default (install)

1. Create `~/.claude/hooks/` if absent.

2. Write the three scripts below to `~/.claude/hooks/`. Never overwrite without showing a diff and confirming.

3. Make all three scripts executable (`chmod +x`).

4. Read `~/.claude/settings.json` (default `{}`). Merge in the `statusLine` entry and the two hook entries below. Preserve all other keys. Do not create duplicate entries.

5. Write `~/.claude/settings.json`.

6. Report:
   ```
   ✓ statusline.sh         → ~/.claude/hooks/statusline.sh
   ✓ cron-state.sh         → ~/.claude/hooks/cron-state.sh
   ✓ cron-state-clear.sh   → ~/.claude/hooks/cron-state-clear.sh
   ✓ ~/.claude/settings.json updated
   Note: restart Claude Code for changes to take effect.
   ```

## Scripts

The three shell scripts live in `scripts/` per the [Agent Skills specification](https://agentskills.io/specification#scripts):

| Script | Installed to | Purpose |
|---|---|---|
| `scripts/statusline.sh` | `~/.claude/hooks/statusline.sh` | Main statusline renderer |
| `scripts/cron-state.sh` | `~/.claude/hooks/cron-state.sh` | Tracks `/loop` cron jobs in `/tmp/claude/loops.json` |
| `scripts/cron-state-clear.sh` | `~/.claude/hooks/cron-state-clear.sh` | Clears loop state on session end |

Copy each script from `scripts/` to `~/.claude/hooks/`. Never overwrite an existing script without showing a diff and confirming.

## `~/.claude/settings.json` entries

Merge these into the existing settings. Preserve all other keys. Do not create duplicates.

```json
{
  "statusLine": {
    "type": "command",
    "command": "~/.claude/hooks/statusline.sh"
  },
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "CronCreate|CronDelete",
        "hooks": [
          {
            "type": "command",
            "command": "~/.claude/hooks/cron-state.sh",
            "async": true
          }
        ]
      }
    ],
    "SessionEnd": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "~/.claude/hooks/cron-state-clear.sh",
            "async": true
          }
        ]
      }
    ]
  }
}
```

## Constraints

- Write to `~/.claude/hooks/` (user-global), not `.claude/` (project-local)
- Never overwrite an existing script without showing a diff and confirming
- Never discard existing keys in `~/.claude/settings.json`
- Requires: `jq`, `curl`, `python3`, `git` (all standard on macOS/Linux)
- The 5h/7d usage section requires a Claude Pro/Max OAuth session; it silently omits if no token is found
- After install: restart Claude Code for the statusLine and hooks to take effect

© andreadellacorte · MIT · andreadellacorte/groove

Similar skills

All skills for Agent setup: memory, context, orchestration →

From the same set13

groove-work-plan Researches your codebase and writes a concrete implementation plan with ordered steps, file paths and function names. Meant to run after brainstorming. CX Codex +1 544installs groove-work-compound This skill documents lessons after a review or planning session, updates project rules and templates, and traces root causes of mistakes. CX Codex +1 540installs groove-work-exec This skill takes a finished implementation plan and writes the code, tests and docs for it, logging progress in your task backend. Use it once planning is done. CX Codex +1 536installs groove-admin-update Pulls the latest groove skills and applies pending migrations to your local groove state. Useful when a new release lands but your config and memory are still on the old one. CX Codex +1 528installs groove-admin-cursor-hooks Registers groove's native Cursor hooks in .cursor/hooks.json: context re-priming after compaction, end-of-day reminders, a git commit buffer and managed-path protection. CX Codex +1 518installs groove-utilities-memory-graduate Promotes a stable workflow insight from .groove/memory/learned/ into AGENTS.md, so the rule applies to every future session without running prime. CX Codex +1 510installs groove-groovebook-publish This skill sends a workflow learning from your project to the shared groovebook repo as a pull request. Handy after groove-work-compound, when a finding deserves a wider audience. CX Codex +1 506installs groove-utilities-onboard Writes a GROOVE.md at the project root so a new contributor knows which commands to run and where logs live. Handy when someone joins a groove project. CX Codex +1 505installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor