Skip to content

microvm attach

Register a name for a running MicroVM this state directory did not launch

Terminal window
microvm attach [options]
Parameter Kind Type Required Default Choices Help
--from flag path no none any A name record as the registry writes it (<state-dir>/names/<name>.json), or - for stdin
--name flag string no none any The name to register. Required with the explicit triple; renames a --from record
--endpoint flag string no none any The VM’s endpoint, as reported by run on the machine that launched it
--agent-token flag string no none any The agent token delivered to the VM at launch. Never echoed in the envelope
--microvm-id flag string no none any The MicroVM id, needed to mint the endpoint proxy token
--identity-host-seed flag string no none any The launching host’s identity secret, base64, from run --identity’s envelope
--identity-vm-public-key flag string no none any The VM’s public key, base64, from run --identity’s envelope. The pin
--verify-identity flag boolean no none any Prove the far end is the VM the record was created for, before writing anything
--port flag string no none any The daemon’s port inside the guest, for the probe. Not recorded
--state-dir flag path no none any Where the local state lives — the registry this record is written into. Defaults to $MICROVM_STATE_DIR or ~/.microvm/runs
--region flag enum no none us-east-1, us-east-2, us-west-2, eu-west-1, ap-northeast-1 AWS region. Defaults to $AWS_REGION, then $AWS_DEFAULT_REGION, then us-east-1
--unlisted-region flag string no none any Use a region this client has not seen carry MicroVMs. Costs you the diagnostic

The 3 global flags (--json, --dense, --quiet) are accepted here as on every command, and are left out of the table above for that reason; see Global flags.

On success stdout carries one envelope whose type is microvm.attach. Its data object carries these keys: name, microvmId, endpoint, region, verifiedIdentity, replaced, statePath.

The envelope describes the fields around data. Response types lists every type the CLI emits and which commands share each one.

A failure exits with one of the statuses on Exit codes and writes the error shape on The envelope: a stable code to branch on, an exitCode that matches the process status, a human-readable error, and suggestions.

Where a failure is one this project has measured on the platform, the envelope’s finding names the section of the platform notes that documents it. The exit-code table links each one.

This page is generated from docs/manifest.json, the output of microvm manifest, which the CLI derives from its own argument tree. This page reads the attach entry of data.commands. site/scripts/gen-reference.mjs writes it into the site’s content directory on every pnpm run sync, so an edit made here is overwritten by the next run.

To change the page, change the source. Regenerate the source with mise run manifest from the repository root; mise run manifest:check fails when the committed file no longer matches what the binary emits.