Skip to content

Terminal Hyperlinks

Claudex supports OSC 8 terminal hyperlinks, making file paths, URLs, and references in Claude Code output clickable in supported terminals.

OSC 8 is a terminal escape sequence standard that embeds hyperlinks directly in terminal output. When supported, clicking a link opens it in the default handler (browser for URLs, editor for file paths).

The escape sequence format:

\x1b]8;;URL\x07DISPLAY_TEXT\x1b]8;;\x07
# In config.toml (global setting)
hyperlinks = "auto" # "auto" | true | false
ValueBehavior
"auto"Detect terminal support automatically (default)
trueForce enable hyperlinks
falseForce disable hyperlinks

You can also enable hyperlinks per-session via the CLI flag:

Terminal window
claudex run grok --hyperlinks

When hyperlinks = "auto", Claudex checks the following in order:

PriorityCheckResult
1FORCE_HYPERLINKS=1 env varEnable
2Not a TTYDisable
3DOMTERM env var setEnable
4TERM_PROGRAM = iTerm.appEnable
5TERM_PROGRAM = WezTermEnable
6TERM_PROGRAM = vscodeEnable
7TERM_PROGRAM = TabbyEnable
8TERM_PROGRAM = HyperEnable
9TERM_PROGRAM = minttyEnable
10TERM_PROGRAM = WarpTerminalEnable
11TERM = xterm-kittyEnable
12TERM = xterm-ghosttyEnable
13VTE_VERSION >= 5000Enable
14WT_SESSION env var set (Windows Terminal)Enable
15None of the aboveDisable (safe default)
TerminalPlatformDetection Method
iTerm2macOSTERM_PROGRAM
WezTermCross-platformTERM_PROGRAM
KittyCross-platformTERM (xterm-kitty)
GhosttyCross-platformTERM (xterm-ghostty)
VS Code TerminalCross-platformTERM_PROGRAM
Windows TerminalWindowsWT_SESSION
GNOME TerminalLinuxVTE_VERSION
TabbyCross-platformTERM_PROGRAM
HyperCross-platformTERM_PROGRAM
mintty (Git Bash)WindowsTERM_PROGRAM
WarpTerminalmacOSTERM_PROGRAM
DomTermCross-platformDOMTERM

When hyperlinks are enabled on Unix systems, Claudex spawns the Claude Code process under a PTY (pseudo-terminal) proxy. This allows Claudex to intercept and enhance terminal output with hyperlinks while preserving the full terminal experience (colors, cursor movement, etc.).

The PTY proxy is transparent to the user. It is only activated for interactive sessions (non-interactive mode with --print skips the PTY).

For terminals not in the auto-detection list, you can force hyperlinks:

Terminal window
# Via environment variable
FORCE_HYPERLINKS=1 claudex run grok
# Via config
hyperlinks = true
# Via CLI flag
claudex run grok --hyperlinks

To force disable (e.g., when piping output):

hyperlinks = false