Skip to main content

Introduction

The RunTools CLI provides full access to the platform from your terminal.

Installation

npm install -g @runtools/cli
Verify installation:
runtools --version

Authentication

# Login via browser (OAuth)
runtools login

# Or set API key directly
runtools auth set-key rt_live_xxx

# Check current auth
runtools auth whoami
# → Logged in as: [email protected] (org: acme-corp)

Commands

Sandboxes

# Create sandbox
runtools sandbox create --template nodejs-20
# → Created: sandbox-abc123

# List sandboxes
runtools sandbox list
# → ID              STATUS    TEMPLATE     CREATED
# → sandbox-abc123  running   nodejs-20    2 min ago

# SSH into sandbox
runtools sandbox ssh sandbox-abc123

# Execute command
runtools sandbox exec sandbox-abc123 "npm run build"

# Stream logs
runtools sandbox logs sandbox-abc123 --follow

# Get dev URL
runtools sandbox url sandbox-abc123
# → https://sandbox-abc123.sandboxes.runtools.ai

# Pause/Resume
runtools sandbox pause sandbox-abc123
runtools sandbox resume sandbox-abc123

# Sync local files
runtools sandbox sync ./my-project sandbox-abc123:/workspace --watch

# Destroy
runtools sandbox destroy sandbox-abc123

Templates

# List templates
runtools template list

# Create from config
runtools template create --config template.yaml

# Create from Dockerfile
runtools template create --slug my-env --dockerfile ./Dockerfile

# Build status
runtools template status my-env

# Build logs
runtools template logs my-env --follow

# Delete
runtools template delete my-env

Agents

# List runtimes
runtools runtime list

# Create runtime
runtools runtime create --config agent.yaml

# Deploy
runtools deploy create \
  --runtime code-assistant \
  --template nodejs-20 \
  --api-slug my-bot

# Run agent
runtools agent run my-bot "Build a todo app"

# Run with streaming
runtools agent run my-bot "Build a landing page" --stream

# Interactive chat
runtools agent chat my-bot

Code Execution

# Quick execute
runtools exec --runtime python "print(1 + 1)"
# → 2

# Execute file
runtools exec --runtime python ./script.py

# Multiple files
runtools exec --runtime python --entry main.py ./src/

Tools

# List installed tools
runtools tool list

# Install tool
runtools tool install gmail

# Configure tool
runtools tool configure gmail

# Execute tool
runtools tool exec gmail send_email --to [email protected]

# Search tools
runtools tool search "send notification"

Secrets

# Set secret
runtools secret set DATABASE_URL "postgres://..."

# List secrets
runtools secret list

# Delete secret
runtools secret delete DATABASE_URL

Schedules

# Create schedule
runtools schedule create \
  --deployment my-bot \
  --cron "0 9 * * *" \
  --message "Check my emails"

# List schedules
runtools schedule list

# Delete schedule
runtools schedule delete schedule-abc123

AIP Hub

# List sessions
runtools aip sessions

# Create session
runtools aip session create --name "Auth Feature"

# Search context
runtools aip search "How does JWT work?"

# Invoke with context
runtools aip invoke code-assistant --session sess_abc "Continue the implementation"

Local Development

# Initialize runtools in project
runtools init
# Creates runtools.yaml

# Start local development
runtools dev

# Or with cloud sandbox
runtools dev --cloud

Configuration File

runtools.yaml
project: my-saas-app
template: nodejs-20
agent: code-assistant

sync:
  - ./src:/workspace/src
  - ./package.json:/workspace/package.json
  ignore:
    - node_modules
    - .git

env:
  NODE_ENV: development

Global Options

FlagDescription
--helpShow help
--versionShow version
--jsonOutput as JSON
--quietSuppress output
--verboseVerbose output

Environment Variables

VariableDescription
RUNTOOLS_API_KEYAPI key (alternative to runtools login)
RUNTOOLS_API_URLCustom API URL

Next Steps