Skip to content

TUI input can be consumed by tool subprocesses #41612

Closed as not planned
Closed as not planned

Description

@mathew-cf

Description

The TUI and tool runtime share file descriptor 0. A custom tool or plugin that starts a subprocess with inherited stdin can consume keystrokes intended for the TUI, leaving the interface unresponsive or corrupted. Shell tool commands already ignore stdin, but other tool execution paths can still inherit it.

Plugins

Reproduces with a local custom tool that spawns a command with inherited stdin.

Steps to reproduce

  1. Add a custom tool that starts a subprocess which reads inherited stdin.
  2. Invoke the tool from the TUI.
  3. Type while the subprocess is waiting for input.
  4. The subprocess receives the keystrokes instead of the TUI.

Operating System

macOS and Linux; the same descriptor sharing applies on Windows.

Terminal

Any interactive terminal.

Activity

  1. github-actions commented on Oct 10, 2026

    @github-actions
    Contributor

    To stay organized issues are automatically closed after 60 days of no activity. If the issue is still relevant please open a new one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions