Interactive chat
embedder from the firmware project directory. See Use Embedder from the CLI for installation and terminal controls.
--subagent-hardware enables hardware access for newly started general subagents. They share the parent session’s devices; name the target and release it when the task finishes. See Subagents.
Hardware scripts
.embedder/hardware/ in the current project. Options:
--project-root <path>: use a different project directory.--timeout <ms>: set the run timeout; the default is 60000 milliseconds.--description <text>: give the run a short description.--profile <json>: supply a JSON object ascapture_profile; use@pathto read it from a file.--json: print the final result as JSON, with script output on stderr.--any-path: run a script outside.embedder/hardware/; those files do not receive the toolbox’s provider diagnostics.
--profile, the runner looks for a companion profile next to the script. See Hardware scripts for examples and setup.
Script output streams to the terminal. Press Ctrl+C to cancel. If preparation needs a Python package, the CLI prompts for approval; unattended runs deny the install. The command exits with 0 on success, 1 on failure, and 2 for a usage error.
Daemon commands
--team and --project together. EMBEDDER_TEAM and EMBEDDER_PROJECT offer the same selection. Use EMBEDDER_API_KEY for unattended authentication and EMBEDDER_DAEMON_CONCURRENCY to set parallel capacity, which defaults to four.
embedder --daemon runs in the foreground and requires authentication to be configured beforehand. Prefer embedder start daemon for guided startup.
See Operate the daemon for monitoring and troubleshooting.
Dashboard viewer
Ctrl+C to stop the viewer.
MCP commands
-t,--transport:stdio(default),http, orsse.-s,--scope:global(default) orproject.-e,--env KEY=VALUE: environment setting for a local server; repeat as needed.-H,--header KEY=VALUE: header for a remote server; repeat as needed.
ls aliases list; rm aliases remove. Removal uses global scope unless you specify --scope project.
See Connect MCP servers for setup and tool controls.
Bridge commands
192.168.1.50:4849. Pairing prompts for the code if you omit --code. Specify the bridge name for diagnostics when several are paired.
ls aliases list, rm aliases remove, and verify aliases doctor.
Run a command on a paired bridge:
--timeout <ms> changes the default ten-minute timeout. --shell requests shell execution and is unavailable when the bridge restricts executable names.
On the machine with the hardware:
--bin-dir <path> and --state-dir <path>. See Remote hardware bridge for pairing and service setup.
Install a skill
--user makes the skill available across your projects. --overwrite permits replacement of an existing skill.
See Skills for the required SKILL.md file and examples.
Connect to a self-hosted instance
embedder connect
- Normalizes the URL. A bare hostname gets an
https://prefix. The command rejects plainhttpaddresses; the instance must be reachable over HTTPS. - Requests
/api/v1/healthon the instance with a 15-second timeout and requires a response of statusok. A non-2xx answer, an unreachable host, or a health payload with any other status each fail with their own message. - Persists the instance’s API and web URLs to
~/.embedder/tenant.json.
If the instance serves a certificate from an internal CA, point
NODE_EXTRA_CA_CERTS at that CA bundle before running embedder connect.EMBEDDER_API_URL overrides only the API base URL for a single process. embedder connect persists both the API and web URLs, so links to the web app also resolve against the connected instance.
The VS Code extension follows the connected instance automatically. It spawns this CLI with --server, which reads the same tenant file, and its web links open against the connected instance instead of app.embedder.com.

