Skip to main content
Command Aliases: You can use either op or opperator as the command name interchangeably.

Quick Reference

Core Commands

CommandDescription
op or opperatorStart the Opperator TUI
op setupInitialize and configure authentication
op doctorRun diagnostics on your installation

Agent Management

CommandArgumentsDescription
op agent list[--running] [--stopped] [--crashed] [--daemon <name>]List all configured agents and their status
op agent bootstrap<name> [-d description] [--no-start] [--daemon <name>]Create a new agent with SDK and templates
op agent start[name] [--daemon <name>]Start an agent
op agent stop[name] [-a|--all] [--daemon <name>]Stop a running agent or all agents
op agent restart<name> [--daemon <name>]Restart an agent
op agent delete<name> [-f|--force] [--daemon <name>]Delete an agent and all its data
op agent move<name> --to <daemon> [-f] [--no-start]Move agent between daemons
op agent where<name>Find which daemon hosts an agent
op agent reload-Reload configuration
op agent logs<name> [-f] [-n lines] [--daemon <name>]View agent logs
op agent command<name> <cmd> [--args <json>] [--timeout <duration>] [--daemon <name>]Execute a command on an agent
op agent commands<name> [--daemon <name>]List available commands for an agent
For detailed agent lifecycle management and building agents, see Agent Lifecycle and Building Your First Agent.

Cloud Deployment

CommandArgumentsDescription
op cloud deploy-Interactive wizard to deploy daemon to cloud VPS
op cloud list-List all cloud deployments
op cloud update<daemon-name> [--pre-release]Update cloud daemon binary
op cloud destroy<name> [-f]Destroy cloud VPS and delete server

Daemon Management

CommandArgumentsDescription
op daemon add<name> <address> [--token <token>] [--enabled]Register daemon connection
op daemon list-List all configured daemons
op daemon remove<name> [-f]Unregister daemon
op daemon test<name>Test daemon connectivity
op daemon enable<name>Enable daemon connection
op daemon disable<name>Disable daemon connection
op daemon start-Start the daemon
op daemon stop-Stop the daemon
op daemon status-Check daemon status
op daemon metrics-Display daemon metrics

Secret Management

CommandArgumentsDescription
op secret create<name> [value]Create a new secret (prompts if value not provided)
op secret update<name> [value]Update an existing secret (prompts if value not provided)
op secret read<name>Read a secret value
op secret delete<name>Delete a secret
op secret list-List all stored secrets
op secret status<name>Check if a secret exists
Reserved Secret: OPPER_API_KEY is reserved for Opper service authentication. Secret values can be provided as arguments or via secure prompt (recommended for sensitive data).

Async Task Management

CommandArgumentsDescription
op async list[--status <status>] [--origin <origin>] [--session <id>] [--client <client>]List all async tasks
op async get<task-id>Get details for a specific task
op async delete<task-id>Delete a completed task

Version Management

CommandArgumentsDescription
op version show-Display current version
op version check[--pre-release]Check for available updates
op version update[--pre-release]Update to latest version

Detailed Command Reference

Global Flags

FlagDescriptionExample
-h, --helpShow help for commandop agent -h
--versionShow version informationop --version
--tui-cpuprofile <file>Debug TUI performanceop --tui-cpuprofile prof.out

Agent Bootstrap Flags

FlagDescriptionDefaultExample
-d, --descriptionAgent description""op agent bootstrap my_agent -d "Processes webhooks"
--no-startSkip auto-starting after creationfalseop agent bootstrap my_agent --no-start
--daemon <name>Target specific daemonauto-detectop agent bootstrap my_agent --daemon production

Agent List Flags

FlagDescriptionExample
--runningShow only running agentsop agent list --running
--stoppedShow only stopped agentsop agent list --stopped
--crashedShow only crashed agentsop agent list --crashed
--daemon <name>List agents on specific daemonop agent list --daemon production

Agent Start/Stop/Restart/Delete Flags

FlagDescriptionDefaultExample
--daemon <name>Target specific daemonauto-detectop agent start my_agent --daemon production
-a, --allStop all agents (stop only)falseop agent stop --all
-f, --forceSkip confirmation (delete only)falseop agent delete my_agent -f

Agent Move Flags

FlagDescriptionRequiredExample
--to <daemon>Destination daemon nameYesop agent move my_agent --to production
-f, --forceForce move if conflicts existNoop agent move my_agent --to staging -f
--no-startDon’t start agent after moveNoop agent move my_agent --to staging --no-start

Agent Logs Flags

FlagDescriptionDefaultExample
-f, --followFollow log output in real-timefalseop agent logs my_agent -f
-n, --lines intNumber of lines to show (0 = all)0op agent logs my_agent -n 50
--daemon <name>Target specific daemonauto-detectop agent logs my_agent --daemon production

Agent Command Flags

FlagDescriptionExample
--args <json>Pass arguments as JSONop agent command my_agent process --args '{"id": 123}'
--timeout <duration>Set command timeoutop agent command my_agent long_task --timeout 5m
--daemon <name>Target specific daemonop agent command my_agent status --daemon production

Cloud Deploy Options

The op cloud deploy command launches an interactive wizard that prompts for:
  • Cloud provider selection (currently Hetzner)
  • Server location/datacenter
  • Server type/size
  • SSH key configuration
  • Daemon name

Cloud Update Flags

FlagDescriptionDefaultExample
--pre-releaseInclude pre-release versionsfalseop cloud update my-daemon --pre-release

Cloud Destroy Flags

FlagDescriptionDefaultExample
-f, --forceSkip confirmation promptfalseop cloud destroy my-daemon -f

Daemon Add Flags

FlagDescriptionExample
--token <token>Authentication token for TCP connectionsop daemon add prod tcp://host:9999 --token=$TOKEN
--enabledEnable daemon immediatelyop daemon add prod tcp://host:9999 --enabled

Daemon Remove Flags

FlagDescriptionDefaultExample
-f, --forceSkip confirmation promptfalseop daemon remove old_daemon -f

Async List Flags

FlagDescriptionExample
--status <status>Filter by status (pending, running, completed, failed)op async list --status running
--origin <origin>Filter by originop async list --origin webhook_processor
--session <id>Filter by session IDop async list --session sess_123
--client <client>Filter by clientop async list --client api

Version Check/Update Flags

FlagDescriptionDefaultExample
--pre-releaseInclude pre-release versionsfalseop version check --pre-release

Common Use Cases

Creating a new agent

# Bootstrap a new agent with auto-start
op agent bootstrap my_agent -d "Processes incoming webhooks"

# Bootstrap without starting (for manual setup)
op agent bootstrap my_agent --no-start

# Bootstrap on specific daemon
op agent bootstrap my_agent --daemon production

# The agent is created at ~/.config/opperator/agents/my_agent/

Starting and monitoring an agent

# List available agents
op agent list

# List only running agents
op agent list --running

# Start specific agent
op agent start my_agent

# Follow logs to verify
op agent logs my_agent -f

# View last 100 lines
op agent logs my_agent -n 100

Stopping agents

# Stop specific agent
op agent stop my_agent

# Stop all agents
op agent stop --all

Deleting an agent

# Delete with confirmation prompt
op agent delete old_agent

# Force delete without confirmation
op agent delete old_agent -f

# This removes:
# - Agent directory and files
# - Configuration entry (agents.yaml)
# - Persistent data (agent_data.json)
# - All logs and async tasks

Managing secrets

# Create a secret for API key (will prompt for value)
op secret create GITHUB_TOKEN

# Or provide the value inline
op secret create GITHUB_TOKEN ghp_xxxxx

# Verify it exists
op secret status GITHUB_TOKEN

# List all secrets
op secret list

# Update a secret
op secret update GITHUB_TOKEN

# Delete a secret
op secret delete GITHUB_TOKEN

Monitoring async tasks

# List all background tasks
op async list

# Filter by status
op async list --status running

# Filter by session
op async list --session sess_abc123

# Get details for specific task
op async get task_12345

# Clean up completed task
op async delete task_12345

Debugging issues

# Run diagnostics
op doctor

# Check daemon status
op daemon status

# View agent logs (all lines)
op agent logs my_agent

# View last 100 lines
op agent logs my_agent -n 100

# Follow logs in real-time
op agent logs my_agent -f

Advanced Workflows

Cloud Deployment

# Deploy new cloud VPS (interactive wizard)
op cloud deploy

# Verify deployment
op cloud list

# Push updates to cloud daemon
op cloud update my-cloud-daemon

# Update with pre-release version
op cloud update my-cloud-daemon --pre-release

# Destroy when done
op cloud destroy my-cloud-daemon

# Force destroy without confirmation
op cloud destroy my-cloud-daemon --force

Moving Agents

# Find agent location
op agent where my_agent

# Move to different daemon
op agent move my_agent --to production

# Move without auto-starting
op agent move my_agent --to staging --no-start

# Force move (resolve conflicts)
op agent move my_agent --to prod --force

# Verify new location
op agent where my_agent

Executing Agent Commands

# List available commands for an agent
op agent commands my_agent

# Execute a command
op agent command my_agent process_data

# Execute with arguments
op agent command my_agent process_item --args '{"id": 123, "type": "webhook"}'

# Execute with timeout
op agent command my_agent long_running_task --timeout 10m

# Execute on specific daemon
op agent command my_agent status --daemon production

Filtering Agents

# Show all agents
op agent list

# Show only running agents
op agent list --running

# Show only stopped agents
op agent list --stopped

# Show only crashed agents
op agent list --crashed

# Show agents on specific daemon
op agent list --daemon production

Troubleshooting

Command not found

Ensure Opperator is installed and in your PATH:
which op
# or
which opperator

Daemon not running

The daemon starts automatically with the TUI. To check status:
op daemon status
If the daemon isn’t running:
op daemon start

Agent won’t start

Check configuration and logs:
# Run diagnostics
op doctor

# Check agent logs
op agent logs <agent-name>

# Verify agent exists
op agent list

Agent not found

When commands can’t find your agent:
# List all agents across all daemons
op agent list

# Check which daemons are enabled
op daemon list

# Test daemon connectivity
op daemon test <daemon-name>

# Find specific agent location
op agent where <agent-name>

Agent found on multiple daemons

This indicates a configuration conflict:
# See all locations
op agent where <agent-name>

# Delete duplicates or use force move
op agent delete <agent-name> --daemon <daemon-name> -f
op agent move <agent-name> --to <target-daemon> --force

Remote daemon connection failed

# Verify daemon configuration
op daemon list

# Test connectivity
op daemon test <daemon-name>

# Update token if authentication fails
op daemon remove <daemon-name>
op daemon add <daemon-name> <address> --token=$NEW_TOKEN --enabled

Secret not accessible

Verify the secret exists:
# Check specific secret
op secret status <secret-name>

# List all secrets
op secret list

# Create if missing
op secret create <secret-name>

Cloud deployment SSH issues

# Verify cloud deployment exists
op cloud list

# Check SSH key configuration
# Ensure your SSH key is added to the cloud provider

# Destroy and redeploy if needed
op cloud destroy <daemon-name> --force
op cloud deploy

See also