Skip to content

Title: Add statusLine support (custom command-based status bar in settings.json) #505

@Sandz472

Description

@Sandz472

Summary

Command Code currently has no equivalent of Claude Code's statusLine setting, which renders a custom command's stdout as a persistent status bar
at the bottom of the TUI. This is a popular Claude Code feature (see community projects like ccstatusline) and its absence is the main thing I
miss after switching.

Expected Behavior

What I'd like: support for a statusLine key in ~/.commandcode/settings.json (and project-level .commandcode/settings.json), mirroring Claude
Code's schema:

{
  "statusLine": {
    "type": "command",
    "command": "node /path/to/statusline.js",
    "padding": 0
  }
}

The command receives a JSON payload on stdin (model, cwd, transcript_path, cost, etc.) and its stdout is rendered as the status line, refreshed
each turn.

Why it matters: it enables always-on visibility of live context tokens / window %, git branch, model, and session cost — the signals that /context
and /usage only give on demand. Right now I have a working statusline script (ported from a Claude Code skill) sitting in settings.json being
silently ignored.

Suggested payload fields (aligning with the existing hook stdin schema where possible): session_id, transcript_path, cwd, model.display_name,
cost.total_cost_usd, exceeds_200k_tokens. Reusing the hook payload shape would let existing hook scripts double as statusline scripts with minimal
changes.

Actual Behavior

Command Code never reads the statusLine key. The block sitting in your ~/.commandcode/settings.json is parsed as valid JSON
but silently discarded — no error, no warning, no rendering. /reload and restarts make no difference because there's no code path that consumes
it. This is a Claude Code feature that Command Code hasn't implemented.

Steps to reproduce the issue

  1. Create/edit ~/.commandcode/settings.json and add a statusLine block: {
    "statusLine": {
    "type": "command",
    "command": "node "C:\Users\rasme\.commandcode\skills\context-monitor\scripts\statusline.js""
    }
    }
  2. Start a Command Code session (cmd) in any project, or run /reload in an existing one.
  3. Observe the TUI.

Command Code Version

Microsoft Windows [Version 10.0.26200.8655]
(c) Microsoft Corporation. All rights reserved.

C:\Dev\work\SSR Holdings\Sampu Dynamics\Tender Builder>

Operating System

Windows

Terminal/IDE

VSCode

Shell

cmd.exe

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No fields configured for Bug.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions