A sandbox is one Kubernetes pod that runs a single agent session. It contains the harness container (the agent itself) and the vault sidecar.Documentation Index
Fetch the complete documentation index at: https://docs.litellm-agent-platform.ai/llms.txt
Use this file to discover all available pages before exploring further.
Session lifecycle
| Status | What it means |
|---|---|
creating | Provisioning the pod and starting the harness. |
ready | Harness is up and accepting messages or terminal attaches. |
dead | Session ended β explicitly stopped or reaped after 24h idle. |
failed | Could not reach ready. failure_reason explains why. |
Idle timeout
Aready session that receives no traffic for 24 hours is reaped by the reconciler. The pod is deleted; status flips to dead. The countdown resets on every message or terminal interaction.
Press Ctrl-D in lap to detach without stopping β the session stays alive; reconnect with lap <agent-name>.
Per-session env vars
Pass short-lived secrets the vault should proxy but never persist:- β€ 50 keys
- β€ 16 KB total
- Keys match
^[A-Za-z_][A-Za-z0-9_]*$ - Cannot overlap reserved keys
Harness types
| Harness | harness_id | Interface | Best for |
|---|---|---|---|
| Claude Code | claude-code | PTY over WebSocket | Interactive terminal work |
| Codex | codex | PTY over WebSocket | Interactive terminal work |
| opencode | opencode | JSON message API | Automation, CI |
| Claude Agent SDK | claude-agent-sdk | JSON message API | Automation with Anthropicβs SDK |
lap. API harnesses receive messages via POST /sessions/{id}/message.