ClipboardAddon() with the default provider (web/src/term.js) answers OSC 52 ? queries with navigator.clipboard.readText() and injects the result as input. With allow-passthrough on and set-clipboard on in share/tmux.conf, any output (a cat'd file, a log line) can read the workstation clipboard, write it, or spoof the devdesk: title.
Fix: a clipboard provider that never reads, allow-passthrough off, and set-clipboard external unless Claude needs OSC 52 writes.
_Source: engineering review, 2026-10-07._
`ClipboardAddon()` with the default provider (`web/src/term.js`) answers OSC 52 `?` queries with `navigator.clipboard.readText()` and injects the result as input. With `allow-passthrough on` and `set-clipboard on` in `share/tmux.conf`, any output (a cat'd file, a log line) can read the workstation clipboard, write it, or spoof the `devdesk:` title.
**Fix:** a clipboard provider that never reads, `allow-passthrough off`, and `set-clipboard external` unless Claude needs OSC 52 writes.
jared
added this to the v0.5.0 hardening + header/phone milestone 2026-10-07 20:04:27 -04:00
jared
added the security label 2026-10-07 20:04:27 -04:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Source: engineering review, 2026-10-07.
ClipboardAddon()with the default provider (web/src/term.js) answers OSC 52?queries withnavigator.clipboard.readText()and injects the result as input. Withallow-passthrough onandset-clipboard oninshare/tmux.conf, any output (a cat'd file, a log line) can read the workstation clipboard, write it, or spoof thedevdesk:title.Fix: a clipboard provider that never reads,
allow-passthrough off, andset-clipboard externalunless Claude needs OSC 52 writes.