Repository navigation
[Bug]: Cmd+Escape does not stop a running turn despite a loaded Thread: Stop binding #14100
Description
Activity
- addedbugSomething is broken or behaving incorrectly.Something is broken or behaving incorrectly.needs-triageIssue needs maintainer review and initial categorization.Issue needs maintainer review and initial categorization.
on Sep 28, 2026 Triage
The
thread.stopbinding is loaded. Settings showing Thread: Stop as ⌘Esc is themod+escaperule, and that rule is what the desktop app dispatches. The Stop button does not use a separate path: once a matching keydown arrives, both call the same interrupt. A ⌘Esc keydown resolves tothread.stopwhen the terminal is not focused.Plain Esc doing nothing is expected with this rule.
thread.stophas no default shortcut, so only ⌘Esc is bound. An open change, #12670, would make plain Esc the default.On macOS 26, ⌘Esc is also the system Game Overlay shortcut (System Settings → Keyboard → Keyboard Shortcuts → Game Controllers, or Mission Control). When that shortcut is active, macOS takes the key before T3 Code sees a keydown. The binding still shows in Settings, and the Stop button still works. It is most aggressive while a game is the front app; on some Tahoe builds it also swallows the chord with no overlay.
Two checks separate that from an app bug:
- Disable or rebind Game Overlay, focus the thread rather than the terminal (
when: "!terminalFocus"ignores the shortcut while the terminal is focused), start a turn, and press ⌘Esc again. - If it still does nothing, put a chord macOS does not reserve on the same command, for example
"key": "mod+.", and try that during a turn. The keybinding editor treats Esc as cancel-recording, so Esc chords have to be written inkeybindings.json, as you already did.
If step 2 stops the turn and step 1 still does not, this is the system shortcut. If step 2 also does nothing, reply with that and with whether other thread shortcuts (⌘J, ⌘D) still work during the turn.
- Disable or rebind Game Overlay, focus the thread rather than the terminal (
- addedneeds more infoInitial triage showed no bug. Awaiting more infoInitial triage showed no bug. Awaiting more infovia-triageFiled through npx t3 triageFiled through npx t3 triageand removedbugSomething is broken or behaving incorrectly.Something is broken or behaving incorrectly.needs-triageIssue needs maintainer review and initial categorization.Issue needs maintainer review and initial categorization.
on Sep 28, 2026 thanks @juliusmarminge ! Indeed seems that was the problem. Switching the keybinding to another combination fixed it.
Before submitting
Area
apps/desktop
Steps to reproduce
In regular T3 Code Alpha on macOS, Cmd+Escape does not interrupt a running agent. Clicking the square Stop button works. Pressing ESC or cmd+ESC does nothing.
{"key":"mod+escape","command":"thread.stop","when":"!terminalFocus"}Expected behavior
The configured shortcut interrupts the turn, like the Stop button.
Actual behavior
The turn keeps on going, no effect of ESC/cmd+ESC.
Impact
Minor bug or occasional failure
Version or commit
v0.0.42
Environment
macOS 26.6.2, build 25G83, Apple Silicon arm64. Regular desktop app with its local backend running
Logs or stack traces
Screenshots, recordings, or supporting files
No response
Workaround
No response