Quickstart for building and running agent sandboxes on the Trelent platform.
- Docker
- Python 3.11+ with uv
- Trelent credentials (client ID + secret)
uv syncuv tool install ./trelent-cliThis installs trelent globally. To update after changes:
uv tool install ./trelent-cli --reinstallAdd a profile with your credentials:
trelent auth add dev --skip-verify
# Prompts for: Client ID, Client secret, API URLUse --skip-verify if credential verification fails (e.g., network issues). Then test separately:
trelent auth testSwitch between profiles:
trelent auth list # See all profiles
trelent auth use dev # Set default
trelent -p prod <command> # Use specific profile for one commandCreate your agent as a folder under agents/ with a Dockerfile:
agents/
├── build_and_push.sh
├── data-handler/
│ ├── Dockerfile
│ └── skills/
├── translator-agent/
│ └── ...
└── my-custom-agent/ # ← Your new agent
├── Dockerfile
└── skills/
Then build and push using the folder name:
cd agents
./build_and_push.sh my-custom-agent # Pushes as :latest
./build_and_push.sh my-custom-agent:v2 # Custom tagThe script handles Docker login, build, and push to registry.dev.trelent.com/<client_id>/<agent>:<tag>.
The image is automatically registered as a sandbox once pushed.
trelent sandboxes listOutput:
Available sandboxes:
- data-handler:latest
- translator-agent:latest
Basic run:
trelent runs create \
-s data-handler:latest \
-p "Analyze the CSV and show me the top 5 rows by revenue"With local file import (mounted at /mnt/):
trelent runs create \
-s data-handler:latest \
-p "Parse /mnt/sales.csv and summarize the data" \
-i ~/data/sales.csvTrack until completion with -t:
trelent runs create \
-s translator-agent:latest \
-p "Translate 'Hello world' to Japanese" \
-ttrelent runs list # Recent runs
trelent runs list -s data-handler:latest # Filter by sandbox
trelent runs get <run-id> # Get run details
trelent runs get --latest # Most recent run
trelent runs track <run-id> # Poll until complete
trelent runs track --latest # Track most recentContinue from a previous run's state:
trelent runs fork <run-id> -p "Now group by region instead"
trelent runs fork --latest -p "Add a chart"| Agent | Description | Example Prompt |
|---|---|---|
data-handler |
CSV analysis with csvkit | "Show stats for /mnt/data.csv" |
translator-agent |
Text translation | "Translate 'Good morning' to French" |
Custom sandbox images must:
- Use Alpine base (e.g.,
python:3.12-alpine) - Install bash:
apk add --no-cache bash - Include keep-alive CMD
- Place skill docs in
/skills/
See agents/data-handler/Dockerfile for a working example.