Boot & run

Run commands

Run any command inside a VM and stream its output back, with no SSH and no network.

What it is

Run any command inside a VM and stream its output back.

flash exec runs a command inside a FlashVM over a private channel: no SSH, no network. Output streams back live, and the exit code is the command's own. Long jobs run in the background and can be listed and stopped.

Why it matters

An agent wants three things from every command: did it work, what did it print, what did it change. One call returns all three.

  • No SSH. A private channel into every VM, network or not.
  • Structured results. --json --changes returns exit code, output and every file changed.
  • Background jobs. Start, list and kill long-running commands.

Runs on

  • Linux x86_64
  • Linux arm64
  • macOS
  • Windows x64
  • Windows arm64

How it works

Commands run as an argument list with optional timeout, working directory, environment and stdin.

CLI

flash exec vm1 -- echo 'Hello, world'
flash exec vm1 --json --changes -- sh -c 'pip install requests'
flash exec vm1 --timeout 30 -- make test
flash execs vm1
flash execs vm1 3 --kill

MCP

flash_exec(vm_id: "vm1", argv: ["echo", "Hello, world"], timeout_s: 30, changes: true)

API

POST /v1/flashvm/guest/execs {"argv": ["echo", "Hello, world"]}
GET /v1/flashvm/guest/execs

The result

The command runs inside the VM and its output comes straight back.

Agents drive a sandbox like a local shell, with results built for machines.

How it works

Related

See it live: flash demo run 4