# Setup

> Configure statusline-tools status line and dependencies. TRIGGERS - statusline setup, install statusline, configure status bar, statusline deps.

- Skill: `terrylica/setup-8` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add terrylica/setup-8`
- Raw SKILL.md: https://api.skillmd.com/api/skills/terrylica/setup-8/raw
- Safety review: pending (external: skill-scanner PASS, skillspector CAUTION)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: terrylica (https://skillmd.com/u/terrylica)
- Updated: 2026-09-21
- Page: https://skillmd.com/skills/terrylica/setup-8

---


> **Prerequisite — `cc-plugin-root`.** This skill resolves its scripts with `cc-plugin-root <plugin>`
> (the `CLAUDE_PLUGIN_ROOT` placeholder is not a shell variable and expands to empty). If the command is missing, run
> `/itp:setup` (its first step installs it), or link it directly:
>
> ```bash
> mkdir -p ~/.local/bin && ln -sfn \
>   ~/.claude/plugins/marketplaces/cc-skills/scripts/cc-plugin-root ~/.local/bin/cc-plugin-root
> ```

> **Navigation**: [Plugin CLAUDE.md](../../CLAUDE.md) | [Root CLAUDE.md](../../../../CLAUDE.md)

# Status Line Setup

Manage custom status line installation and dependencies.

> **Self-Evolving Skill**: This skill improves through use. If instructions are wrong, parameters drifted, or a workaround was needed — fix this file immediately, don't defer. Only update for real, reproducible issues.

## Actions

| Action      | Description                                 |
| ----------- | ------------------------------------------- |
| `install`   | Install status line to settings.json        |
| `uninstall` | Remove status line from settings.json       |
| `status`    | Show current configuration and dependencies |
| `deps`      | Install dependencies (lychee) via mise      |

## Execution

### Skip Logic

- If action provided (`install`, `uninstall`, `status`) -> execute directly
- If no arguments -> check current status, then use AskUserQuestion flow

### Workflow

1. **Check Current State**: Run `status` to show current configuration
2. **Action Selection**: Use AskUserQuestion to select action:
   - "Install status line" -> configure settings.json
   - "Uninstall status line" -> remove configuration
   - "Just show status" -> display and exit
3. **Execute**: Run the management script
4. **Verify**: Confirm changes applied

### AskUserQuestion Flow (No Arguments)

When invoked without arguments, guide the user interactively:

```
Question: "What would you like to do with statusline-tools?"
Options:
  - "Install" -> "Install the custom status line to settings.json"
  - "Uninstall" -> "Remove the status line configuration"
  - "Status" -> "Show current configuration and dependencies"
```

### Direct Execution (With Arguments)

Parse `$ARGUMENTS` and run the management script:

```bash
/usr/bin/env bash << 'SETUP_SCRIPT_EOF'
PLUGIN_DIR="$(cc-plugin-root statusline-tools)"
ACTION="${ARGUMENTS:-status}"
bash "$PLUGIN_DIR/scripts/manage-statusline.sh" $ACTION
SETUP_SCRIPT_EOF
```

## Post-Action Reminder

After install/uninstall operations:

**IMPORTANT: Restart Claude Code session for changes to take effect.**

The statusLine is loaded at session start. Modifications to settings.json require a restart.

## Troubleshooting

| Issue                 | Cause                   | Solution                                |
| --------------------- | ----------------------- | --------------------------------------- |
| Status line not shown | Session not restarted   | Exit and restart Claude Code            |
| Settings file missing | ~/.claude doesn't exist | Create with `mkdir -p ~/.claude`        |
| Install fails         | Invalid settings.json   | Validate JSON with `jq . settings.json` |
| Script not found      | Plugin not installed    | Reinstall plugin from marketplace       |

## Post-Execution Reflection

After this skill completes, check before closing:

1. **Did the command succeed?** — If not, fix the instruction or error table that caused the failure.
2. **Did parameters or output change?** — If the underlying tool's interface drifted, update Usage examples and Parameters table to match.
3. **Was a workaround needed?** — If you had to improvise (different flags, extra steps), update this SKILL.md so the next invocation doesn't need the same workaround.

Only update if the issue is real and reproducible — not speculative.

