Skip to content

Statusline hyperlinks corrupt when Claude Code injects status text #172

Description

@evansenter

Problem

Claude Code injects status text (e.g., "Now using extra usage") into the statusline output, which corrupts OSC 8 hyperlink escape sequences. The URL portion becomes visible as text.

Screenshot:
The issue hyperlink →#270 becomes →Now using extra usageai/issues/270#270

Root Cause (suspected)

OSC 8 format: ESC]8;;URL ST TEXT ESC]8;; ST

If CC injects text between the URL and string terminator (\e\\), the terminal misinterprets the sequence and displays the URL as visible text.

Current Workaround

Added STATUSLINE_NO_LINKS env var to disable hyperlinks:

export STATUSLINE_NO_LINKS=1

Investigation Needed

  1. Confirm hyperlinks are the culprit (test with STATUSLINE_NO_LINKS=1)
  2. Try \a (BEL) as string terminator instead of \e\\
  3. Understand how/where CC injects its status text
  4. Consider double-buffering approach if atomic printf isn't sufficient

Files

  • home/.claude/statusline-command.sh - hyperlink generation

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions