forked from Selig/openclaw-skill
6 custom skills (assign-task, dispatch-webhook, daily-briefing, task-capture, qmd-brain, tts-voice) with technical documentation. Compatible with Claude Code, OpenClaw, Codex CLI, and OpenCode.
54 lines
1.6 KiB
Markdown
54 lines
1.6 KiB
Markdown
# Remote Control
|
|
|
|
## Overview
|
|
|
|
OpenClaw's remote control capabilities allow a macOS app to function as a controller for an OpenClaw gateway on another host via SSH.
|
|
|
|
## Key Operational Modes
|
|
|
|
The system supports three operational approaches:
|
|
|
|
1. **Local execution** on the macOS device
|
|
2. **Remote over SSH** (default) with port forwarding
|
|
3. **Remote direct** using WebSocket connections without SSH tunneling
|
|
|
|
## Transport Options
|
|
|
|
Two transport mechanisms are available:
|
|
|
|
- **SSH tunneling**: Masks the client as localhost
|
|
- **Direct WebSocket**: Exposes the actual client IP
|
|
|
|
## Setup Requirements
|
|
|
|
### Remote Host Requirements
|
|
|
|
- Node.js, pnpm, and the OpenClaw CLI installed
|
|
- Accessible on the system PATH
|
|
- SSH should use key-based authentication
|
|
- Tailscale IPs recommended for reliable off-network access
|
|
|
|
### macOS App Configuration
|
|
|
|
1. Select transport type
|
|
2. Specify the SSH target
|
|
3. Optionally provide gateway URLs and identity file paths
|
|
4. Use "Test remote" feature to validate connectivity
|
|
|
|
## Web Chat Integration
|
|
|
|
Web Chat operates through the same SSH tunnel or direct gateway connection depending on the selected transport method.
|
|
|
|
## Security Considerations
|
|
|
|
- Use loopback bindings with either SSH or Tailscale for secure connections
|
|
- Implement token/password authentication when binding to non-loopback interfaces
|
|
|
|
## Troubleshooting
|
|
|
|
Common issues include:
|
|
|
|
- **Exit code 127**: PATH configuration problems
|
|
- **SSH connectivity failures**: Check key authentication and host accessibility
|
|
- **Port forwarding mismatches**: Verify WebSocket connection ports match configuration
|