CLI Overview

CLI Documentation

The PowBot Desktop Command Line Interface (CLI) allows you to manage accounts, instances, and proxies programmatically. This is perfect for automation, scripting, and integration with other tools.

Overview

The CLI provides commands for:

  • Account Management: List, view, and manage bot accounts
  • Instance Management: Control bot instances programmatically
  • Proxy Management: Configure and manage proxy settings

All commands support multiple output formats (text, JSON, YAML) for easy integration.

Quick Start

Basic Usage

# List all accounts
pow-desktop.exe accounts list

# List all instances
pow-desktop.exe instances list

# List all proxies
pow-desktop.exe proxies list

Output Formats

All commands support multiple output formats:

# Text format (default)
pow-desktop.exe accounts list

# JSON format
pow-desktop.exe accounts list --output json

# YAML format
pow-desktop.exe accounts list --output yaml

Commands

Accounts

Manage bot accounts through the CLI:

  • Accounts CLI - List, view, and manage accounts

Examples:

# List all accounts
pow-desktop.exe accounts list

# Get account details
pow-desktop.exe accounts get acc-123

# Export accounts to JSON
pow-desktop.exe accounts list --output json > accounts.json

Instances

Control bot instances programmatically:

  • Instances CLI - List, view, and manage instances

Examples:

# List all instances
pow-desktop.exe instances list

# Get instance details
pow-desktop.exe instances get inst-123

# Filter running instances
pow-desktop.exe instances list --output json | jq '.[] | select(.status == "Running")'

Proxies

Configure and manage proxy settings:

  • Proxies CLI - Create, list, update, and delete proxies

Examples:

# List all proxies
pow-desktop.exe proxies list

# Create a new proxy
pow-desktop.exe proxies create proxy-1 "My Proxy" 127.0.0.1 1080 --enabled

# Update proxy settings
pow-desktop.exe proxies update proxy-1 --host newhost.example.com --port 9090

Output Formats

Text Format (Default)

Human-readable table format suitable for terminal viewing:

ID          DISPLAY_NAME    ACCOUNT_TYPE    EMAIL
acc-123     My Account      jagex           [email protected]

JSON Format

Structured JSON output suitable for programmatic processing:

[
  {
    "id": "acc-123",
    "display_name": "My Account",
    "account_type": "jagex",
    "email": "[email protected]"
  }
]

YAML Format

YAML output for configuration files:

- id: acc-123
  display_name: My Account
  account_type: jagex
  email: [email protected]

Automation Examples

Script Integration

#!/bin/bash
# Get account details and use in script
ACCOUNT=$(pow-desktop.exe accounts get acc-123 --output json)
EMAIL=$(echo $ACCOUNT | jq -r '.email')
echo "Using account: $EMAIL"

Monitoring

# Monitor instance status
while true; do
  pow-desktop.exe instances get inst-123 --output text
  sleep 5
done

Bulk Operations

# Export all accounts to YAML
pow-desktop.exe accounts list --output yaml > accounts_backup.yaml

# Find accounts needing refresh
pow-desktop.exe accounts list --output json | jq '.[] | select(.needs_refresh == true)'

Security Considerations

  • No Credentials Exposed: Passwords and sensitive tokens are never displayed in CLI output
  • Read-Only Operations: Most CLI commands provide read-only access
  • Safe for Scripting: Output can be safely logged or piped without exposing credentials

Exit Codes

  • 0 - Success
  • 1 - Error (e.g., not found, database error)

Getting Help

For detailed information on each command:

  • Accounts CLI - Complete accounts command reference
  • Instances CLI - Complete instances command reference
  • Proxies CLI - Complete proxies command reference