Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>Task-Based Tab WorkspacesNew to Visual Studio Code? Get it now.
Task-Based Tab Workspaces

Task-Based Tab Workspaces

ActiveClientMods

|
1 install
| (0) | Free
Save and restore specific sets of open tabs and editor layouts to switch seamlessly between different tasks.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Task-Based Tab Workspaces

Save the exact set of editor tabs and split layout you're working with, then restore it later with a single click. Switch between tasks — a feature, a bug, a code review, docs — without losing your place or hunting for files.

Features

  • Save your current tabs as a named workspace, capturing every open editor, including pinned and active state.
  • Full 2D layout fidelity — the complete editor grid is captured and rebuilt, not just a flat list of columns. Arbitrarily nested splits (for example, one file on the left with two stacked rows on the right, or a 2×2 grid) are restored to the exact same shape and proportions.
  • Restore in one click from the dedicated Tab Workspaces sidebar. The extension closes what's open and reopens the saved layout in place.
  • Update, rename and delete workspaces from inline actions on each item.
  • Graceful handling of missing files — deleted or moved files are detected up front, reported, and skipped instead of breaking the restore.
  • Broad editor support — plain text files, diff editors, custom editors (e.g. image previews), notebooks, and Markdown previews (the built-in preview, and best-effort for Markdown Preview Enhanced) are all captured and reopened. Terminals and other webviews can't be reliably reopened by any extension, so they're recorded as unsupported and skipped on restore.
  • Per-project storage — workspaces are kept in VS Code's workspaceState, so each project has its own set and nothing is written into your source tree.

Usage

  1. Open the Tab Workspaces view from the Activity Bar.
  2. Arrange your editors the way you like them.
  3. Click Save Current Tabs as New Workspace (the save icon in the view title, or the command of the same name) and give it a name.
  4. Switch tasks freely. When you want your layout back, click a saved workspace (or its Restore action) and your tabs reopen in place.

Commands

All commands are available from the Command Palette under Tab Workspaces:

Command Description
Save Current Tabs as New Workspace Capture the current layout under a new name.
Restore Workspace Close current tabs and reopen a saved workspace.
Update Workspace with Current Tabs Overwrite a saved workspace with what's open now.
Rename Workspace Rename a saved workspace.
Delete Workspace Remove a saved workspace.

Requirements

  • VS Code 1.125.0 or newer (uses the window.tabGroups Tab API).

How it works

The extension reads vscode.window.tabGroups to serialize each tab's input (URI, view type, diff sides, notebook type) together with its view column and pinned/active flags, and reads the full editor grid via the vscode.getEditorLayout command. Restoring reverses the process: it closes all open tabs, rebuilds the exact grid with vscode.setEditorLayout, then reopens each saved input in its original group using the appropriate VS Code command (showTextDocument, vscode.diff, vscode.openWith, showNotebookDocument).

Markdown previews are webview tabs that do not expose their source document, so the extension recovers it by matching the preview's tab label against the other files in the same workspace, then re-runs the preview command (markdown.showPreview) in the correct column.

Known limitations

  • Terminals and non-Markdown webview tabs cannot be programmatically reopened and are skipped on restore.
  • A Markdown preview can only be restored when its source file is also part of the saved workspace (so its label can be resolved to a real file).
  • Restore reopens tabs but does not attempt to reproduce exact scroll position or cursor selection.

Release Notes

See CHANGELOG.md.

License

MIT © ActiveClientMods

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft