- environment variables, available to processes and shell sessions inside the Box
- secret files, written under the Box work directory using the relative paths you configure
.env files, deployment tokens, and other runtime configuration. Do not pass secrets in prompts, URLs, CLI arguments that may be logged, Docker build args, or committed files.
Add Environment Variables
- Open Dashboard > Secrets.
- Add shell-style lines in the environment variables editor, or replace the account secret setup programmatically. The API and SDK update is a full replacement, so send every variable and secret file that should remain configured:
- Save if you used the dashboard.
provisioned, cloning, ready, idle, or running) and have a live machine connection. Stopped, archived, deleted, or unreachable Boxes pick up the latest values the next time they are started or resumed.
Per-Box Environment Variables
Dashboard variables apply to every Box. To give a single Box its own values, passenv when creating it:
[A-Za-z_][A-Za-z0-9_]* (max 128 chars), with at most 100 variables and 64KB total per Box. Reserved Box-internal names (ASCII_TOKEN, BOX_ID, and similar) are rejected. Forked Boxes inherit the source Box’s per-box variables unless the fork request passes its own env.
No-env Boxes
When you give Boxes to your own users, you don’t want your account’s secrets inside them. A no-env Box receives none of them: no environment variables, secret files, or credentials. It is confined to itself, so it can’t act on your account or any other Box.env. A no-env Box can’t reach your private repositories; clone public ones, or sign in with your own credentials from inside the Box. A fork of a no-env Box is always no-env.
Add Secret Files
Use secret files for.env, JSON credentials, or config files that a repo expects on disk.
- Open Dashboard > Secrets.
- Add a secret file with a relative path such as
ariana-ide-private/backend/.env,.env, orconfig/secrets.json, or update the account setup programmatically. The API and SDK update is a full replacement, so include every env var and secret file that should remain:
- Paste the file contents and save if you used the dashboard.
/home/user on the hosted Box image. Folder names use the GitHub repository name, not the owner/name pair. For example, ariana-dot-dev/ariana-ide-private is cloned to:
/home/user on the hosted Box image. To write a backend .env file into ariana-ide-private, include the repository folder in the path:
/home/user are skipped.
Programmatic Setup
For setup scripts, configure secrets in the dashboard first, then run your setup in the Box. The script can read normal environment variables or files at the configured paths.box ssh <id> <command> runs the command non-interactively and streams stdin, stdout, and stderr, so setup scripts do not need to be copied to a temporary path in the Box. The API and SDK command endpoint runs an already-present script or command inside the Box work directory.
In Windows PowerShell, prefer running this from Node, Python, WSL, Git Bash, or cmd.exe. Native PowerShell pipelines can keep stdin open for native executables in some environments.
Only use temporary uploaded env files for one-off local experiments. For normal usage, dashboard secrets keep the workflow auditable and avoid leaking values through logs or command history.