What happened?
Summary
When TERM=cygwin, entire status (and likely other commands) writes the Unicode character U+2190 LEFTWARDS ARROW (UTF-8 e2 86 90) instead of the real ESC byte (0x1B) when emitting ANSI escape sequences. As a result, the terminal shows literals like ←[32m●←[m instead of colored output.
Environment
- OS: Windows 11
- Shell: Cygwin bash (
/usr/bin/bash)
- Terminal: WezTerm
TERM=cygwin
TERM_PROGRAM=WezTerm
- entire version:
$ entire version
Entire CLI 0.6.2 (1802c9df)
Go version: go1.26.2
OS/Arch: windows/amd64
Steps to reproduce
Actual output
←[32m●←[m ←[1mEnabled←[m←[2m · ←[mmanual-commit←[2m · ←[mbranch ←[36mmaster←[m
←[2m Agents · ←[mClaude Code
Expected output
Colored text.
Entire CLI version
0.6.2 (1802c9d)
OS and architecture
Windows 11
Agent
Claude Code
Terminal
WezTerm
Logs / debug output
Diagnostics
The same environment renders ANSI from other tools correctly, so the
terminal/ANSI pipeline is fine:
$ ls --color=always | head -3 | xxd | head -2
00000000: 1b5b 306d 1b5b 3031 3b33 346d 646f 636b .[0m.[01;34mdock
00000010: 6572 2d63 6f6d 706f 7365 2d64 6576 1b5b er-compose-dev.[
ls emits proper ESC 0x1b. WezTerm interprets it as expected.
Additional context
No response
What happened?
Summary
When
TERM=cygwin,entire status(and likely other commands) writes the Unicode characterU+2190 LEFTWARDS ARROW(UTF-8e2 86 90) instead of the real ESC byte (0x1B) when emitting ANSI escape sequences. As a result, the terminal shows literals like←[32m●←[minstead of colored output.Environment
/usr/bin/bash)TERM=cygwinTERM_PROGRAM=WezTermSteps to reproduce
Actual output
Expected output
Colored text.
Entire CLI version
0.6.2 (1802c9d)
OS and architecture
Windows 11
Agent
Claude Code
Terminal
WezTerm
Logs / debug output
Additional context
No response