curl -fsSL https://superserve.ai/install | sh
superserve login
Authenticate via browser. Credentials stored at ~/.superserve/credentials.json.
superserve login
superserve logout
You can also authenticate non-interactively with an API key:
superserve login --api-key your-api-key
superserve deploy
Package and deploy your agent to Superserve.
superserve deploy [ENTRYPOINT] [--name NAME] [--port PORT] [--dir PATH] [--json]
superserve deploy agent.py # Python agent
superserve deploy agent.ts # TypeScript agent
superserve deploy agent.py --name reviewer # Custom name
superserve deploy server.py --port 8000 # HTTP server mode
superserve deploy # Uses superserve.yaml
| Flag | Description |
|---|
ENTRYPOINT | Script to run (e.g. agent.py, src/main.ts). Without this, reads superserve.yaml. |
--name, -n | Agent name (default: directory name) |
--port, -p | HTTP proxy mode - forward to this port instead of using stdio |
--dir | Project directory (default: .) |
--yes, -y | Skip confirmation when redeploying |
--json | Output as JSON |
Supported entrypoints: .py, .ts, .tsx, .js, .jsx, .mjs, .cjs
Dependency detection:
| File | Language | Install method |
|---|
requirements.txt | Python | uv pip install |
pyproject.toml | Python | uv pip install |
package.json | TypeScript / JS | npm install |
superserve init
Generate a superserve.yaml config file. Only needed if you want to customize the defaults.
superserve init [--name NAME]
name: my-agent
command: python main.py
# secrets:
# - ANTHROPIC_API_KEY
# ignore:
# - .venv
# - __pycache__
If .env.example exists, secrets are auto-detected.
superserve run
Start a conversation with a deployed agent. Creates a session automatically.
superserve run AGENT [PROMPT] [--single] [--json]
| Flag | Description |
|---|
PROMPT | Initial message. Omit for interactive mode. |
--single | Exit after one response |
--json | Raw SSE events as JSON |
# Interactive multi-turn
superserve run my-agent
# Single prompt, single response
superserve run my-agent "Explain this stack trace" --single
# Pipe output as JSON (useful for scripts)
superserve run my-agent "Summarize this file" --single --json
superserve secrets
Encrypted environment variables. Values are never returned by the API.
# Set one or more secrets
superserve secrets set AGENT KEY=VALUE [KEY=VALUE ...]
# List key names (values are never shown)
superserve secrets list AGENT
# Delete a secret
superserve secrets delete AGENT KEY [--yes]
# Example: set multiple secrets at once
superserve secrets set my-agent ANTHROPIC_API_KEY=sk-ant-... DATABASE_URL=postgres://...
superserve agents
# List all agents
superserve agents list [--status STATUS] [--json]
# Get agent details
superserve agents get NAME [--json]
# Delete agent and all data
superserve agents delete NAME [--yes]
| Status | Description |
|---|
Ready | Deployed and available |
Deploying | Installing dependencies |
Failed | Dependency install failed |
superserve sessions
# List sessions (optionally filter by agent or status)
superserve sessions list [AGENT] [--status STATUS] [--json]
# Get session details
superserve sessions get SESSION_ID [--json]
# Resume a previous session
superserve sessions resume SESSION_ID
# End a session (workspace preserved)
superserve sessions end SESSION_ID
Session IDs accept short prefixes - a1b2 matches a1b2c3d4-e5f6-....
| Status | Description |
|---|
active | Processing a message |
idle | Waiting for next message |
completed | Ended by user |
failed | Crashed or timed out |