Start command
Use start when you want a production build and immediate browser launch in one command.
The start command runs a production build first, then launches the built extension through the preview runner.
When to use start
- Manually validating production behavior right after compilation.
- Reproducing runtime differences between watch mode and production output.
- Running a production-like check locally without a separate
buildthenpreviewstep.
Start command capabilities
How it differs from other commands
dev: development server + HMR/watch loopbuild: production build onlypreview: launch an existing built extension without buildingstart:build+previewin sequence
Usage
If no path is provided, the current working directory is used.
Core options
Automation metadata
start writes readiness metadata to:
dist/extension-js/<browser>/ready.json
This is useful for automation when using --no-browser:
- wait for
status: "ready"before launching external runners - handle
status: "error"as a deterministic failure signal - use
runIdandstartedAtto correlate a specific runtime session
--no-browser and readiness synchronization
--no-browser only disables browser launch. It does not block external runners until production startup is usable.
For production-oriented Playwright/CI/AI workflows:
- run
extension start --no-browseras the producer process - run
extension start --wait --browser=<browser>as the readiness gate - launch external browser automation only after
status: "ready"
--wait exits non-zero on error/timeout and ignores stale contracts from dead processes (pid no longer alive).
If both --wait and --no-browser are passed in the same command invocation, --wait takes precedence and the command runs in wait-only mode.
Logging flags
Source inspection flags (not supported in start)
start accepts these flags in parsing, but exits with an error if you use them. Use dev --source ... instead.
Shared global options
Also supports global flags.
Examples
Start with default browser
Start in Firefox
Build and skip browser launch
Important behavior notes
startdoes not run a dev server and does not provide HMR/watch mode.startis production-mode oriented; usedevfor iterative local development.- Source inspection options are not supported in
start; usedev --source ...for that workflow. - For machine consumers, parse
dist/extension-js/<browser>/ready.jsoninstead of terminal text.
