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
TUI becomes unresponsive upon running a non-terminating process such as a web server #682
When running a non-terminating process (like a web server) within the TUI, the interface becomes unresponsive to normal input. The ESC key, which should interrupt the process, has no effect even when pressed repeatedly.
Current Behavior
The TUI freezes when a non-terminating process is started
Pressing ESC repeatedly does nothing to regain control
Slash commands still function properly (e.g., /details toggles the details view, /models lists available models)
The only way to regain control is to kill the process from another terminal
Steps to Reproduce
Start opencode
Run a non-terminating process (e.g., a web server on port 5173)
Try to interrupt using ESC key - observe that it has no effect
Open a second terminal
Run lsof -i :5173 to find the PID of the server process
Execute kill $pid to terminate the process
Observe that opencode resumes normal operation
Expected Behavior
The ESC key (or another designated key combination) should interrupt the running process and return control to the TUI without requiring external intervention.
Activity
zkdiff commentedon Jul 4, 2025
Possibly related:

When this exception is raised, the same behavior arise. It seems there might be some overlap in the underlying issue, but not necessarily.
dkarter commentedon Jul 4, 2025
not sure if this is the same issue:
CleanShot.2025-07-04.at.14.14.00.mp4
John0x commentedon Aug 13, 2025
yeah, non terminating commands aren't supported yet, right?
rekram1-node commentedon Dec 28, 2025
[automated] Closing due to 90+ days of inactivity. Feel free to reopen if you still need this!
arshbot commentedon Dec 30, 2025
Experience this often, simple workaround is to instruct model to not run such commands and prompt user to run them.