From cairn
Use when the operator asks to enable the cairn statusline badge (the `⬡ cairn …` summary in Claude Code's status row), or when the SessionStart context flags `statusline_unset`. Writes a user-level `~/.claude/settings.json` `statusLine` entry that resolves the active plugin bundle via a shim file the plugin's SessionStart hook keeps current. One-time setup; survives plugin upgrades because the shim file's path is stable.
How this skill is triggered — by the user, by Claude, or both
Slash command
/cairn:cairn-statusline-setupThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You are wiring the operator's user-level Claude Code statusline to
You are wiring the operator's user-level Claude Code statusline to
the cairn bundle. Once configured, every Claude Code session shows
a one-line ⬡ cairn decisions:N inv:N <state> summary in the
prompt's status row.
This skill runs only on explicit operator request, or when the
SessionStart context included a statusline_unset warning. Do not
auto-invoke on session start without that signal.
Render:
Wire the cairn statusline into your user-level settings? It shows a one-line ground-state summary in every Claude Code session.
[a]set it up now[b]skip — you can run this skill later
AskUserQuestion. The question is the entire turn.
The plugin's SessionStart hook writes the bundle's current path to
~/.claude/plugins/cache/isaacriehm-cairn/.active-version-path on
every session open. The shim file is a single line: the absolute
path to the active dist/cli.mjs.
Verify it exists:
test -f ~/.claude/plugins/cache/isaacriehm-cairn/.active-version-path \
&& echo OK \
|| echo MISSING
If MISSING, the plugin hasn't run a SessionStart yet for this
project — surface:
Cairn's plugin hasn't fired SessionStart yet on this project. Open Claude Code in a cairn-adopted repo first; the shim file appears after the first session. Re-run this skill afterward.
End the turn.
Read ~/.claude/settings.json (create with {} if missing). Set the
statusLine entry to:
{
"statusLine": {
"type": "command",
"command": "node \"$(cat ~/.claude/plugins/cache/isaacriehm-cairn/.active-version-path)\" status-line"
}
}
Preserve any other top-level fields. Use the Edit tool with the
existing file content as old_string to do the merge atomically.
Statusline configured. Restart Claude Code to see the badge appear.
⬡ cairn decisions:N inv:N ready(or⚑when attention pending,◐during GC,●for active task).
~/.claude/plugins/cache/isaacriehm-cairn/cairn/0.2.0/).
Plugin upgrades change the version dir; the shim file abstracts
that away.~/.claude/settings.json outside the statusLine
field. Other fields are operator-owned.statusLine
entry without breaking existing config.npx claudepluginhub isaacriehm/cairn --plugin cairnProvides 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.