Skip to content
| Marketplace
Sign in
Visual Studio Code>Themes>Remote Theme SwitcherNew to Visual Studio Code? Get it now.
Remote Theme Switcher

Remote Theme Switcher

chengang

|
2 installs
| (1) | Free
Automatically switch between a light theme locally and a dark theme on Remote-SSH workspaces.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Remote Theme Switcher

Automatically apply different color themes for local and Remote-SSH windows, so you can tell your environments apart at a glance and avoid editing in the wrong one.

Out of the box it uses a light theme locally and a dark theme on remote, but both are fully customizable — pick any installed theme for either context.

Features

  • Applies your chosen theme based on whether the window is local or connected via Remote-SSH.
  • Works on every transition: opening an SSH window, reconnecting, and closing the connection to return local.
  • Per-window status bar badge: a highlighted SSH: <host> badge in remote windows and a Local badge in local windows, so you can tell windows apart even side by side.
  • Theme follows the active window: when a window gains focus, its theme is applied.
  • Compatible with any color theme (built-in or third-party).
  • Lightweight: zero runtime dependencies, only the VS Code native API.

How windows are distinguished

workbench.colorTheme is a single global setting — VS Code has no per-window theme, so two windows cannot literally show two themes at the exact same time. This extension gives you the distinction in two complementary ways:

  1. Status bar badge (per window). Each window shows its own badge, so both windows display their correct badge at the same time, even side by side.
  2. Theme follows the active window. The window you are working in is always themed correctly.

Set remoteThemeSwitcher.reapplyOnFocus to false if you prefer the extension to never re-apply the theme after startup.

Installation

  • Marketplace: Extensions view (Shift+Cmd+X) -> search Remote Theme Switcher -> Install.
  • From a .vsix: Extensions view -> ... menu -> Install from VSIX...

Configuration

Setting Meaning Default
remoteThemeSwitcher.localTheme Theme applied in local windows "Light Modern"
remoteThemeSwitcher.remoteTheme Theme applied in Remote-SSH windows "Dark Modern"
remoteThemeSwitcher.statusBarIndicator Show the Local / SSH: host status bar badge true
remoteThemeSwitcher.reapplyOnFocus Re-apply the theme when a window gains focus true

To pick a theme:

  • Settings dropdown — a few built-in themes that ship with VS Code.
  • Command palette — Remote Theme Switcher: Select Local Theme / Select Remote Theme lists every installed theme (including third-party) and writes your pick to the setting.
  • settings.json — set an exact theme name, or "" for automatic (an installed light theme locally, a dark theme remotely):
{
  "remoteThemeSwitcher.localTheme": "Light Modern",
  "remoteThemeSwitcher.remoteTheme": "One Dark Pro"
}

Known limitations

  • One global theme: two windows cannot display different themes at the same instant (see above); the status bar badge and focus re-apply are the workaround.
  • Brief flash: the theme is applied after startup, so the previous theme may flash momentarily when a window opens.
  • Remote-SSH only: by default only 'ssh-remote' counts as remote. To also treat WSL or Dev Containers as remote, edit isRemoteSshContext() in extension.js.

License

MIT

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