From spindev-devenv
Install a compact Claude Code status line — `foldername | gitbranch | sandbox | ctx Nk (P%) | Model`. Runs an idempotent install script that drops a statusline helper at `~/.claude/statusline.sh` and wires it into `~/.claude/settings.json`. Use when the user asks to install this repo's status line, says "my status line", runs `/my-status-line`, or asks to customize their Claude Code status bar to show token-context usage and sandbox state.
How this skill is triggered — by the user, by Claude, or both
Slash command
/spindev-devenv:my-status-lineThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Thin skill. Real work is in `scripts/`. You orchestrate: install, verify,
Thin skill. Real work is in scripts/. You orchestrate: install, verify,
or uninstall.
A status line like:
dev-setup | main | sandbox | ctx 127k (12%) | Opus 4.7
Segments (left to right):
sandbox when $HSHELL=1 (the
hardened-shell sandbox). Segment omitted otherwise.1,000,000 for 1M-context
models (model id ends in [1m]), else 200,000.model.display_name with any trailing (1M context) /
[1M context] suffix stripped.Segments are joined with |.
/my-status-line →
scripts/install.sh. Idempotent; safe to re-run to pick up script
updates.scripts/install.sh --verify.scripts/uninstall.sh.Install copies both statusline.sh and statusline.py to
~/.claude/ (stable paths, survive plugin-cache version bumps) and
sets statusLine in ~/.claude/settings.json to run
bash ~/.claude/statusline.sh. The .sh is a thin wrapper that
execs the .py next to it; keeping them as separate files avoids
the python - <<HEREDOC stdin-consumption trap (Claude Code pipes
the statusLine JSON payload on stdin, which the heredoc would eat).
python3 (or python / py) on PATH. Used for JSON parsing by
both scripts. Portable across Linux/macOS/Windows Git Bash without
needing jq.git on PATH (only needed for the branch segment; missing git just
drops the segment).This skill is served from a read-only plugin cache
(~/.claude/plugins/cache/spindev-devenv@spinlockdevelopment/<version>/).
Edits there do not persist. Edit the authoritative copy at
plugins/spindev-devenv/skills/my-status-line/ in a clone of
spinlockdevelopment/dev-setup, commit (bringup: straight to main;
protected: feature branch + PR), push. Users re-run scripts/install.sh
after /plugin marketplace update to pick up the new script content.
Triggers for self-update:
statusline.sh parsing.[1m] →
extend the max detection in statusline.sh.$HSHELL=1 (e.g., Claude Code Web
sets a detectable env var) → add the new check.| File | Purpose |
|---|---|
scripts/statusline.sh | Thin bash wrapper. Locates python3/python/py and execs statusline.py next to it. |
scripts/statusline.py | The actual helper. Reads JSON on stdin, emits one status-line string. |
scripts/install.sh | Copies statusline.sh + statusline.py to ~/.claude/ and wires statusLine into ~/.claude/settings.json. --verify for read-only check. |
scripts/uninstall.sh | Removes the helper files and unsets statusLine in ~/.claude/settings.json. |
Provides behavioral guidelines to reduce common LLM coding mistakes, focusing on simplicity, surgical changes, assumption surfacing, and verifiable success criteria.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub spinlockdevelopment/dev-setup --plugin spindev-devenv