Skip to main content
Use the VS Code extension to chat with Embedder beside your code, review its edits in the editor, watch hardware in the Monitor, and open board designs. For installation and a first change, follow the Quickstart. To work from a terminal or over SSH instead, see Use Embedder in the terminal.

Requirements

  • VS Code 1.106.0 or newer. Forks such as Cursor and Windsurf need a release built on VS Code 1.106.0 or newer.
  • To check your version, open Help > About (Code > About Visual Studio Code on macOS).
Install Embedder from the VS Code Marketplace or Open VSX. On VS Code 1.85 through 1.105, the marketplace still installs the latest Embedder build, but the extension shows a notice instead of loading. See Unsupported VS Code version. When the installed extension is 3 or more published releases behind, it asks Would you like to update? at startup. Select Update to install the latest version, then select Reload Window. If the install fails, VS Code opens the Embedder extension page so you can update it there. The extension installs a matching Embedder CLI for you. To use a different installation, see Settings. Embedder works in the folder you open. In a multi-root workspace, it uses the first folder. In a remote window, such as Remote - SSH, WSL, or a dev container, the extension runs on the remote machine and downloads the CLI for that platform. Connect hardware to that machine, or reach it through a remote bridge.

Find Embedder in VS Code

To move chat back to the Secondary Side Bar, run Embedder: Arrange Layout (Chat → Secondary Side Bar). Cursor reserves its Secondary Side Bar for its own agent, so Embedder places chat differently there:
  • Embedder: Open Embedder Chat opens chat as an editor tab in a locked editor group on the right.
  • The side-bar chat is the Chat view in the Embedder Chat History container in the Activity Bar, next to Conversations.
  • Embedder: Arrange Layout isn’t available.

Work in chat

Type a request in the message box and press Enter. Use the controls around the message box to add context and choose how Embedder works: Migration also appears in the mode list for projects that support it. See Modes and Tool approvals. While Embedder is working:
  • Press Enter to steer the current turn. Your message joins the work at its next step.
  • Press Alt+Enter (Option+Enter on macOS) to queue the message until the turn finishes. Select Steer now on a queued message to send it into the running turn instead.
  • Press Escape to stop the turn.
To start a new chat, run /new or select + (New chat) in the chat header. To reopen earlier work, run /history or select Session history. See Sessions and context for queues, rewind, and history.

Review edits in the editor

When Embedder changes a file, the changed blocks are highlighted in the editor so you can accept or reject each one. The edit is already in the file; your review decides whether it stays.
  • Above each block, CodeLens shows its position, such as Embedder 1 of 3, with ✓ Accept and × Reject.
  • The editor title bar adds Previous Embedder Change, Next Embedder Change, Reject Change, and Accept Change.
  • The title bar’s … menu adds Accept All Changes in File, Reject All Changes in File, and Review Embedder Edits, which opens a side-by-side diff.
  • The Source Control view lists files that still need review under Embedder Edits > Pending Edits. Opening a pending diff from chat also jumps to that file’s review.
What each choice does: Several Embedder edits to the same file are reviewed against the version before its first edit. Your own edits outside the highlighted blocks are kept. Rewinding a chat clears that chat’s pending reviews. Keyboard shortcuts work while the focused file has pending Embedder edits: Pending reviews belong to the VS Code workspace and remain after you reload the window. They don’t appear in the terminal UI. They also don’t replace the approval prompts that decide whether an edit runs in the first place.

Open the Monitor

Run Embedder: Open Embedder Monitor to open it in the Panel, or Embedder: Open Embedder Monitor in Editor to open it in an editor tab.
  1. Select + to open a New tab.
  2. Type to search, use the arrow keys to move, and press Enter to open the highlighted item.
The new tab groups what you can open:
  • On the bench: instruments Embedder currently detects. Select one to open a tab bound to it.
  • Views: the views in the table below.
  • Saved plots and Dashboards: configurations you saved. You can delete them from this list.
To reach a LAN instrument that isn’t listed, type its address, such as 192.168.1.20, and select Connect to. See Connect a bench instrument for device setup and states. The Oscilloscope, Spectrum Analyzer, Power, and Logic Analyzer views show a device chip with the selected instrument and its state. Pick the instrument from the chip, then select Connect, or Set up & connect when it needs drivers. The Device actions menu holds Disconnect, Set up, Rename device, Enter address… for LAN instruments, Rescan devices, and Forget device. In the Power view, the DUT power switch turns the board’s current path on and off. The Monitor holds up to 10 tabs. To rename a tab, double-click it, or focus it and press F2. When the tabs don’t all fit, or you reach the limit, the All tabs menu lists every tab so you can switch to one. To compare readings side by side, drag a tab onto the Monitor and drop it on an edge to split the pane, or in the center to merge. Confirm the selected device before you start a capture. See Monitor and debug for each tool’s setup.

View schematics

  • Run Embedder: Open Schematic… to open a design uploaded to the project. If the project has none yet, Embedder opens the schematic upload.
  • In the Explorer, right-click a .kicad_sch, .kicad_pcb, or .kicad_pro file and choose Open Schematic File…. For a KiCad footprint (.kicad_mod) or symbol (.kicad_sym) file, choose Open in EmbedderCanvas….
KiCad files open in Embedder’s viewer, EmbedderCanvas. Select a component and choose Add component to chat to reference it in your next message. Run /upload-schematics to add a design to the project. See Schematics for supported formats. While Embedder gathers documentation for parts, such as after a schematic upload, the status bar shows Part docs with a count. If it shows Part docs: 1 needs you, select it to upload a datasheet or search again. Embedder: Show Datasheet Progress shows the same progress in chat.

Run hardware scripts

  1. Open a Python script in the workspace, usually one under .embedder/hardware/.
  2. Select Run Hardware Script (▷) in the editor title bar or the right-click menu.
  3. In chat, choose Run to run the script on its own, or Run and hand to agent to have Embedder review the result when it finishes.
Output streams to the Monitor’s Debug Output view. Select Show output on the chat row to open it. To stop the run, select Stop on the row or Stop Hardware Script in the editor title bar. After a plain Run, select Hand to agent to share the result with Embedder later. You can also ask for a run in chat. See Hardware scripts.

Learn the interface

Run /tutorial to browse the interactive tutorials, or open one directly: Run /live-training to register for a live training session. Embedder: Open Getting Started opens the Get Started with Embedder walkthrough.

Check startup progress

While Embedder starts, chat shows a progress bar and the status bar shows the current stage: If no progress arrives within 30 seconds, chat adds First launch takes longer while your antivirus checks the engine. The extension doesn’t restart Embedder while it keeps reporting progress. If it shows no signs of life for embedder.startupTimeoutSeconds (300 seconds by default), the extension restarts it.

Customize and troubleshoot

Open Settings and search for Embedder. See Settings for layout, CLI selection, and startup controls. To report a problem from an error screen, select Send logs…. Add an optional note under What happened?, then select Send logs. When the logs are sent, the screen shows a Report ID; give it to Embedder support. If the logs can’t be sent, for example while you’re offline, select Open log folder and share the files another way. If chat still doesn’t load, check sign-in and the CLI path, then run Embedder: Restart CLI Server. Run Embedder: Show Build Info for version details, and Embedder: Open CLI Logs or /bug for a problem that persists. See Get help for how to reach support.

Unsupported VS Code version

If your editor runs a VS Code version older than 1.106.0, every Embedder command shows an error. Every Embedder view and editor shows an Unsupported VS Code version notice instead of loading:
Update VS Code, or your fork such as Cursor or Windsurf, to a release built on VS Code 1.106.0 or newer. Then reload the window. You don’t need to reinstall the extension.

Use a self-hosted instance

The extension uses the instance you select with embedder connect. In a terminal on the same machine, run:
Then run Embedder: Restart CLI Server and sign in to that instance. Chat, sign-in, and web links such as Embedder: Open Web Console then use it. Run embedder disconnect to return to the hosted service. See Connect to a self-hosted instance.
Last modified on November 13, 2026