You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
P1: Upgrade Terminal from a piped command box to an interactive worktree terminal #1184
Audit #1180, 2026-09-10. Baseline: checkout 9fc8645; fetched origin/main bf6fb02 has identical relevant implementation. This is implementation backlog, not a shipped fix.
User problem
The pane cannot handle normal terminal work: interactive prompts, shell completion, foreground interruption, pagers, colored output and cursor control. Restart is the only interruption path and destroys shell state and scrollback.
Add an actual PTY and terminal renderer inside the existing pane layout, keeping one session per thread initially. Support raw input, resize, bounded scrollback, reconnect and explicit close through typed IPC. Batch output; avoid polling idle/hidden panes four times a second. Integrate correct execution-root/session ownership before expanding features.
Acceptance
Completion, an interactive read prompt and a pager work; ANSI colors/cursor rewrites render correctly.
Ctrl-C interrupts a foreground command while preserving a usable shell and its environment.
Pane resize updates terminal rows/columns.
Selection, copy/paste, keyboard focus and accessible labeling work.
Reattachment restores bounded output; no keystrokes/output cross threads.
Gap pass #1532 checked this against main @24d3c36b (v0.24.0): shipped in #1499 (dbedcf1, 16dc49e).
A real PTY via @lydell/node-pty, xterm-256color, a 5k-line scrollback that is replayed after restart, resize, copy, and an aria label (electron/terminal.js, src/components/TerminalPane.tsx).
SSH projects get a "not available" message instead of a local shell.
node-pty is bundled in package-app.sh and package-cross.sh.
Two small leftovers, each worth its own small issue: without the PTY addon, Ctrl-C does nothing (terminal.js:503); and on WSL the shell starts in the project root, which is tracked on #1183.
Activity
currentbits commentedon Oct 9, 2026
Gap pass #1532 checked this against main @24d3c36b (v0.24.0): shipped in #1499 (dbedcf1, 16dc49e).
@lydell/node-pty, xterm-256color, a 5k-line scrollback that is replayed after restart, resize, copy, and an aria label (electron/terminal.js,src/components/TerminalPane.tsx).package-app.shandpackage-cross.sh.Two small leftovers, each worth its own small issue: without the PTY addon, Ctrl-C does nothing (
terminal.js:503); and on WSL the shell starts in the project root, which is tracked on #1183.