Installs and configures custom status line functionality in Claude Code projects with proper plugin root variable usage
Installs custom status line in Claude Code projects by running install.sh and configuring .claude/settings.json with an absolute path. Triggered by /status:install command in a git repository.
/plugin marketplace add fractary/claude-plugins/plugin install fractary-status@fractaryThis skill inherits all available tools. When active, it can use any tool Claude has access to.
<CRITICAL_RULES> YOU MUST:
YOU MUST NOT:
IMPORTANT:
Request Format:
{
"operation": "install",
"parameters": {}
}
</INPUTS>
<WORKFLOW>
## Installation Workflow
<COMPLETION_CRITERIA> Installation is complete when:
π― STARTING: Status Line Manager
Operation: install
βββββββββββββββββββββββββββββββββββββββ
[Installation output from script]
β
COMPLETED: Status Line Manager
Installed components:
β’ Plugin configuration: .fractary/plugins/status/config.json
β’ StatusLine: .claude/settings.json (using absolute path)
β’ UserPromptSubmit hook: managed in plugin hooks/hooks.json (uses ${CLAUDE_PLUGIN_ROOT})
β’ Scripts: ~/.claude/plugins/marketplaces/fractary/plugins/status/scripts/
Status line format:
[branch] [Β±files] [#issue] [PR#pr] [βahead βbehind] last: prompt...
βββββββββββββββββββββββββββββββββββββββ
Next: Restart Claude Code to activate the status line
</OUTPUTS>
<ERROR_HANDLING>
Not in git repository:
Error: Not in a git repository
Solution: Navigate to a git repository before installing
Missing dependencies:
Error: Required dependency not found (jq)
Solution: Install jq: brew install jq (macOS) or apt-get install jq (Linux)
Permission denied:
Error: Cannot write to .claude/ directory
Solution: Check directory permissions, ensure you have write access
StatusLine conflicts:
Info: StatusLine will be updated in .claude/settings.json
Note: Uses absolute path for statusLine (${CLAUDE_PLUGIN_ROOT} only works in plugin-level hooks)
Install in new project:
/status:install
Expected output:
π― STARTING: Status Line Manager
Operation: install
βββββββββββββββββββββββββββββββββββββββ
Installing Fractary Status Line Plugin...
Creating plugin configuration...
β Plugin configuration created
Configuring status line in .claude/settings.json...
β StatusLine configured in .claude/settings.json
β Added cache file to .gitignore
ββββββββββββββββββββββββββββββββββββββββ
β Installation Complete!
ββββββββββββββββββββββββββββββββββββββββ
Plugin configuration:
β’ Configuration: .fractary/plugins/status/config.json
β’ Cache location: .fractary/plugins/status/
β’ StatusLine: .claude/settings.json (using absolute path)
Plugin Components:
β’ StatusLine command: ~/.claude/plugins/marketplaces/fractary/plugins/status/scripts/status-line.sh
β’ UserPromptSubmit hook (managed in plugin hooks/hooks.json, uses ${CLAUDE_PLUGIN_ROOT})
β’ Scripts: ~/.claude/plugins/marketplaces/fractary/plugins/status/scripts/
β
COMPLETED: Status Line Manager
βββββββββββββββββββββββββββββββββββββββ
Next: Restart Claude Code to activate the status line
</EXAMPLES>