Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>Tmux OpenerNew to Visual Studio Code? Get it now.
Tmux Opener

Tmux Opener

shirokuma-library

|
2 installs
| (0) | Free
Open or attach to tmux sessions named after the current workspace folder, in a dedicated terminal view in the Secondary Side Bar.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Tmux Opener

日本語

A tmux terminal that lives in VS Code's Secondary Side Bar. It opens — or re-attaches to — a session named after your workspace folder, and keeps as many extra sessions as you like.

Unlike other tmux extensions, this is not a wrapper around VS Code's Integrated Terminal. The view is its own terminal, so a tmux session and its window layout survive being detached, reattached, or reopened after a window reload.

Requirements

tmux must be installed and on your PATH.

Usage

Open the Tmux view from the Secondary Side Bar (the right-hand panel).

  • The toolbar at the top shows the current session name, a + ⌄ button to create sessions, and actions to show/hide the session list, kill the current session, and open settings.
  • The session list on the right works like VS Code's terminal tabs: click a session to switch to it, click × (or middle-click) to kill it, drag its edge to resize.
  • Only one session is attached at a time. Switching detaches the previous one; the session itself keeps running.
  • Opening the view attaches to the topmost session. Killing a session — or quitting it with exit — moves you to the next one.
  • Ctrl/Cmd+F opens a find bar. URLs in the output are clickable.
  • Copying works from tmux's own copy-mode (via OSC 52), and from a terminal selection made with Shift+drag or Option+drag. Ctrl/Cmd+C copies when text is selected, and passes through as SIGINT when it isn't.

The same actions are in the Command Palette under Tmux:.

Profiles

+ starts a plain shell session. The chevron beside it opens a dropdown of profiles — commands to run as the session itself, so quitting the command ends the session.

Profiles for Claude Code, Codex, Gemini, Cursor and Grok ship by default. tmuxOpener.profiles is merged over them: set a key to null to hide one, or add your own key to define a new one.

"tmuxOpener.profiles": {
  "Gemini": null,                                    // hide a built-in
  "Claude Code": { "command": "claude --continue" }, // override one
  "Build": { "command": "npm run watch", "sessionSuffix": "build" }
}

Sessions are named after the workspace folder: myrepo, then myrepo-2, myrepo-3… Profile sessions get their own name (myrepo-claude-code), so they never take a number in that sequence.

A profile whose command isn't on your PATH is marked in the dropdown but stays selectable — the login shell tmux starts may resolve it differently.

Settings

Setting Description
tmuxOpener.terminal.fontFamily Terminal font. Follows editor.fontFamily when empty.
tmuxOpener.terminal.fontSize Terminal font size. Follows editor.fontSize when unset.
tmuxOpener.profiles Commands offered by the ⌄ dropdown.

Contributing

See CONTRIBUTING.md for how to build and run the extension locally.

License and attribution

MIT. See the LICENSE file for the full text and for the attributions summarized below.

The session list's layout (default/min/max width, the width breakpoints where labels and close buttons hide, right-side default placement, middle-click to kill) and the split button are modeled on Microsoft's Visual Studio Code source, also MIT licensed. No code was copied verbatim.

The extension icon is the official tmux logo by Jason Long, used unmodified under its ISC license. The view container icon is a monochrome redraw of that design, because VS Code renders view container icons as a single-color mask. Toolbar icons are Microsoft's Codicons, under CC BY 4.0.

tmux-opener is unofficial and is not affiliated with or endorsed by the tmux project.

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