Problem
Deleting a workspace (git-worktree sandbox) can only be initiated by clicking: sidebar workspace row → ⋯ menu → Delete. When I'm working in a session inside that workspace, there's no way to initiate deletion from where I am — I have to leave the keyboard, find the row in the sidebar, and open its menu. Unlike workspace.new and workspace.toggle, there's no workspace.delete command in the registry.
Proposal
Add a workspace.delete command (with an optional default keybind, user-editable) that targets the current workspace and opens the existing confirmation dialog. That lets me initiate deletion from the active session without going to the sidebar menu.
The confirmation flow already exists (DialogDeleteWorkspace → deleteWorkspace() in packages/app/src/pages/layout.tsx, which calls server worktree.remove); this just needs a command entry point that resolves the active workspace and triggers it. The command should be a no-op / disabled for the project root, matching the current dialog's behavior.
Notes
Separate from #25425 (Enter doesn't confirm the delete dialog) — that's about confirming the dialog once open; this is about initiating deletion via command/keyboard.
Problem
Deleting a workspace (git-worktree sandbox) can only be initiated by clicking: sidebar workspace row → ⋯ menu → Delete. When I'm working in a session inside that workspace, there's no way to initiate deletion from where I am — I have to leave the keyboard, find the row in the sidebar, and open its menu. Unlike
workspace.newandworkspace.toggle, there's noworkspace.deletecommand in the registry.Proposal
Add a
workspace.deletecommand (with an optional default keybind, user-editable) that targets the current workspace and opens the existing confirmation dialog. That lets me initiate deletion from the active session without going to the sidebar menu.The confirmation flow already exists (
DialogDeleteWorkspace→deleteWorkspace()inpackages/app/src/pages/layout.tsx, which calls serverworktree.remove); this just needs a command entry point that resolves the active workspace and triggers it. The command should be a no-op / disabled for the project root, matching the current dialog's behavior.Notes
Separate from #25425 (Enter doesn't confirm the delete dialog) — that's about confirming the dialog once open; this is about initiating deletion via command/keyboard.