agentleFS
bouobbouob/claude-statusline/skills/customize/SKILL.md

customize

Skill2 starsChanged 6 months agoMITView on GitHub

This skill should be used when the user asks to customize claude-statusline appearance, or mentions: change theme, switch theme, bar style, separator, statusline colors, dracula, nord, catppuccin, hide segment, show segment, rate-limit settings, rainbow settings, responsive.

42 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use add-discord, add-slack and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • MicrosoftSkill

    add-discord

    Add Discord bot channel integration via Chat SDK.

    Also in 11 projects that use this

  • MicrosoftSkill

    add-slack

    Add Slack channel integration via Chat SDK.

    Also in 11 projects that use this

  • +10 more from microsoft

The file

We split this skill into the rules it gives an agent

8 rules. 0 are common, 7 are distinctive, and 1 is very specific to this project.

  • 0

    Common

    Most of the 39 edited versions we read keep these.

  • 7

    Distinctive

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Read valid themes, separators, bar styles, color keys, and segment names from the source:

    line 36
  2. Very specific:

    Ask whether to show rate-limit segment, 5h/7d/both, show bar and reset time.

    line 96
  3. Distinctive:

    Ask which segments to hide.

    line 100
  4. Distinctive:

    Ask if the user wants custom colors.

    line 104
  5. Distinctive:

    Read the active config file and display:

    line 154
  6. Distinctive:

    After any write, rebuild the plugin:

    line 163
  7. Distinctive:

    Always Read the config file before Write — the user may have hand-edited it.

    line 173
  8. Distinctive:

    Only include fields the user wants to override — omitted fields use theme defaults.

    line 175

“Common” is measured: kept by at least 6 in 10 of the 39 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

customize

Customize claude-statusline themes, styles, colors, and segments without manually editing JSON.

Dispatch on $ARGUMENTS

ConditionMode
No argumentsWizard — interactive step-by-step setup
Contains "show", "current", "status", "list"View — display current config
Other textQuick edit — parse intent and update fields

Config files

Priority order (first found wins on read; user-level is default write target):

  1. ./.claude-statusline.json — project-level
  2. ~/.claude/claude-statusline.json — user-level

Valid values

Read valid themes, separators, bar styles, color keys, and segment names from the source:

  • Themes: ${CLAUDE_SKILL_DIR}/../../src/themes/ (one file per theme)
  • Defaults: ${CLAUDE_SKILL_DIR}/../../src/config/defaults.ts
  • Types: ${CLAUDE_SKILL_DIR}/../../src/config/types.ts

Color format: #RGB or #RRGGBB (hex). Validate with /^#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6})$/.

Segments (12)

model, context-bar, session, git, project, worktree, rate-limit, promotion, status, pr, agent, effort

pr, agent, and effort render only when their stdin field is present (recent Claude Code, approx v2.1.200+).

Each segment supports enabled: boolean. Some have additional sub-options:

SegmentSub-options
context-barwidth, showPercentage
sessionshowCost, showDuration, showLines
rate-limitcacheSeconds, showFiveHour, showSevenDay, showResetTime, showBar, barWidth, barStyle, rainbow
statuscacheTtlSeconds
effortshowThinking

Rainbow behavior

The progress bar automatically shifts to rainbow gradient. It also triggers when stdin reports exceeds_200k_tokens. Configurable via rainbow object:

FieldTypeDefaultEffect
contextThresholdnumber90Context % that triggers rainbow
onAgentbooleanfalseRainbow during --agent sessions (opt-in)
onWorktreebooleanfalseRainbow when in worktree (opt-in)
alwaysOnbooleanfalseForce rainbow regardless of context

Wizard mode (no arguments)

Walk the user through setup step-by-step using AskUserQuestion.

Step 1: Choose theme

Render all themes in the terminal first:

node "${CLAUDE_SKILL_DIR}/../../scripts/showcase.js" 2>/dev/null | head -13

Then present themes via AskUserQuestion. Enter to skip = keep current/default.

Step 2: Choose bar style

Options: block, dot, line, braille.

Step 3: Choose separator

Options: powerline, rounded, slash, minimal, none.

Step 4: Rate limit settings

Ask whether to show rate-limit segment, 5h/7d/both, show bar and reset time.

Step 5: Segment visibility

Ask which segments to hide. List all 12 segment names. Skip = keep all enabled.

Step 6: Custom colors (optional)

Ask if the user wants custom colors. Yes → list color keys to customize. No → skip.

Step 7: Preview and confirm

Show the complete config JSON for review. After confirmation, write and rebuild.


Quick edit mode (with arguments)

Workflow

  1. Parse intent from $ARGUMENTS
  2. Read existing config — try project-level, then user-level, fall back to {}
  3. Validate — check against valid values from source
  4. Merge — modify only specified fields, preserve the rest
  5. Write — default to ~/.claude/claude-statusline.json
  6. Rebuild and report changed fields

Intent mapping

User saysField
dracula / theme draculatheme
dot / bar style dotbarStyle
powerline / separator powerlineseparator
X + Y + Z (joined with +)Auto-detect each value's field
Opus color #FF6B6Bcolors.opus
hide git / show worktree / disable modelsegments.<name>.enabled
disable rate-limitsegments.rate-limit.enabled = false
disable 7d / disable 5hsegments.rate-limit.showSevenDay/showFiveHour
hide rate-limit bar / disable bar / text onlysegments.rate-limit.showBar = false
hide reset timesegments.rate-limit.showResetTime = false
rate-limit bar width 20segments.rate-limit.barWidth = 20
hide cost / hide durationsegments.session.showCost/showDuration
show lines / hide linessegments.session.showLines
hide pr / hide agent / hide effortsegments.<name>.enabled = false
hide thinking markersegments.effort.showThinking = false
hide percentagesegments.context-bar.showPercentage = false
bar width 30segments.context-bar.width = 30
rainbow always on / rainbow offrainbow.alwaysOn
rainbow threshold 80rainbow.contextThreshold = 80
responsive offresponsive = false

Combo syntax: dracula + dot + powerline sets three fields at once.


View mode

Read the active config file and display:

  • Config file path in use
  • All non-default settings
  • Enabled/disabled status for each segment

Rebuild

After any write, rebuild the plugin:

cd "${CLAUDE_SKILL_DIR}/../.." && npm run build

Implementation notes

  • Always Read the config file before Write — the user may have hand-edited it.
  • Missing config file means defaults; treat ENOENT as {}, not an error.
  • Only include fields the user wants to override — omitted fields use theme defaults.
  • Pretty-print JSON with 2-space indent for hand-editability.
  • Respond in the user's language.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.