Audit Claude Code status lines for quality and cross-platform compatibility. Use when creating or validating custom status line scripts, or troubleshooting terminal output issues.
Validates status line scripts for quality and cross-platform compatibility.
/plugin marketplace add melodic-software/claude-code-plugins/plugin install claude-code-observability@melodic-software--forceAudit Claude Code status line configurations for quality and cross-platform compatibility.
Before auditing, initialize the environment:
.claude/temp/) exists.The status-line-customization skill provides authoritative validation guidance (auto-loaded when this command runs).
| Argument | Description |
|---|---|
| (none) | Audit all discoverable status line scripts |
--force | Audit regardless of modification status |
Check for statusLine settings in both project and user settings files.
For project settings, read .claude/settings.json and extract any statusLine value.
For user settings, detect the platform first: on Unix-like systems check ~/.claude/settings.json, on Windows check %USERPROFILE%\.claude\settings.json. Then extract any statusLine value.
Each statusLine value points to a script file. Build a list of discovered scripts with their scope (project or user) and full path.
If no custom status lines are configured, report this and provide guidance on how to create one.
Check if the --force flag is present in the command arguments. Build the audit queue based on discovered scripts and the force flag.
Display audit mode (SMART or FORCE), scripts discovered, and list each with scope and last modified date.
For each script, spawn the statusline-auditor subagent with the following context:
Run subagents in parallel when multiple scripts exist.
Subagents write findings to .claude/temp/ as both JSON (for recovery/aggregation) and markdown (for human review). The main conversation thread collects results and updates audit logs using its Write/Edit tools.
Report total scripts audited, results by scope, and details table. List cross-platform or JSON handling issues with remediation steps.
Status line scripts must accept JSON input via stdin, parse it correctly, output formatted terminal text, and work across Windows (Git Bash/PowerShell), macOS, and Linux.
| Platform | Settings Location |
|---|---|
| Unix | ~/.claude/settings.json |
| Windows | %USERPROFILE%\.claude\settings.json |
Use ANSI escape codes correctly with fallbacks for terminals without color support.
All audit results are written to .claude/audit/statuslines.md.
Use /audit-log statuslines to view current audit status.
User: /audit-statuslines
Claude: Discovering status line configurations...
## Audit Plan
**Mode**: SMART
**Scripts discovered**: 2
1. [project] .claude/statusline.sh
2. [user] ~/scripts/my-statusline.py
[Spawns statusline-auditor subagents]
## Audit Complete
| Scope | Script | Result | Score |
| --- | --- | --- | --- |
| project | statusline.sh | PASS | 100/100 |
| user | my-statusline.py | PASS | 98/100 |
User: /audit-statuslines --force
Claude: Auditing all scripts (force mode)...