Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions extension/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

### Features

- Stop opening the Aspire Dashboard automatically by default. Use the Aspire: Dashboard Browser setting or a launch.json `dashboardBrowser` value to opt into notifications, an external browser, the integrated browser, or browser debugging ([#17923](https://github.com/microsoft/aspire/issues/17923)).
- Add Bun debugging support for Bun services running under Aspire ([#17848](https://github.com/microsoft/aspire/pull/17848)).
- Improve parameter display in the resource tree and AppHost CodeLens: secrets are masked, long values are truncated, and missing parameter values are shown explicitly ([#17193](https://github.com/microsoft/aspire/issues/17193), [#17881](https://github.com/microsoft/aspire/pull/17881)).

Expand Down
10 changes: 5 additions & 5 deletions extension/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ VS Code 1.98 or later is required.

## Getting Started

Open your Aspire project in VS Code, or create one with **Aspire: New Aspire project** from the Command Palette. Run **Aspire: Configure launch.json file** to set up the debug configuration, then press **F5**. The extension will build your apphost, start your services, attach debuggers, and open the dashboard.
Open your Aspire project in VS Code, or create one with **Aspire: New Aspire project** from the Command Palette. Run **Aspire: Configure launch.json file** to set up the debug configuration, then press **F5**. The extension will build your apphost, start your services, attach debuggers, and print the dashboard URL. Open the dashboard from the Aspire panel when you need it, or opt into auto-launch with the `aspire.dashboardBrowser` setting.

There's also a built-in walkthrough at **Help → Get Started → Get started with Aspire** that covers the basics step by step.

Expand All @@ -77,7 +77,7 @@ Add an entry to `.vscode/launch.json` pointing at your apphost project:
}
```

When you hit **F5**, the extension builds the apphost, starts all the resources (services, containers, databases) in the right order, hooks up debuggers based on each service's language, and opens the dashboard.
When you hit **F5**, the extension builds the apphost, starts all the resources (services, containers, databases) in the right order, hooks up debuggers based on each service's language, and prints the dashboard URL.

You can also right-click an `apphost.cs`, `apphost.ts`, or `apphost.js` file in the Explorer and pick **Run Aspire apphost** or **Debug Aspire apphost**.

Expand Down Expand Up @@ -137,7 +137,7 @@ The dashboard gives you a live view of your running app — all your resources a

![Aspire Dashboard showing running resources](https://raw.githubusercontent.com/microsoft/aspire/main/extension/resources/aspire-dashboard-dark.png)

It opens automatically when you start your app. You can pick which browser it uses with the `aspire.dashboardBrowser` setting — system default browser, or Chrome, Edge, or Firefox as a debug session. When using a debug browser, the `aspire.closeDashboardOnDebugEnd` setting controls whether it closes automatically when you stop debugging. Firefox also requires the [Firefox Debugger](https://marketplace.visualstudio.com/items?itemName=firefox-devtools.vscode-firefox-debug) extension.
By default, the dashboard URL is printed when your app starts and stays available from the Aspire panel. If you want the dashboard to open automatically, set `aspire.dashboardBrowser` to a notification, the system default browser, VS Code's integrated browser, or Chrome, Edge, or Firefox as a debug session. You can also set `dashboardBrowser` on a single `launch.json` configuration when only one debug profile should opt in. When using a debug browser, the `aspire.closeDashboardOnDebugEnd` setting controls whether it closes automatically when you stop debugging. Firefox also requires the [Firefox Debugger](https://marketplace.visualstudio.com/items?itemName=firefox-devtools.vscode-firefox-debug) extension.

---

Expand Down Expand Up @@ -189,8 +189,8 @@ You can configure the extension under **Settings → Aspire**, or jump there wit
| Setting | Default | Description |
|---------|---------|-------------|
| `aspire.aspireCliExecutablePath` | `""` | Path to the Aspire CLI. Leave empty to use `aspire` from PATH. |
| `aspire.dashboardBrowser` | `openExternalBrowser` | Which browser to open the dashboard in — system default, or Chrome/Edge/Firefox as a debug session |
| `aspire.enableAspireDashboardAutoLaunch` | `launch` | Controls what happens with the dashboard when debugging starts: `launch` (auto-open), `notification` (show link), or `off` |
| `aspire.dashboardBrowser` | `none` | Controls what happens with the dashboard when debugging starts: `none`, `notification`, `openExternalBrowser`, `integratedBrowser`, `debugChrome`, `debugEdge`, or `debugFirefox` |
| `aspire.enableAspireDashboardAutoLaunch` | `off` | Legacy dashboard launch setting. Use `aspire.dashboardBrowser` instead. Explicit `aspire.dashboardBrowser` `none` or `notification` values win. Otherwise, legacy `notification` or `off` overrides browser-opening choices; `launch` defers to `aspire.dashboardBrowser`. |
| `aspire.registerMcpServerInWorkspace` | `false` | Register the Aspire MCP server (see [below](#mcp-server-integration)) |

There are more settings for things like verbose logging, startup prompts, and polling intervals — run **Aspire: Extension settings** from the Command Palette to see them all.
Expand Down
74 changes: 67 additions & 7 deletions extension/loc/xlf/aspire-vscode.xlf

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

30 changes: 28 additions & 2 deletions extension/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,28 @@
"type": "string"
},
"default": {}
},
"dashboardBrowser": {
"type": "string",
"description": "%extension.debug.dashboardBrowser%",
"enum": [
"none",
"notification",
"openExternalBrowser",
"integratedBrowser",
"debugChrome",
"debugEdge",
"debugFirefox"
],
"enumDescriptions": [
"%configuration.aspire.dashboardBrowser.none%",
"%configuration.aspire.dashboardBrowser.notification%",
"%configuration.aspire.dashboardBrowser.openExternalBrowser%",
"%configuration.aspire.dashboardBrowser.integratedBrowser%",
"%configuration.aspire.dashboardBrowser.debugChrome%",
"%configuration.aspire.dashboardBrowser.debugEdge%",
"%configuration.aspire.dashboardBrowser.debugFirefox%"
]
}
}
}
Expand Down Expand Up @@ -815,7 +837,7 @@
"notification",
"off"
],
"default": "launch",
"default": "off",
"description": "%configuration.aspire.enableAspireDashboardAutoLaunch%",
"enumDescriptions": [
"%configuration.aspire.enableAspireDashboardAutoLaunch.launch%",
Expand All @@ -827,15 +849,19 @@
"aspire.dashboardBrowser": {
"type": "string",
"enum": [
"none",
"notification",
"openExternalBrowser",
"integratedBrowser",
"debugChrome",
"debugEdge",
"debugFirefox"
],
"default": "integratedBrowser",
"default": "none",
"description": "%configuration.aspire.dashboardBrowser%",
"enumDescriptions": [
"%configuration.aspire.dashboardBrowser.none%",
"%configuration.aspire.dashboardBrowser.notification%",
"%configuration.aspire.dashboardBrowser.openExternalBrowser%",
"%configuration.aspire.dashboardBrowser.integratedBrowser%",
"%configuration.aspire.dashboardBrowser.debugChrome%",
Expand Down
Loading
Loading