Container Settings
Memory, environment variables, sandbox image and default agent for Levee projects, and what the agent finds inside its sandbox
Each Levee project runs in its own sandbox: a Windows container, separate from the rest of the computer. The container section of policy sets how much memory the sandbox may use, extra settings inside it, which sandbox image the computer uses, and which agent the chat starts. The defaults suit most work; you rarely need to change more than the memory limit.
Section shape
{
"container": {
"memoryLimitMb": 8192,
"environmentVariables": {
"PYTHONUTF8": "1",
"PIP_DISABLE_PIP_VERSION_CHECK": "1"
},
"defaultAgentTool": "claude-code"
}
}
| Key | Default | Meaning |
|---|---|---|
memoryLimitMb | 4096 | Maximum memory for each project sandbox, in MB. |
environmentVariables | {} | Extra environment variables set in every project sandbox. |
defaultAgentTool | not set | The agent used by the chat. When set, users cannot change it. See AI Tools. |
baseImage | not set (levee-base:0.2.0 in Levee 0.64 and 0.65) | The sandbox image every project on the computer uses. See Sandbox image. |
Memory, environment variables and the default agent are applied when a project starts. After changing them, stop and start the running project.
How much memory does a project need?
4096 MB suits most work. Raise it if the agent processes large files or runs heavy scripts.
memoryLimitMb caps the sandbox. A project whose programs exceed it (for example, a script that loads a very large spreadsheet or dataset) sees out-of-memory errors inside the sandbox; the computer itself is protected.
Sizing guidance:
- Each running project sandbox uses roughly 300 to 600 MB when idle, plus whatever the agent and its tools consume.
- 4096 MB suits typical document, spreadsheet, data and scripting work.
- 8192 MB or more is advisable for large datasets or long-running data processing.
- Only one project can run on a computer at a time. If a user starts a second project, Levee asks them to stop the first one (
Another project is already running. Stop it, then start this one.). Size the computer's RAM for one sandbox plus the user's own applications (16 GB recommended).
Environment variables
environmentVariables adds variables to every project sandbox, for example to set program defaults or regional settings.
- Never put secrets here. Anything in this section is visible to the agent. Credentials for models, search and databases are handled outside the sandbox; see Model Access, Web Search and Database Access.
- Names are case-insensitive, as on Windows.
- Your values take precedence over most variables Levee sets, but not over the certificate variables (
SSL_CERT_FILE,NODE_EXTRA_CA_CERTS,REQUESTS_CA_BUNDLE,CURL_CA_BUNDLE,GIT_SSL_CAINFO) or Levee's own agent configuration (LEVEE_AGENT_CONFIG_DIR). Overriding the proxy variables does not open any extra network access: traffic that does not go through Levee is blocked regardless. It only breaks the agent's connectivity, so leave them alone.
Sandbox image
The sandbox image is the Windows environment each project starts from. Leave baseImage unset and Levee uses the image that matches the installed Levee version (levee-base:0.2.0 in Levee 0.64 and 0.65). Levee downloads, verifies and loads that exact image version, based on the runtimeProvisioning settings (see Container Runtime).
container.baseImage pins one image version for every project on the computer. Set it only when Vediram support asks you to. The value must be a Levee image tag in the form levee-<flavor>:<version> (a version such as 0.2.0 or 0.2.0-preview.1), for example levee-base:0.2.0; any other value is refused and the image is not downloaded. A newer image release does not replace the pinned one: Levee only reports that an update is available.
If a project reports that it requires a different container runtime image than the one installed, see Project won't start.
What is inside the sandbox?
A normal Windows environment with PowerShell 7, the project folder, and only the extra items policy and the user granted. Nothing else from the computer is visible: not the user's profile, not other projects, not network shares, not the computer's credentials.
| Path | Access | Contents |
|---|---|---|
C:\workspace | Read and write | The project folder on the computer. The agent's working folder. Everything the agent writes here is in your project folder. |
C:\tools | Read-only | The AI tools turned on for this project, one folder per tool. Their commands are on the PATH. Absent when no tool is turned on. |
L:\ | Depends on grant | Files and folders granted through File Access. |
C:\certs | Read-only | The certificate the agent trusts for TLS inspection. |
C:\levee-config | Read-only | Configuration Levee writes for the agent: always a guide (AGENTS.md) that describes the sandbox layout, and the connection details for search, Microsoft 365 and plugins when those are on. |
Environment the agent sees
Levee sets standard variables so that ordinary programs work without configuration:
| Variable | Purpose |
|---|---|
HTTP_PROXY, HTTPS_PROXY | Route web traffic through Levee's web access control. |
NO_PROXY | localhost,127.0.0.1 |
SSL_CERT_FILE, NODE_EXTRA_CA_CERTS, REQUESTS_CA_BUNDLE, CURL_CA_BUNDLE, GIT_SSL_CAINFO | The certificate in C:\certs, for inspected HTTPS sites. |
ANTHROPIC_BASE_URL, ANTHROPIC_API_KEY | Route Anthropic-protocol model calls through model access. The key is a per-session placeholder. |
OPENAI_BASE_URL, OPENAI_API_KEY | The same for OpenAI-protocol clients. |
LEVEE_AGENT_CONFIG_DIR | C:\levee-config. |
LEVEE_PROJECT_ID | The project's identifier. |
Plus any variables from container.environmentVariables.
Databases
The Levee database driver is preinstalled in the image. Data sources granted by Database Access are available to the agent by name; no connection string or password is needed inside the sandbox.
The project folder on the computer
Each project is a folder under the user's project root (by default %USERPROFILE%\LeveeProjects). Levee creates it with:
| Item | Purpose |
|---|---|
project.json | The project's identity and settings, such as its turned-on tools. Managed by Levee; do not edit it by hand. |
.levee\ | Levee working data for the project. |
.gitignore | Contains .levee/, so Levee's working data stays out of version history. |
Remembered approvals and file grants are not kept in the project folder. The Levee service stores them where only the system can read them. File grants are tied to the project folder; remembered approvals are tied to the project folder and to the user who started the project.
Automatic snapshots
If Git (a version history program) is installed on the computer, Levee keeps a history of the project folder. Each time the project stops with unsaved changes, Levee records the current state of the folder (respecting .gitignore) with the message Levee auto-save: <timestamp> (author Levee). This shows what the agent changed between sessions and lets you go back to an earlier state:
cd "$env:USERPROFILE\LeveeProjects\my-project"
git log --oneline
git diff HEAD~1 --stat
If Git is not installed on the computer, projects work normally without the automatic snapshots.
Related settings
- Where the sandbox image comes from and how much disk it needs: Container Runtime.
- Where projects are created: Projects.