Recognize TERM_PROGRAM=Kaku as hyperlink-capable (OSC 8)

Status Open
Reported on v2.1.280
Maintainer reply None cached
Activity 0 comments · opened Sep 25, 2026

Kaku is a macOS terminal derived from WezTerm, and I maintain it. It renders OSC 8 hyperlinks, but Claude Code never emits them there because Kaku sets TERM_PROGRAM=Kaku, which is not on the list of hyperlink-capable terminals. Links in assistant output then rely on the terminal's plain-text URL detection, and a long link that Claude Code wraps across lines opens truncated (tw93/Kaku#547).

What I checked (Claude Code 2.1.280, macOS)

  • Hyperlink support is decided from TERM_PROGRAM: WezTerm, iTerm.app, vscode and ghostty in the supports-hyperlinks check, then ghostty, Hyper, kitty, alacritty, iTerm.app and iTerm2. Kaku is in neither.
  • Kaku handles OSC 8: printf '\e]8;;https://example.com\e\\LABEL\e]8;;\e\\\n' shows a clickable LABEL with the URL hidden.
  • A global FORCE_HYPERLINK=1 is not a good workaround for users, because it skips the TTY check for every CLI built on supports-hyperlinks, so escape sequences end up in pipes and log files.

Request

Treat TERM_PROGRAM=Kaku as hyperlink-capable, the same way WezTerm is. #83508 covers the broader case of unrecognized terminals.

View original on GitHub ↗