Migrations

Vercel Sandbox to Vakna: SDK calls and vakna commands

Note
This page is generated from a mock CLI, and its numbers are placeholders.

Verified against vakna 0.0.0-mock on

Each Vercel Sandbox SDK call maps to one vakna command below. Their calls are from their public docs, checked on 20 October 2026, with the page for each. Vakna is a CLI; they are SDKs, so a row maps a call to a command, not a function to a function.

Which vakna command replaces each Vercel Sandbox call?

Vercel Sandbox (@vercel/sandbox) vakna
Sandbox.create({ name, image, ... }) (docs) vakna create <box>
sandbox.runCommand('node', ['--version']) (docs) vakna shell <box> -- node --version
Sandbox.list({ namePrefix }) (docs) vakna list
sandbox.delete() (docs) vakna delete <box>
sandbox.stop(), then Sandbox.get({ name, resume: true }) (docs) vakna suspend <box>, vakna resume <box>
sandbox.snapshot(), then Sandbox.create({ source: { type: 'snapshot', ... } }) (docs) vakna snapshot <box>, vakna fork <box> --count <n> -- <command>
networkPolicy: 'deny-all', sandbox.update({ networkPolicy }) (docs) lockdown by default, vakna net allow <host>
sandbox.writeFiles([...]) (docs) tar c . | vakna shell <box> -- tar x
Sandbox.get({ name }) (docs) address the box by name in any command

What has no equivalent in Vakna?

  • A session timeout and sandbox.extendTimeout() (docs).
  • A public domain per exposed port, up to 15 ports: sandbox.domain(3000) (docs).
  • Creating a sandbox straight from a git repo or a tarball (docs). vakna try does this for public repos only.

Where does Vercel Sandbox do more?

  • 19 regions, chosen per sandbox (pricing).
  • Drives: persistent volumes that fork, up to four per sandbox (docs).
  • Sign-in through Vercel's OIDC tokens, with no key to manage (docs).

What does Vakna do that Vercel's docs don't show?

  • Suspend keeps a box's processes and memory; Vercel's stop keeps the filesystem.
  • One command forks a box many times, with one receipt for the lot.

View as Markdown