amika CLI.
amika sandbox
Manage Docker-backed persistent sandboxes with bind mounts and named volumes.
Global sandbox flags
These flags apply to allsandbox subcommands (create, list, delete, connect):
| Flag | Default | Description |
|---|---|---|
--local | false | Only operate on local sandboxes |
--remote | false | Only operate on remote sandboxes |
--local and --remote are mutually exclusive.
Create
Create flags
| Flag | Default | Description |
|---|---|---|
--name <name> | auto-generated | Name for the sandbox. If omitted, a random {color}-{city} name is generated |
--provider <name> | docker | Sandbox provider (only docker is currently supported) |
--image <image> | amika/coder:latest | Docker image to use (mutually exclusive with --preset) |
--preset <name> | Use a preset environment, e.g. coder or claude (mutually exclusive with --image) | |
--mount <spec> | Mount a host path (source:target[:mode], mode defaults to rwcopy). Repeatable | |
--volume <spec> | Mount an existing named volume (name:target[:mode], mode defaults to rw). Repeatable | |
--git [path] | Mount the git repo root (or repo containing path) to /home/amika/workspace/{repo} | |
--no-clean | false | With --git, include untracked/uncommitted files instead of a clean clone |
--env <KEY=VALUE> | Set environment variable. Repeatable | |
--port <spec> | Publish a container port (hostPort:containerPort[/protocol]). Repeatable | |
--port-host-ip <ip> | 127.0.0.1 | Host IP address to bind published ports to. Use 0.0.0.0 for all interfaces |
--yes | false | Skip mount confirmation prompt |
--connect | false | Connect to the sandbox shell immediately after creation |
--setup-script <path> | Mount a local script to /usr/local/etc/amikad/setup/setup.sh |
When
--git is used with a repo that contains .amika/config.toml service declarations, those service ports are published automatically. If a --port flag conflicts with a service port (same container port and protocol), the command returns an error. See Services for details.Mount modes
| Mode | Behavior |
|---|---|
ro | Read-only bind mount from host |
rw | Read-write bind mount from host (writes sync back to host) |
rwcopy | Read-write snapshot in a Docker volume (default for --mount). Host files are copied in; writes stay in the volume and do not sync back |
List
NAME, LOCATION, PROVIDER, IMAGE, PORTS, CREATED.
Connect
| Flag | Default | Description |
|---|---|---|
--shell <shell> | zsh | Shell to run in the sandbox container |
/home/amika.
Delete
| Flag | Default | Description |
|---|---|---|
--delete-volumes | false | Delete associated volumes that are no longer referenced by other sandboxes |
--keep-volumes | false | Keep associated volumes without prompting |
amika volume
Manage tracked Docker volumes used by sandboxes.
NAME, TYPE, CREATED, IN_USE, SANDBOXES, SOURCE.
| Flag | Default | Description |
|---|---|---|
--force | false | Delete volume even if still referenced by sandboxes |
amika service
Manage services declared in sandbox configurations.
List
SERVICE, SANDBOX, PORTS, URL.
| Flag | Default | Description |
|---|---|---|
--sandbox-name <name> | (none) | Filter services to a specific sandbox |
.amika/config.toml.
amika auth
Authentication and credential commands.
amika auth login
Log in to Amika via the WorkOS Device Authorization Flow. Opens a browser for you to authorize the CLI.
amika auth status
Show current authentication status.
amika auth logout
Log out of Amika and remove the saved session.
amika auth extract
Discover locally stored credentials from multiple sources and print shell environment assignments.
| Flag | Default | Description |
|---|---|---|
--export | false | Prefix each line with export |
--homedir <path> | $HOME | Override home directory used for credential discovery |
--no-oauth | false | Skip OAuth credential sources |
amika materialize
Run a script or command in an ephemeral Docker container and copy output files to a destination.
The container runs with working directory /home/amika/workspace. Exactly one of --script or --cmd must be specified.
Flags
| Flag | Default | Description |
|---|---|---|
--script <path> | Script to execute (mutually exclusive with --cmd) | |
--cmd <string> | Bash command to execute (mutually exclusive with --script) | |
--destdir <path> | (required) | Host directory where output files are copied |
--outdir <path> | workdir | Container directory to copy from |
--image <image> | amika/coder:latest | Docker image to use (mutually exclusive with --preset) |
--preset <name> | Preset image, e.g. coder or claude (mutually exclusive with --image) | |
--mount <spec> | Mount a host directory (source:target[:mode], mode defaults to rw). Repeatable | |
--env <KEY=VALUE> | Set environment variable in the container. Repeatable | |
-i, --interactive | false | Run interactively with TTY |
--setup-script <path> | Mount startup script at /usr/local/etc/amikad/setup/setup.sh |
--:
Environment variables
| Variable | Description |
|---|---|
AMIKA_STATE_DIRECTORY | Override the default state directory (~/.local/state/amika) |
AMIKA_PRESET_IMAGE_PREFIX | Override the Docker image name prefix for presets |
AMIKA_API_URL | Override the remote API base URL (default: https://app.amika.dev). Used by sandbox commands when operating on remote sandboxes |
AMIKA_WORKOS_CLIENT_ID | Override the default WorkOS client ID for amika auth login. If you change AMIKA_API_URL, you likely need to update this too |
AMIKA_RUN_EXPENSIVE_TESTS | Enable expensive integration tests |