Getting Started
Follow these steps to install the Synodes CLI, authenticate, and create your first sandbox — all in under two minutes.
1. Create Your Account
Sign up at app.synodes.io to get started. Once registered, generate an API key from the Dashboard → API Keys page. Save it somewhere secure — you'll need it to authenticate the CLI and SDKs.
2. Install the CLI
Install via the install script or Homebrew:
# Via install script (macOS & Linux)
curl -fsSL https://get.synodes.io | sh
# Via Homebrew
brew install synodesio/cli/synodes
Verify the installation:
synodes version
3. Authenticate
Log in with your API key or browser-based authentication:
# Browser-based login
synodes auth login
# Or use an API key
export SYNODES_API_KEY="syn_..."
synodes auth login --api-key
The CLI stores credentials in ~/.synodes/config.yaml. Run synodes auth logout to clear them.
4. Create Your First Sandbox
A sandbox is an isolated Linux container with file system, process, and network isolation. Create one with a single command:
synodes create --language python
This provisions a fresh sandbox with the Python base image. You'll see output like:
Sandbox "kind-bassi" created successfully
ID: sand-abc123
Status: running
Add environment variables (like a Turso database) at creation time:
synodes create --language python \
--env TURSO_DATABASE_URL=libsql://my-db-org.turso.io \
--env TURSO_AUTH_TOKEN=your-token
5. Run Code in Your Sandbox
Execute commands inside the sandbox without SSH:
synodes exec sand-abc123 "echo Hello from Synodes!"
synodes exec sand-abc123 "python -c 'print(2 + 2)'"
Open a shell directly:
synodes ssh sand-abc123
6. Connect Your IDE
Synodes integrates with VS Code and any editor that supports remote SSH. Use the sandbox ID to connect:
# VS Code remote
code --remote ssh-remote+sand-abc123
# Or start the web terminal
synodes ssh sand-abc123
7. Stop and Clean Up
Sandboxes auto-stop after 15 minutes of inactivity (configurable). Manually stop or delete:
synodes stop sand-abc123 # Stop (preserves state)
synodes start sand-abc123 # Resume
synodes delete sand-abc123 # Permanently destroy
--auto-stop 0 to keep sandboxes running indefinitely, or --auto-delete 0 for ephemeral sandboxes that auto-destroy on stop.
Next Steps
- Use the Python or TypeScript SDK for programmatic sandbox management
- Learn about per-agent Turso databases
- Explore the full CLI reference