Lesson 7. Mobile Devices (Nodes)#
Why you need this#
Imagine: your OpenClaw assistant runs on a server or home computer. And you want it to take a photo through your phone’s camera, show you an interactive panel on screen, or find out your location. That’s what Nodes are for — connected devices that extend the assistant’s capabilities.
A Node is a phone, tablet, or another computer connected to your OpenClaw. Through nodes, the assistant gets “eyes,” “ears,” and “hands” in the physical world.
What nodes can do#
| Capability | Description | Example |
|---|---|---|
| 📷 Camera | Photos and video from the device camera | “Take a photo of what’s in front of you” |
| 🖥️ Canvas | Show a web page or interface on the device screen | “Show the sales chart on screen” |
| 📍 Geolocation | Find out current location | “Where am I right now?” |
| 🔔 Notifications | Send a notification to the device | “Remind me when I’m near the store” |
| 💻 Command execution | Run programs on the device | “Run the script on Mac” |
| 📱 SMS (Android) | Send SMS messages | “Send an SMS to mom” |
Connecting a device#
Step 1: Install the OpenClaw app#
- iPhone/iPad: download OpenClaw from the App Store
- Android: download OpenClaw from Google Play
- Mac: use the OpenClaw macOS app (menubar app)
Step 2: Connect to Gateway#
In the app, enter your Gateway server address:
- Address: IP or domain name of your server
- Port: 18789 (default)
The app will send a connection request.
Step 3: Approve the connection#
On the server (where Gateway is running), run:
# View pending connections
openclaw devices list
# Approve a device
openclaw devices approve <request-id>Step 4: Verify the connection#
# List connected devices
openclaw nodes status
# Detailed device information
openclaw nodes describe --node <name-or-id>Give the device a friendly name#
openclaw nodes rename --node <id> --name "My iPhone"Camera#
Take a photo#
# Photo from both cameras
openclaw nodes camera snap --node "My iPhone"
# Photo from the front camera
openclaw nodes camera snap --node "My iPhone" --facing front
# Photo from the main camera
openclaw nodes camera snap --node "My iPhone" --facing backIn chat with the assistant, you can simply ask: “Take a photo with the phone.”
Record video#
# 10-second video
openclaw nodes camera clip --node "My iPhone" --duration 10s
# Video without audio
openclaw nodes camera clip --node "My iPhone" --duration 5s --no-audioLimitation: video no longer than 60 seconds. The app must be open on screen (not in the background).
Screen recording#
openclaw nodes screen record --node "My iPhone" --duration 10sCanvas — displaying on screen#
Canvas is a display screen on the mobile device. The assistant can show a web page, chart, dashboard, or any HTML content on it.
Show a web page#
# Open a website on the device screen
openclaw nodes canvas present --node "My iPhone" --target https://example.com
# Hide the Canvas
openclaw nodes canvas hide --node "My iPhone"
# Navigate to another page
openclaw nodes canvas navigate https://weather.com --node "My iPhone"Take a Canvas snapshot#
openclaw nodes canvas snapshot --node "My iPhone" --format pngRun JavaScript on Canvas#
openclaw nodes canvas eval --node "My iPhone" --js "document.title"In chat, you can ask: “Show the current weather on the phone,” and the assistant will open the right page through Canvas.
Geolocation#
Find out current location#
openclaw nodes location get --node "My iPhone"Result — coordinates (latitude/longitude), accuracy in meters, and time.
Accuracy options#
# Precise location (GPS)
openclaw nodes location get --node "My iPhone" --accuracy precise
# Approximate (faster, saves battery)
openclaw nodes location get --node "My iPhone" --accuracy coarseImportant: Geolocation is disabled by default. You need to enable it in the OpenClaw app settings on the device and grant location access permission.
Notifications#
Send a push notification to the device:
openclaw nodes notify --node "My iPhone" \
--title "Reminder" \
--body "Team meeting in 15 minutes"Notification priorities#
passive— silent notificationactive— normal (default)timeSensitive— urgent (breaks through Do Not Disturb mode)
openclaw nodes notify --node "My iPhone" \
--title "URGENT" \
--body "Server is down!" \
--priority timeSensitiveRunning commands on a device#
On a Mac node, you can run programs:
openclaw nodes run --node "My Mac" -- echo "Hello from Mac!"Security: command execution is protected by an approval system (exec approvals). You need to specify in advance which commands are allowed:
openclaw approvals allowlist add --node "My Mac" "/usr/bin/say"
SMS (Android only)#
On Android devices with SMS permission:
openclaw nodes invoke --node "My Android" \
--command sms.send \
--params '{"to": "+15551234567", "message": "Hello!"}'Practical example#
You message the assistant in Telegram:
“Take a photo with the phone of what’s on the desk and tell me what you see”
The assistant:
- Uses the
nodes→camera_snaptool for a photo from the phone - Receives the photograph
- Analyzes the image through the AI model
- Responds: “On the desk I see a laptop, a coffee mug, and a notebook”
This all happens automatically — you just describe the task.
Usage tips#
- Keep the app open — camera and Canvas only work when the app is in the foreground
- Give the device a friendly name — it’s easier to refer to it
- Enable geolocation only when needed — it saves battery
- Set up permissions in advance — camera, location, notifications
- For remote connections, use an SSH tunnel or VPN if Gateway isn’t directly accessible
Lesson summary#
- A Node is a connected device (phone, tablet, Mac) that extends the assistant’s capabilities
- Through nodes you get: camera, Canvas (screen display), geolocation, notifications, command execution
- Connection: install the app → connect to Gateway → approve on the server
- Camera: photos and video from the front or main camera
- Canvas: displaying web pages and interfaces on the device screen
- Geolocation: device coordinates (disabled by default)
- The app must be in the foreground for camera and Canvas
- The assistant chooses the right device and action on its own — just describe the task
🎉 Congratulations! You’ve completed Level 2 of the OpenClaw course. Now you know how to configure the assistant, choose models, manage memory, use tools and skills, set up automation, and connect mobile devices.