statusline-setup agent should show available JSON fields

Resolved 💬 3 comments Opened Jan 12, 2026 by davidrimshnick Closed Jan 16, 2026

Feature Request

When running /statusline to configure a custom statusline, the setup agent should display the available JSON fields that are passed to the statusline command.

Problem:
Currently, users have to reverse-engineer what fields are available by:

  1. Creating a debug script to capture the JSON
  2. Manually inspecting the output
  3. Trial and error to find correct field paths

Proposed Solution:
The /statusline setup flow should show users the available JSON schema, something like:

Available fields for your statusline:

session_id              - Current session UUID
cwd                     - Current working directory
model.id                - Model identifier (e.g., claude-opus-4-5...)
model.display_name      - Model display name
cost.total_cost_usd     - Cumulative session cost
cost.total_duration_ms  - Total session duration
context_window.context_window_size           - Max tokens (e.g., 200000)
context_window.current_usage.input_tokens    - Current input tokens
context_window.current_usage.output_tokens   - Current output tokens
context_window.current_usage.cache_read_input_tokens      - Cached tokens
context_window.current_usage.cache_creation_input_tokens  - New cache tokens
output_style.name       - Current output style
version                 - Claude Code version

This would save users significant debugging time when creating custom statuslines.

Additional context:
Related to #12520 which requests additional fields. Even with current fields, discoverability is poor.

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗