Skip to content

VS Code companion

The Switchboard Companion extension for VS Code (also Cursor, Windsurf and VSCodium) sends what you’re looking at in the editor to a Switchboard session: the selected lines, the open file, files from the Explorer, problems, terminal output and changed files. It also works the other way: when a session in your workspace needs you, you can answer it from a VS Code notification.

It is a companion, not a chat. Claude Code’s own extension stays the chat inside VS Code; Switchboard is where you manage your sessions and talk to them.

Settings on VS Code: what the extension sends, a status line saying whether an editor is connected, and links to the Visual Studio Marketplace, Open VSX and How it worksSettings on VS Code: what the extension sends, a status line saying whether an editor is connected, and links to the Visual Studio Marketplace, Open VSX and How it works

The extension’s id is eliostruyf.switchboard-companion. Install it from:

It needs Switchboard on the same computer (a Mac or a Windows PC), and VS Code 1.95 or later. On Windows, use version 0.2.0 or later of the extension. If Switchboard isn’t running when you send something, the extension opens it first.

  • In Switchboard, Settings → VS Code (Command, CommaControl, Comma) shows what the extension sends, whether an editor is connected right now, and the links to install it. VS Code extension in the command palette opens it too.
  • In VS Code, the commands are under Switchboard in the command palette, in the right-click menus of the editor, the Explorer, the terminal and Source Control, and in the quick fixes of an error.
From VS Code Arrives in Switchboard as
Selected lines (Option, Shift, KAlt, Shift, K, or right-click in the editor) auth.ts:12-40, a reference Claude reads itself
The active file, nothing selected auth.ts
Files and folders in the Explorer, several at once one chip each
Open editors, all or one tab group one chip per file
Problems in a file or the whole workspace the errors and warnings, as text
Fix in Switchboard in the quick fixes (Command, PeriodControl, Period) of an error or warning the problem as text, and the lines it is on
Selected terminal output (Option, Shift, KAlt, Shift, K in the terminal, or right-click) the output, as text
Files in Source Control the changed files

Everything arrives as chips above the message box in Switchboard. Files go as references (a path and its lines), so a large selection stays small. Two things go as text instead: a selection in a file with unsaved changes (Claude would read the old version on disk), and things that aren’t files, such as problems and terminal output.

  1. To the session you have open in Switchboard, when its folder holds the file.
  2. Otherwise VS Code asks which session, from Switchboard’s sessions for this workspace, with what each one is doing.
  3. Or pick New session to open Switchboard’s New session on that folder, with the chips already in it.

On Windows, folders match without regard to case.

Switchboard comes to the front on the session when you add something. Turn off switchboard.bringToFront in VS Code’s settings to add context quietly.

This needs Switchboard 0.0.14 or later. When a session in this workspace waits for you, a VS Code notification says which session and what it asks:

  • A permission (“Claude wants to run npm test”): Allow, Always allow (when Claude Code offers a rule), Deny… (with what to do instead, if you like) or Show in Switchboard.
  • A question: Answer… asks each question in a list (pick several where the question allows, or type your own answer), or Skip.
  • A plan: Read the plan opens it in a Markdown preview, then Approve and accept edits, Approve, ask before edits or Keep planning… with what to change.

Your answer works as if you gave it in Switchboard, and the card there goes away. Closing a notification leaves the prompt waiting in Switchboard; the Switchboard: Answer Prompts command shows it again. If you already answered in Switchboard, the extension says so. See Permissions and questions for what each answer does.

Switchboard: 1 needs you in VS Code’s status bar says a session in this workspace waits for a permission or an answer. Click it to go to that session in Switchboard. Otherwise it says how many sessions are working; click it for the list.

The extension never sends the text of a file you keep from Claude:

  • files matched by files.exclude or search.exclude in VS Code;
  • files git ignores;
  • files Claude Code’s settings deny reading (Read(…) rules in permissions.deny).

For those, only the reference goes, and Claude Code applies its own rules when it reads the file. If that means your unsaved changes weren’t sent, the extension tells you.

The connection is a socket only your user account can open, with a token Switchboard writes to a file only you can read. On Windows it is a named pipe with a random name, and the token in your own app data folder is what lets an editor in. The extension only connects to the pipe Switchboard made, and ignores an app data folder that isn’t on this computer. Nothing leaves your computer.

To move a session from Switchboard to Claude Code’s own VS Code extension, choose Continue in VS Code under ⋯ in the session header, or run Continue in VS Code in the command palette. Switchboard stops the session, opens its folder in VS Code and opens the session in Claude Code’s extension there. It is available when the session isn’t working.

Commands, all under Switchboard in VS Code’s command palette: Add Selection to Switchboard, Add to Switchboard, Add Open Editors to Switchboard, Add Editors in This Group to Switchboard, Add Problems in This File to Switchboard, Add Problems in the Workspace to Switchboard, Fix in Switchboard, Add Terminal Selection to Switchboard, Add Changes to Switchboard, Answer Prompts, Show Sessions and Reconnect.

Setting What it does
switchboard.bringToFront Bring Switchboard to the front on the session when you add something (on by default).
switchboard.statusBar Show the status bar item (on by default).
switchboard.prompts Show permissions, questions and plans from this workspace’s sessions as notifications you can answer (on by default).
switchboard.quickFix Offer Fix in Switchboard in the quick fixes of errors and warnings (on by default).
switchboard.editorTitleButton A button in the editor title bar that adds the selection or the file (off by default).
switchboard.appDataFolder Where Switchboard keeps its data, for a build started with SWITCHBOARD_DATA_DIR. Leave it empty to find the installed app (~/Library/Application Support/Switchboard%APPDATA%\Switchboard). It can only be set in your user settings, not in a workspace.

Settings → VS Code in Switchboard shows whether an editor is connected right now. If it says no editor is connected, install the extension and open a folder in VS Code. How the connection works is in VS Code companion on GitHub.