Pimp My IDE / garage dispatchBack to garage
Dispatch 394 / process custody

Closing the window is not a stop signal.

VS Code 1.142 lets you stop one attached background shell. Its Agent Host can keep a turn alive after a project window closes. Those are different controls because they answer to different owners.

16 Oct 20266 minute readAgent safetyDocs inspected

The new stop control has a narrow job

VS Code 1.142 adds a stop action to the background-shell list for Copilot harness sessions. The release notes define the boundary: the action stops one attached shell that the agent started for its current request. The shell then leaves the list. Detached shells run independently and cannot be stopped from that interface.[1]

That narrow scope is good interface design. A stop control should name the thing it can stop. It should not imply that the session, host, or every process beneath them has ended.

A visible process is not the same as an owned process.

The window no longer owns every turn

The Agent Host is a dedicated process that owns supported agent sessions. VS Code documents that an active turn can continue after its project window closes while the Agent Host remains running. On a local desktop, the application must remain running. On a remote machine, both the machine and the process serving the session must remain running.[2]

The Local harness follows another rule. Its editor window owns the session, so closing that window stops ongoing work. Two sessions can look similar while their stop boundaries differ.

Client tools add another dependency. A host-owned session can survive a disconnected window, but browser tools and extension tools supplied by that client remain available only while the client stays connected. Session survival does not preserve every capability.

Sandboxing does not settle ownership

VS Code applies its agent sandbox to supported terminal commands and their child processes. The documentation also says that the sandbox is not a virtual machine or user-account boundary. It restricts file and network access. It does not tell you which interface owns a process or which stop action reaches it.[3]

Keep four records for long-running work: the process identifier, its owner, its execution host, and the action that stops it. Record detached work separately. If the interface cannot stop that work, show the command or system control that can.

Use stop verbs that match the mechanism

Use "close" for a view, "stop shell" for one attached command, "stop session" for the active work unit, and "stop host" for the process that owns host-backed sessions. Do not use "cancel" as a universal label.

The release also exposes the difference between hiding and deleting. VS Code session docs say that closing a chat tab hides it without deleting it, while deletion is permanent.[4] Interface copy should name whether an action changes visibility, work, or stored history.

Interactive makeover / stop map

Process tow yard

A generic red stop button hides scope. This native radio control joins each operator action to its owner, effect, and missing follow-up.

Choose an action

The selected action updates the custody route and a copyable review receipt.

Documented operator actions
Action / close windowEffect / view only
Project windowThe client view disconnects from the session.
Agent Host keeps runningThe active turn can continue while the desktop application and host remain running.
Stopped objectWindow view
Still activeHost-backed turn
View closed / work may continueCheck the session from another supported interface before assuming the turn ended.

Print the custody check

This receipt records the selected documented case. Replace the placeholders with live process evidence before an incident or handoff.