The grid solves a real problem.
Visual Studio Code 1.141 adds a two-dimensional grid to the Agents window. You can drag sessions into horizontal or vertical splits, resize panes, maximize one session, and return to the grid.[1] That is better than opening every session to discover which one finished, stalled, or needs input.
The same release adds filters for environment, harness, and creating application.[1] Those are useful labels because a local session, a cloud session, and a remote-host session can sit beside each other while reaching different machines.
Visibility is not ownership. A tiled pane needs a named workspace and landing route.
The active pane changes the controls.
VS Code documents one active session at a time. Selecting a pane changes the chat, Files view, Changes view, terminal and tasks, and browser state shown by the Agents window.[2] The blue outline is therefore more than a focus decoration. It is a scope switch.
A reviewer should be able to answer four questions before typing into the active pane. Which folder or worktree is attached? Which changes belong to this task? Are commands still running there? Who will review and land the result?
Conversation borders do not separate files.
VS Code's session documentation says each chat has its own history, title, status, and model selection. Chats in one session still share the same workspace and code isolation. Both chats can edit the same files.[3] A clean pane border can hide that shared write path.
A linked Git worktree gives its checkout a separate HEAD and index, but the Git manual says it remains attached to the same repository and shares everything except per-worktree files.[4] Use worktrees to separate file edits. Do not call them complete security boundaries.
Make the handoff travel with focus.
Put a compact marshalling card beside the grid. When focus moves, update the visible session name, workspace identity, change scope, running-command status, and landing owner together. The card should show missing fields without inventing evidence.
The control below drafts that card. It does not inspect VS Code, create a worktree, read a shell, or confirm a merge. Its job is to prevent an attractive grid from becoming four unlabeled write paths.