extension_start
Builds and launches the extension in a browser to verify the production build, without live-reload or debugging tools. Pass build:false to serve an existing dist folder.
Instructions
Run the PRODUCTION build in a browser: build the project, serve it, and launch. There is no hot module replacement and no control channel, so your edits are not picked up and extension_eval, extension_storage, extension_reload, extension_open and extension_dom_snapshot cannot attach to this session. Use extension_dev while writing code, and this to check what actually ships. Pass build:false to launch an existing dist/ without rebuilding.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| host | No | Bind host, default 127.0.0.1. Use 0.0.0.0 in Docker or devcontainers. | |
| port | No | Server port (0 for auto-assign) | |
| build | No | Build before serving. false serves the existing dist/<browser> as-is and fails when there is none. | |
| browser | No | chrome | |
| profile | No | Profile path, or "false" to reuse the real user profile. Omit for a throwaway one. | |
| polyfill | No | Apply cross-browser polyfill (build only) | |
| noBrowser | No | Serve without launching a browser | |
| extensions | No | Extra extension paths or store URLs to load alongside the project | |
| publicHost | No | Host the browser dials for HMR and reload when it differs from the bind host | |
| geckoBinary | No | Custom Gecko/Firefox binary (overrides browser) | |
| projectPath | Yes | Extension project root | |
| startingUrl | No | URL the browser opens on launch | |
| chromiumBinary | No | Custom Chromium-based binary (overrides browser) |