Skip to content

Persistent Statusline bar (inspired by Claude Code) #2266

@nnamuhcs

Description

@nnamuhcs

Describe the feature or problem you'd like to solve

No response

Proposed solution

Claude Code ships a statusline today (https://code.claude.com/docs/en/statusline) — a persistent bottom bar that runs a user-defined shell script.

Proposed design for Copilot CLI:

  • Config: statusLine field in ~/.copilot/config.json pointing to a shell script or inline command
  • Data: Script receives JSON session data on stdin (model name, context %, cwd, git branch, session cost)
  • Display: Persistent bottom bar showing whatever the script prints (supports ANSI colors, multi-line)
  • Command: /statusline to generate scripts from natural language
  • Updates: Refresh after each assistant message (debounced ~300ms)

Example prompts or workflows

  1. /statusline show model name and context percentage with a progress bar
  2. /statusline show git branch, modified file count, and session cost
  3. A statusline.sh that color-codes context usage: green <50%, yellow 50-80%, red >80%
  4. Multi-line bar: git info on line 1, context + cost on line 2
  5. Inline jq command: jq -r '"[\(.model.display_name)] \(.context_window.used_percentage)% context"'

Additional context

This would help avoid surprise context compactions, distinguish multiple sessions at a glance, and keep git branch always visible when switching repos.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions