[Feature]: Keep terminal visible beside the turn diff while a run is active #9593
akshatsha5ill
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Before submitting
Area
apps/web
Problem or use case
When an agent turn finishes, I need two truths at once: what changed (turn diff in
DiffPanel) and whether it works (ThreadTerminalDraweroutput / preview). Today the right panel is single-active (activeSurfaceIdinrightPanelStore.ts:85), so opening the diff hides the terminal and I tab-switchterminal ↔ diff ↔ previewto confirm every change. The diff says what moved; only the running output says it passes.Proposed solution
Allow two existing right-panel surfaces to stay visible side-by-side, per thread, behind a default-off toggle. No new surfaces, no new backend, no workspace mode.
Original rough mock (boxes only, not from any product):
TODAY — right panel shows one surface at a time:
+-----------+-------------------------+
| thread | turn diff |
| chat | M src/auth.ts +12 -3 |
| | (terminal hidden |
| | behind its tab) |
+-----------+-------------------------+
PROPOSED — terminal pinned beside the diff:
+-----------+----------------+--------------+
| thread | terminal [*] | turn diff |
| chat | $ npm run dev | M src/auth.ts|
| | PASS 18/18 | +12 -3 |
+-----------+----------------+--------------+
Legend:
per-thread pin toggle (default off) in the terminal tab header.
embeddedmode, unchanged component.States
t3code:right-panel-state).subscribeTerminalEvents+getTurnDiffstreams.AGENTS.md).Why this matters
A diff without its running output can't answer "does it work?" Tiled agent-workspace tools show provider output beside the change summary for exactly this reason. This proposes only the minimal T3 version of that pattern: two surfaces we already have, visible together.
Smallest useful scope
terminalbesidediffonly. No preview tiling, no provider-PTY changes.packages/contractschange; no new vocabulary in the glossary.Alternatives considered
Agent/Code/Chatworkspace mode with a tiled grid — deliberately not proposed; that's a product-direction change and belongs nowhere near a first PR.Risks or tradeoffs
Relevant code context
apps/web/src/rightPanelStore.ts:28-85(RightPanelSurface, singleactiveSurfaceId)apps/web/src/components/ChatView.tsx:7506-7542(exclusivepreview ? ... : terminal ? ... : diff ? ...render chain)apps/web/src/components/RightPanelTabs.tsx:76-79(surface tab switching)Contribution
size:M, with before/after screenshots).All reactions