Use InstaVM
InstaVM resource model
-
Session is a short-lived execution sandbox.
-
VM is a durable machine for longer-running work, SSH access, shares, or mounted volumes.
-
Snapshot is a reusable machine image created from a VM or an OCI image.
-
Share exposes a port from a session or VM.
-
Volume is persistent storage mounted into a VM.
-
Platform APIs include computer-use, audit, webhooks, API keys, and related control-plane features.
Preflight
Before any mutation:
-
For live deploy, host, create, update, snapshot, or delete requests, verify authentication first.
-
If no API key or authenticated CLI path is available, stop and ask for credentials. Do not spend time generating deploy scripts, repo changes, or long offline setup unless the user explicitly asks for offline preparation.
-
After auth is confirmed, probe the installed SDK surface before assuming helper names.
-
If a native instavm CLI exists later, prefer it only when it is clearly the shortest path.
Load setup.md for exact install, auth, and surface-probe steps.
Routing
Load only the reference you need. Two references are usually enough, even for multi-step tasks.
Intent Reference Use for
Install, authenticate, choose session vs VM, create or delete compute setup.md SDK install, API key handling, session basics, VM CRUD, context checks
Host or deploy an app hosting.md static sites, simple web apps, long-lived servers, shares, deploy verification
Run code, transfer files, snapshot, clone, or build from OCI compute.md execution, uploads/downloads, async jobs, VM snapshots, OCI snapshots
Connect to a machine or expose it to the network access.md SSH keys, ssh instavm.dev , shares, egress, custom domains
Persist or move data storage.md volumes, checkpoints, mounts, file operations
Use advanced control-plane APIs or fall back to raw HTTP platform.md computer-use, browser, API keys, audit, webhooks, REST/OpenAPI fallback
Prefer or inspect a future native CLI cli.md CLI discovery, command help, when to choose CLI over SDK
Execution rules
-
Trust the live product surface over skill text: start with the installed SDK, actual CLI help if a CLI exists, and read-back state from the API after mutations.
-
Detect capability before use. For SDK, inspect attributes or method signatures. For CLI, use --help only if the binary exists. Fetch the latest OpenAPI or live docs only when capability is unclear, a field may be unsupported, or you need a REST fallback.
-
Use a session for short-lived execution. Use a VM for SSH, shares, mounted volumes, or user-facing hosting.
-
Keep egress narrow and shares private unless the user explicitly wants broader access.
-
For live infrastructure requests, a quick repo inspection is fine, but do not do multi-minute offline scaffolding before auth is confirmed.
-
After mutation, read the resource back. If a field is ignored or missing in the follow-up state, treat that capability as unsupported in the current environment.
-
If the installed SDK lacks the needed helper, use raw HTTP only after checking the latest schema.
Composition patterns
-
Bootstrap a working VM: setup -> compute -> access
-
Host a static site or small web app: setup -> hosting -> access
-
Create a reusable base image: setup -> compute
-
Create a persistent worker: setup -> storage -> access
-
Handle an SDK gap: relevant operational reference -> platform
-
Add future CLI support: cli -> relevant operational reference
Response format
For operational responses, return:
-
What was done and where.
-
The result: IDs, URLs, status, or key output.
-
What to do next, or confirmation that the task is complete.