[Bug] StatusLine agent generates incompatible bash script for Windows Git Bash environments

Resolved 💬 3 comments Opened Mar 21, 2026 by patrikhuber Closed Apr 18, 2026

Bug Description
StatusLine setup doesn't work on Windows (Windows 11, Windows Terminal, PowerShell 7, Git Bash)

The /statusline agent generates a bash script that has multiple Windows-specific failures: (1) hostname -s flag doesn't work in Git Bash, (2) echo "$input" corrupts the JSON
because Git Bash's echo interprets the \\ backslashes in Windows paths, breaking all jq field extraction after the initial whoami/hostname, (3) the first() jq function may not be
available in the jq version bundled with Git for Windows, (4) replacing echo with printf '%s' also did not fix the JSON parsing -- jq still fails to extract fields like
workspace.current_dir, model.display_name, and context_window.used_percentage, despite them being present in the input JSON. After multiple rounds of debugging, the script could
never reliably display anything beyond username and hostname.

Additionally, the effort level (e.g. "high", "medium") is not included in the statusLine JSON input, even though it's a user-configured setting (effortLevel in settings.json) and
is displayed in the built-in spinner/logo. The model object only contains id and display_name. It would be helpful to include the active effort level in the statusLine input so
custom status lines can display it.

Environment: Windows 11 Pro, Windows Terminal, PowerShell 7, Git Bash (via Git for Windows), Claude Code v2.1.81, Opus 4.6 (1M context).

Environment Info

  • Platform: win32
  • Terminal: windows-terminal
  • Version: 2.1.81
  • Feedback ID: cdc1e48f-15e7-41a6-8ca9-68c3e75be48c

Errors

[]

View original on GitHub ↗

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