--- name: openclaw-cli description: Master the OpenClaw CLI - gateway, agents, channels, skills, hooks, and automation --- # OpenClaw CLI Complete reference for openclaw command-line interface operations. ## When to Use Managing OpenClaw gateway, agents, channels, skills, hooks, and automation. ## Core Commands ### Setup & Onboarding **Initial setup:** ```bash # Quick onboarding with daemon install openclaw onboard --install-daemon # Setup workspace and config openclaw setup --workspace ~/.openclaw/workspace # Interactive configuration openclaw configure ``` **Health check:** ```bash openclaw doctor ``` ### Gateway Management **Run gateway:** ```bash # Interactive mode openclaw gateway # With specific port openclaw gateway --port 18789 # With tailscale openclaw gateway --tailscale serve ``` **Gateway service:** ```bash # Install as system service openclaw gateway install # Control service openclaw gateway start openclaw gateway stop openclaw gateway restart openclaw gateway status ``` **Gateway health:** ```bash openclaw status openclaw status --deep # Probe channels openclaw health ``` ### Agent Management **List agents:** ```bash openclaw agents list openclaw agents list --bindings # Show routing ``` **Add agent:** ```bash # Interactive wizard openclaw agents add # Non-interactive openclaw agents add dev \ --workspace ~/.openclaw/workspace-dev \ --model claude-sonnet-4.5 \ --non-interactive ``` **Delete agent:** ```bash openclaw agents delete ``` **Set identity:** ```bash # From IDENTITY.md openclaw agents set-identity --agent main --from-identity # Explicit values openclaw agents set-identity --agent main \ --name "MyAgent" \ --emoji "🤖" \ --avatar avatars/bot.png ``` ### Skills Management **List skills:** ```bash openclaw skills list openclaw skills list --eligible # Only ready skills openclaw skills list --json # JSON output ``` **Skill info:** ```bash openclaw skills info ``` **Check eligibility:** ```bash openclaw skills check ``` ### Hooks Management **List hooks:** ```bash openclaw hooks list openclaw hooks list --eligible openclaw hooks list --verbose # Show missing requirements ``` **Hook info:** ```bash openclaw hooks info ``` **Enable/disable:** ```bash openclaw hooks enable session-memory openclaw hooks disable command-logger ``` **Install hooks:** ```bash # From npm openclaw hooks install @openclaw/my-hooks # Local directory openclaw hooks install ./my-hooks # Link (development) openclaw hooks install -l ./my-hooks ``` **Update hooks:** ```bash openclaw hooks update openclaw hooks update --all ``` ### Channel Management **List channels:** ```bash openclaw channels list ``` **Channel status:** ```bash openclaw channels status openclaw channels status --probe ``` **Add channel:** ```bash # Interactive openclaw channels add # Telegram bot openclaw channels add --channel telegram \ --account alerts \ --name "Alerts Bot" \ --token $TELEGRAM_BOT_TOKEN # Discord openclaw channels add --channel discord \ --account work \ --token $DISCORD_BOT_TOKEN ``` **Remove channel:** ```bash openclaw channels remove --channel telegram --account alerts openclaw channels remove --channel discord --account work --delete ``` **WhatsApp login:** ```bash openclaw channels login --channel whatsapp ``` **Channel logs:** ```bash openclaw channels logs openclaw channels logs --channel whatsapp --lines 100 ``` ### Models & Authentication **Status:** ```bash openclaw models status openclaw models status --probe # Live check openclaw models status --probe-provider anthropic ``` **List models:** ```bash openclaw models list openclaw models list --all openclaw models list --provider anthropic ``` **Set default:** ```bash openclaw models set claude-sonnet-4.5 openclaw models set-image claude-sonnet-4.5 ``` **Auth setup:** ```bash # Anthropic (recommended) claude setup-token openclaw models auth setup-token --provider anthropic # Or paste token openclaw models auth paste-token --provider anthropic ``` **Fallbacks:** ```bash openclaw models fallbacks list openclaw models fallbacks add claude-opus-4.6 openclaw models fallbacks remove claude-haiku-4.5 openclaw models fallbacks clear ``` **Scan for models:** ```bash openclaw models scan openclaw models scan --set-default ``` ### Messaging **Send message:** ```bash openclaw message send \ --target +15555550123 \ --message "Hello from OpenClaw" # Discord channel openclaw message send \ --channel discord \ --target channel:123456 \ --message "Deployment complete" ``` **Send poll:** ```bash openclaw message poll \ --channel discord \ --target channel:123 \ --poll-question "Lunch?" \ --poll-option "Pizza" \ --poll-option "Sushi" ``` **Other message operations:** ```bash openclaw message read --target +15555550123 openclaw message react --target --emoji "👍" openclaw message edit --target --message "Updated" openclaw message delete --target ``` ### Browser Control **Status & control:** ```bash openclaw browser status openclaw browser start openclaw browser stop openclaw browser tabs ``` **Navigate:** ```bash openclaw browser open https://example.com openclaw browser navigate https://example.com --target-id ``` **Interact:** ```bash openclaw browser click "#submit-button" openclaw browser type "#email" "user@example.com" openclaw browser press Enter ``` **Capture:** ```bash openclaw browser screenshot openclaw browser screenshot --full-page openclaw browser snapshot --format ai ``` **Profiles:** ```bash openclaw browser profiles openclaw browser create-profile --name dev openclaw browser delete-profile --name old ``` ### Nodes & Devices **List nodes:** ```bash openclaw nodes list openclaw nodes status --connected ``` **Node operations:** ```bash # Describe node openclaw nodes describe --node # Run command on node openclaw nodes run --node --cwd /path -- ls -la # Notify (macOS) openclaw nodes notify --node \ --title "Build Complete" \ --body "Success" \ --sound default ``` **Camera:** ```bash openclaw nodes camera list --node openclaw nodes camera snap --node --facing front openclaw nodes camera clip --node --duration 10s ``` **Canvas:** ```bash openclaw nodes canvas snapshot --node openclaw nodes canvas present --node --target index.html openclaw nodes canvas hide --node ``` **Screen recording:** ```bash openclaw nodes screen record --node --duration 30s ``` ### System Commands **System event:** ```bash openclaw system event --text "Deployment complete" --mode now ``` **Heartbeat:** ```bash openclaw system heartbeat last openclaw system heartbeat enable openclaw system heartbeat disable ``` **Presence:** ```bash openclaw system presence ``` ### Cron Jobs **List jobs:** ```bash openclaw cron list openclaw cron list --all openclaw cron status ``` **Add job:** ```bash # System event every hour openclaw cron add \ --name "hourly-check" \ --every "1h" \ --system-event "Hourly check" # Message at specific time openclaw cron add \ --name "morning-reminder" \ --at "09:00" \ --message "Good morning!" ``` **Manage jobs:** ```bash openclaw cron enable openclaw cron disable openclaw cron rm openclaw cron run ``` **Job runs:** ```bash openclaw cron runs --id --limit 10 ``` ### Configuration **Get/set config:** ```bash # Get value openclaw config get agents.defaults.model.primary # Set value openclaw config set agents.defaults.model.primary "claude-sonnet-4.5" # Unset value openclaw config unset some.config.path ``` ### Memory Operations **Memory status:** ```bash openclaw memory status ``` **Index memory:** ```bash openclaw memory index ``` **Search memory:** ```bash openclaw memory search "GraphQL implementation patterns" ``` ### Logs **Tail logs:** ```bash openclaw logs openclaw logs --follow openclaw logs --limit 200 openclaw logs --json ``` ### Sandbox **List sandboxes:** ```bash openclaw sandbox list ``` **Recreate sandbox:** ```bash openclaw sandbox recreate ``` ### Security **Security audit:** ```bash openclaw security audit openclaw security audit --deep openclaw security audit --fix ``` ### Plugins **List plugins:** ```bash openclaw plugins list openclaw plugins list --json ``` **Plugin info:** ```bash openclaw plugins info ``` **Install plugin:** ```bash openclaw plugins install ``` **Enable/disable:** ```bash openclaw plugins enable openclaw plugins disable ``` **Plugin health:** ```bash openclaw plugins doctor ``` ### Update & Maintenance **Update OpenClaw:** ```bash openclaw update ``` **Reset config:** ```bash openclaw reset --scope config openclaw reset --scope config+creds+sessions openclaw reset --scope full ``` **Uninstall:** ```bash openclaw uninstall --service openclaw uninstall --state openclaw uninstall --workspace openclaw uninstall --all ``` ## Global Flags **Available everywhere:** ```bash --dev # Use ~/.openclaw-dev for isolation --profile # Use ~/.openclaw- --no-color # Disable ANSI colors --json # Machine-readable output -V, --version # Show version ``` ## Common Workflows ### First-Time Setup ```bash # 1. Onboard with daemon openclaw onboard --install-daemon # 2. Pair WhatsApp (or other channel) openclaw channels login # 3. Start gateway openclaw gateway # 4. Test with message openclaw message send --target +1234567890 --message "Test" ``` ### Multi-Agent Setup ```bash # 1. Add agent openclaw agents add work --workspace ~/.openclaw/workspace-work # 2. Set identity openclaw agents set-identity --agent work --from-identity # 3. Add binding (in openclaw.json) # bindings: [{ agentId: "work", match: { channel: "discord" } }] # 4. List to verify openclaw agents list --bindings ``` ### Hook Automation ```bash # 1. Enable session memory hook openclaw hooks enable session-memory # 2. Enable command logger openclaw hooks enable command-logger # 3. Verify openclaw hooks check # 4. Restart gateway openclaw gateway restart ``` ### Channel Setup ```bash # 1. Add Telegram bot openclaw channels add --channel telegram \ --account alerts \ --token $TELEGRAM_BOT_TOKEN # 2. Verify openclaw channels status # 3. Send test message openclaw message send --channel telegram \ --target \ --message "Bot online" ``` ### Model Configuration ```bash # 1. Setup auth claude setup-token # 2. Set default model openclaw models set claude-sonnet-4.5 # 3. Add fallbacks openclaw models fallbacks add claude-opus-4.6 openclaw models fallbacks add claude-haiku-4.5 # 4. Verify openclaw models status ``` ## Debugging **Check gateway status:** ```bash openclaw status --deep openclaw doctor openclaw health ``` **View logs:** ```bash openclaw logs --follow openclaw channels logs --lines 200 ``` **Test channel:** ```bash openclaw channels status --probe ``` **Check skills/hooks:** ```bash openclaw skills check openclaw hooks check openclaw plugins doctor ``` ## Tips 1. **Use `--json` for scripting** - All commands support JSON output 2. **Profile isolation** - Use `--profile` for testing without affecting main config 3. **Doctor fixes** - Run `openclaw doctor` regularly to catch issues 4. **Logs location** - `~/.openclaw/logs/` for file logs 5. **Config location** - `~/.openclaw/openclaw.json` 6. **Workspace** - `~/.openclaw/workspace` (or custom path) ## Resources - [OpenClaw Docs](https://docs.openclaw.org/) - [CLI Reference](https://docs.openclaw.org/cli/) - [Multi-Agent Routing](https://docs.openclaw.org/concepts/multi-agent) - [Hooks System](https://docs.openclaw.org/automation/hooks) - [Skills System](https://docs.openclaw.org/tools/skills)