Herdr Switcher
Bring Herdr spaces and AI coding agents into VS Code. See every project at a glance, switch between their VS Code windows, and jump directly to an active agent.
Features
- Separate Spaces and Agents lists in the Herdr Activity Bar.
- Live agent status, Git branch names, and the active agent in the status bar.
- An overall Herdr status item with links to every agent across all Spaces.
- Click a Space to switch to its VS Code window without opening a terminal.
- Click an Agent to switch windows and focus its pane in either the full Herdr UI or a dedicated direct-attach terminal.
- Direct Agent terminals use Herdr's session-control bridge, so VS Code owns each terminal and no Herdr
Ctrl-B prefix is required.
- Start Claude Code, Codex, or custom agents in dedicated Herdr tabs.
- Rename an agent or its containing tab from the Agents context menu.
- Copy an agent's recent output to the clipboard or open it in a read-only editor from the Agents context menu.
- Close Spaces with the inline trash button or from the
… menu, with a warning when non-shell processes are running.
- Run Herdr on the local host when VS Code is connected to a Dev Container.
Requirements
- VS Code 1.96 or later
- Herdr 0.8.0 or later, available as
herdr on PATH
If Herdr is installed elsewhere, set herdr.executable to its path.
Herdr Switcher is a UI extension: Herdr and configured agents run on the machine
where VS Code is installed. Dev Container workspaces are associated with their
decoded host path, while navigation still reopens the corresponding container
window. Other VS Code remote types are not currently supported.
Getting started
- Open a folder in VS Code. The extension creates or associates its Herdr Space.
- Open the Herdr icon in the Activity Bar to see all Spaces and Agents.
- Select a Space or Agent to navigate. Use the Agents header buttons to choose an agent or start the default one.
Herdr remains the source of truth. Cross-window actions are delivered through short-lived Herdr metadata intents, so each VS Code window can handle navigation for its own Space.
Configuration
herdr.executable: Herdr executable path
herdr.session: optional named Herdr session
herdr.refreshInterval: fallback snapshot interval in milliseconds when Herdr's event stream is unavailable
herdr.createSpaceOnOpen: automatically create or associate Spaces
herdr.synchronizeState: synchronize VS Code window activation and workspace state with Herdr (default false); set to true to enable active synchronization
herdr.focusSidebarOnWindowActivation: automatic sidebar focus mode: never (default), switch for Herdr-driven window switches, or always for every VS Code window activation
herdr.terminalLocation: open Herdr in the Terminal view (panel) or as a pinned editor (editor)
herdr.agentTerminalMode: use the full Herdr UI (herdr, default) or a dedicated terminal session control terminal per Agent pane (direct); restart the Extension Host after changing it
herdr.outputLines: number of recent terminal rows used by the Agent output commands (default 1000)
herdr.agents: agents available from the Add Agent picker
herdr.defaultAgent: agent launched by the + button
All settings are user-level settings. The default agents are Claude Code and Codex:
With herdr.synchronizeState set to false, opening a VS Code folder does not
start Herdr or create a Space, and Herdr remains empty in the views until it is
already running or an explicit Agent start creates the current Space. Space
clicks still switch VS Code windows; closing a Space leaves its VS Code window
open, and only an Agent in the current window can be highlighted.
Set herdr.focusSidebarOnWindowActivation to switch if you want Herdr-driven
window switches to show the Herdr sidebar, or to always to show it for every
VS Code window activation.
The default terminal location is panel. VS Code does not expose a dedicated
Secondary Side Bar terminal location, but if you move the Terminal view there,
Herdr follows it.
{
"herdr.agents": [
{ "name": "Claude Code", "command": ["claude"], "kind": "claude" },
{ "name": "Codex", "command": ["codex"], "kind": "codex" }
],
"herdr.defaultAgent": "Claude Code"
}
Development
npm install
npm test
npm run build
Press F5 to launch the included Extension Development Host configuration.