> ## Documentation Index
> Fetch the complete documentation index at: https://docs.embedder.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Use Embedder in VS Code

> Integrate Embedder directly into your VS Code workflow

<Frame caption="Embedder in VS Code with chat, code editor, and serial console">
  <img src="https://mintcdn.com/embedder/Xc4oKmhU_xfDiiaE/images/vscode-extension-overview.png?fit=max&auto=format&n=Xc4oKmhU_xfDiiaE&q=85&s=65a12401a4d59ee00e1a0c854d8afc7e" alt="Embedder VS Code extension showing the chat panel, code editor, and serial console side by side" width="1946" height="1370" data-path="images/vscode-extension-overview.png" />
</Frame>

The Embedder VS Code extension provides a graphical interface for Embedder directly in your IDE. This is the recommended way to to use Embedder in VS Code and for Windows users.

With the extension, you get all the core functionality of the CLI: a serial monitor, review and edit plans, @ mentioning files, sending serial commands, accessing conversation history, open multiple conversations in separate tabs, and more.

## Install the extension

* **[Install for VS Code](vscode:extension/embedder.embedder-vscode)**

Or in VS Code, press <kbd>Cmd</kbd>+<kbd>Shift</kbd>+<kbd>X</kbd> on Mac or <kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>X</kbd> on Windows and Linux to open the Extensions view, search for "Embedder", and click **Install**.

<Tip>
  If the extension doesn't appear after installation, restart VS Code or run "Developer: Reload Window" from the Command Palette.
</Tip>

## Get started

Once installed, you can use Embedder natively in your IDE.

<Steps>
  <Step title="Open the Embedder panel">
    The quickest way to open Embedder is to click the <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 1024 1024" style={{display: "inline", verticalAlign: "middle"}}><path d="M0 0 C337.92 0 675.84 0 1024 0 C1024 337.92 1024 675.84 1024 1024 C686.08 1024 348.16 1024 0 1024 C0 686.08 0 348.16 0 0 Z" fill="#262626" /><path d="M0 0 C20.04 -.12 20.04 -.12 28.74 -.15 C34.62 -.16 40.5 -.19 46.38 -.23 C124.79 -.76 124.79 -.76 153.33 26.2 C175.86 49.38 176.46 83.26 176.44 113.55 C176.44 117.04 176.46 120.53 176.48 124.02 C176.52 132.1 176.54 140.18 176.56 148.26 C176.58 158.57 176.61 168.88 176.66 179.19 C176.68 182.65 176.69 186.11 176.7 189.56 C176.7 193.41 176.71 197.26 176.73 201.11 C176.73 202.22 176.72 203.34 176.72 204.49 C176.82 219.29 178.74 236.41 189.52 247.58 C196.91 254.46 204.53 255.45 214.28 255.51 C215.22 255.53 216.15 255.54 217.12 255.56 C220.58 255.62 224.04 255.65 227.5 255.69 C235.26 255.79 243.01 255.89 251 256 C251 277.45 251 298.9 251 321 C227.75 321.13 227.75 321.13 220.49 321.12 C207.6 321.22 197.25 321.65 187.56 331.13 C178.55 343.24 176.53 359.37 176.63 374.02 C176.63 375.24 176.62 376.46 176.62 377.71 C176.61 381.01 176.62 384.31 176.63 387.61 C176.63 391.11 176.62 394.61 176.6 398.1 C176.57 408.48 176.56 418.85 176.56 429.23 C176.57 437.29 176.56 445.36 176.52 453.42 C176.51 456.87 176.5 460.33 176.52 463.79 C176.59 486.98 175.94 510.63 166 532 C165.56 532.99 165.12 533.97 164.67 534.99 C156.41 551.8 140.57 563.31 123.17 569.38 C103.65 575.85 84.76 577.16 64.36 577.1 C62.49 577.1 60.63 577.09 58.76 577.09 C53.9 577.09 49.03 577.08 44.17 577.07 C38.31 577.06 32.45 577.05 26.59 577.05 C17.73 577.04 8.86 577.02 0 577 C0 555.88 0 534.76 0 513 C7.46 512.98 7.46 512.98 15.07 512.96 C18.25 512.94 21.43 512.92 24.6 512.89 C29.63 512.85 34.66 512.81 39.68 512.8 C43.74 512.8 47.8 512.77 51.86 512.73 C53.4 512.71 54.94 512.71 56.48 512.71 C68.55 512.74 79.57 511.28 89 503 C99.04 489.56 98.43 472.56 98.41 456.61 C98.41 453.23 98.42 449.84 98.44 446.46 C98.48 439.26 98.49 432.07 98.5 424.88 C98.51 416.55 98.53 408.22 98.58 399.89 C98.59 396.59 98.59 393.3 98.58 390 C98.66 362.02 101.79 331.56 121.76 310.15 C133.41 298.95 148.5 292.03 164 288 C163.03 287.73 162.06 287.46 161.06 287.19 C140.88 281.38 122.46 272.32 111.87 253.26 C100 230.92 98.56 207.55 98.56 182.69 C98.55 180.42 98.53 178.16 98.52 175.89 C98.48 169.98 98.46 164.07 98.45 158.16 C98.42 148.69 98.38 139.21 98.33 129.74 C98.31 126.46 98.31 123.18 98.3 119.9 C98.59 94.18 98.59 94.18 87 72 C84.18 70.17 84.18 70.17 81.06 68.75 C80.04 68.25 79.02 67.75 77.97 67.23 C72.96 65.15 68.41 64.86 63.01 64.79 C62.32 64.78 61.64 64.77 60.94 64.76 C58.69 64.73 56.44 64.71 54.2 64.68 C52.64 64.66 51.07 64.64 49.51 64.62 C45.41 64.57 41.31 64.52 37.21 64.47 C32.28 64.41 27.35 64.34 22.43 64.28 C14.95 64.18 7.48 64.09 0 64 C0 42.88 0 21.76 0 0 Z" fill="#FCFCFB" transform="translate(626,174)" /><path d="M0 0 C1.97 .01 3.93 .01 5.9 .01 C10.99 .02 16.08 .05 21.18 .09 C27.33 .12 33.49 .14 39.64 .15 C48.92 .18 58.2 .24 67.48 .29 C67.48 21.41 67.48 42.53 67.48 64.29 C60.07 64.35 60.07 64.35 52.52 64.41 C49.37 64.44 46.23 64.47 43.09 64.5 C38.1 64.56 33.12 64.61 28.14 64.64 C24.12 64.67 20.1 64.71 16.08 64.76 C14.56 64.77 13.03 64.78 11.5 64.79 C-1.1 64.85 -11.55 66.02 -21.52 74.29 C-33.51 87.58 -31.81 111.85 -31.82 128.56 C-31.83 131.92 -31.85 135.28 -31.87 138.63 C-31.92 148.17 -31.95 157.71 -31.98 167.25 C-31.99 173.12 -32.02 178.98 -32.06 184.85 C-32.07 187.06 -32.08 189.27 -32.08 191.48 C-32.08 208.07 -32.6 224.93 -38.27 240.73 C-38.53 241.47 -38.78 242.2 -39.05 242.96 C-45.96 261.95 -58.76 274.69 -76.66 283.34 C-83.44 286.47 -90.1 289.1 -97.52 290.29 C-96.48 290.56 -95.44 290.83 -94.36 291.11 C-74.75 296.38 -56.23 304.9 -45.46 323.08 C-40.44 332.04 -36.63 341.2 -34.52 351.29 C-34.35 352.07 -34.19 352.84 -34.02 353.64 C-32.08 364.15 -32.22 374.65 -32.21 385.3 C-32.21 388.84 -32.19 392.38 -32.17 395.92 C-32.12 405.97 -32.09 416.03 -32.06 426.08 C-32.05 432.25 -32.02 438.43 -31.98 444.6 C-31.97 446.94 -31.96 449.27 -31.96 451.6 C-32.43 481.35 -32.43 481.35 -19.67 507.38 C-10.35 515.21 2.36 514.76 13.87 514.8 C15.42 514.82 16.97 514.84 18.53 514.86 C22.58 514.91 26.63 514.94 30.69 514.96 C35.57 515 40.45 515.05 45.33 515.11 C52.71 515.19 60.1 515.24 67.48 515.29 C67.48 536.41 67.48 557.53 67.48 579.29 C47.94 579.37 47.94 579.37 39.46 579.39 C33.72 579.4 27.98 579.42 22.25 579.44 C-57.25 579.81 -57.25 579.81 -82.1 557.75 C-106.69 532.77 -108.99 497.71 -108.89 464.61 C-108.89 461.07 -108.9 457.54 -108.92 454.01 C-108.95 443.55 -108.96 433.09 -108.96 422.63 C-108.95 414.47 -108.96 406.31 -109 398.15 C-109.01 394.65 -109.02 391.16 -109 387.66 C-108.47 357.77 -108.47 357.77 -121.07 331.44 C-131.7 321.14 -147.04 322.64 -160.71 322.54 C-167.91 322.46 -175.1 322.38 -182.52 322.29 C-182.52 300.84 -182.52 279.39 -182.52 257.29 C-161.02 256.92 -161.02 256.92 -154.28 256.81 C-152.49 256.78 -150.71 256.74 -148.93 256.71 C-148.02 256.7 -147.11 256.68 -146.17 256.67 C-135.63 256.44 -127.29 254.17 -119.77 246.48 C-110.55 233.41 -109.38 218.34 -109.35 202.78 C-109.34 200.93 -109.34 200.93 -109.33 199.04 C-109.31 196.36 -109.3 193.69 -109.29 191.02 C-109.27 186.77 -109.25 182.53 -109.22 178.29 C-109.15 166.22 -109.09 154.16 -109.04 142.1 C-109.01 135.43 -108.98 128.76 -108.94 122.08 C-108.91 118.56 -108.9 115.04 -108.89 111.52 C-108.8 81.42 -107.17 48.19 -84.68 25.36 C-83.97 24.67 -83.25 23.99 -82.52 23.29 C-81.92 22.67 -81.32 22.06 -80.7 21.42 C-59.98 1.36 -27.06 -.23 0 0 Z" fill="#FCFCFB" transform="translate(329.52,269.71)" /></svg> icon from the Activity Bar on the left side of your screen.

    Another way to open Embedder is through the Command Palette. Use <kbd>Cmd</kbd>+<kbd>Shift</kbd>+<kbd>P</kbd> (Mac) or <kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>P</kbd> (Windows/Linux), type "Embedder", and select "New Chat Tab".
  </Step>

  <Step title="Send a prompt">
    Ask Embedder to help with your code or files, whether that's explaining how something works, debugging an issue, or making changes. See [common workflows](/core-concepts/common-workflows) for more examples of things you can do with Embedder.
  </Step>

  <Step title="Configure project">
    1. Choose an existing project or create a new one
    2. Select the platform you're using from our catalog, or add your own
    3. Select the peripherals you're using from our catalog, or add your own
    4. Generate `EMBEDDER.md` with `/init`

    See [common workflows](/core-concepts/common-workflows) for more information on project configuration.
  </Step>

  <Step title="Review the changes">
    When Embedder wants to edit a file, it shows a comparison of the proposed changes, then asks for permission. You can accept, reject, or tell Embedder what to do instead.

    <Frame caption="Embedder shows the proposed changes and asks for permission">
      <img src="https://mintcdn.com/embedder/Xc4oKmhU_xfDiiaE/images/permission-request.png?fit=max&auto=format&n=Xc4oKmhU_xfDiiaE&q=85&s=89c90a2591bcf2e2e2bccd382e8f45b2" alt="Permission request dialog showing a comparison of proposed file changes" width="1828" height="908" data-path="images/permission-request.png" />
    </Frame>
  </Step>
</Steps>

## VS Code commands and shortcuts

Open the Command Palette (<kbd>Cmd</kbd>+<kbd>Shift</kbd>+<kbd>P</kbd> on Mac or <kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>P</kbd> on Windows/Linux) and type "Embedder" to see all available VS Code commands for the Embedder extension.

<Note>
  These are VS Code commands for controlling the extension. Not all built-in Embedder commands are available in the extension.
</Note>

| Command                         | Description                          |
| ------------------------------- | ------------------------------------ |
| Open Embedder Chat              | Opens the Embedder chat panel        |
| Switch Mode (Act/Plan)          | Toggle between Act and Plan modes    |
| New Chat Tab                    | Creates a new chat tab               |
| Close Active Chat Tab           | Closes the current chat tab          |
| Restart CLI Server              | Restarts the CLI backend process     |
| Switch Model                    | Change the AI model                  |
| Stop Generation                 | Stop the current AI response         |
| Install Embedder CLI            | Install the CLI binary               |
| Clear Conversation              | Clear chat history                   |
| Compress Conversation           | Compress conversation to save tokens |
| View Usage & Billing            | View usage statistics                |
| View Conversation History       | Browse past conversations            |
| Switch Team                     | Change active team                   |
| Switch Project                  | Change active project                |
| Undo Last Message               | Undo the last message                |
| Open Web Console                | Open web console                     |
| Open CLI Logs                   | View CLI log files                   |
| Show CLI Process Output         | Show CLI process stdout              |
| Open Embedder Console (Panel)   | Open serial console in panel         |
| Open Embedder Console in Editor | Open serial console as editor tab    |
| Toggle Embedder Console         | Toggle serial console visibility     |

## Rewind with checkpoints

The VS Code extension supports checkpoints, which track Embedder's file edits and let you rewind to a previous state. Click the rewind button on any message, or use the `/undo` or `/rewind` commands, to choose from three options:

* **Fork conversation from here** — Start a new conversation branch from this message while keeping all code changes intact.
* **Rewind code to here** — Revert file changes back to this point in the conversation while keeping the full conversation history.
* **Fork conversation and rewind code** — Start a new conversation branch and revert file changes to this point.

## Serial console

Embedder can interact with your serial console directly. It can read serial output history to diagnose issues, send commands to your device, monitor for specific patterns, and help debug communication problems.

The built-in serial console lets you communicate with embedded devices directly from VS Code. Open it from the bottom panel or as a full editor tab with the `embedder.openSerialInEditor` command.

<Frame caption="The serial console with code editor and device output side by side">
  <img src="https://mintcdn.com/embedder/Xc4oKmhU_xfDiiaE/images/serial-console.png?fit=max&auto=format&n=Xc4oKmhU_xfDiiaE&q=85&s=7561b6fd1487f78f10e92cb3871ab664" alt="Serial console showing device output alongside the code editor" width="855" height="1045" data-path="images/serial-console.png" />
</Frame>

### Port selection

Embedder auto-detects available serial ports and displays metadata like manufacturer, vendor/product ID, and serial number. Ports refresh automatically when devices are plugged in or unplugged.

### Baud rate

Select from common baud rates manually, or let Embedder auto-detect the correct baud rate. Auto-detection shows a confidence level so you know how reliable the result is.

### Multi-tab interface

Open multiple serial connections simultaneously. Each tab maintains its own port selection, baud rate, connection state, output history (up to 50,000 lines), filter pattern, and timestamp settings.

### Output features

* **Log level coloring** — Errors appear in red, warnings in yellow, info in green, and debug in blue.
* **Timestamps** — Optional timestamp prefix for each line.
* **Regex filtering** — Filter output with regular expressions.
* **Clear output** — Clear the console while preserving the connection.

### Connection types

Embedder supports two connection types:

| Type | Description                                                         |
| ---- | ------------------------------------------------------------------- |
| UART | Standard serial port connections (USB-to-UART adapters, dev boards) |
| RTT  | SEGGER Real-Time Transfer via J-Link probes                         |

### J-Link integration

Embedder automatically detects connected J-Link probes and supports RTT for non-intrusive debugging output. Select your target device from a picker with search and filter, with suggested devices based on your project context. Supports both SWD and JTAG interfaces.

## Next steps

<CardGroup cols={2}>
  <Card title="Common workflows" icon="route" href="/core-concepts/common-workflows">
    Explore practical examples of what you can do with Embedder.
  </Card>

  <Card title="Best practices" icon="star" href="/core-concepts/best-practices">
    Learn tips and techniques to get the most out of Embedder.
  </Card>
</CardGroup>
