Documentation
¶
Overview ¶
Package passthrough executes a command in a target directory with stdio inherited from the calling process. Used by exec, diff, and from-spec verbs to hand off interactive subprocesses (agents, git-diff pagers, etc.).
Index ¶
Constants ¶
This section is empty.
Variables ¶
var OpenTTY = tty.Open
OpenTTY is the function used to acquire a controlling terminal for interactive subprocesses. Overridable in tests.
var StdioIsTTY = func() bool { return term.IsTerminal(0) && term.IsTerminal(1) && term.IsTerminal(2) }
StdioIsTTY reports whether all three standard streams are interactive terminals. When true, the child inherits them directly — required for Bun-compiled agents (e.g. Claude Code) which reject /dev/tty-opened fds when constructing node:tty WriteStreams on macOS (kqueue EINVAL), but work fine with directly-inherited terminal fds. Overridable in tests.
Functions ¶
This section is empty.
Types ¶
type OSRunner ¶
type OSRunner struct{}
OSRunner is the production implementation of Runner using os/exec.