Chapter 31: Control UI — The Browser Dashboard
Every OpenClaw gateway comes with a built-in browser dashboard called the Control UI. It gives you a visual interface to chat with your agent, manage channels, edit configuration, monitor logs, and run diagnostics — all from a web browser, without touching the terminal. This chapter covers everything the Control UI can do.
Accessing the Control UI
When the gateway is running, open your browser and go to:
http://127.0.0.1:18789/
or
http://localhost:18789/
The default port is 18789. You can customize this:
{
"gateway": {
"controlUi": {
"port": 18789,
"basePath": "/"
}
}
}
First Connection — Device Pairing
The first time you open the Control UI, it asks you to approve the connection. This is a security measure: a pairing request appears in your terminal, and you confirm it. Loopback connections (127.0.0.1) auto-approve. Remote connections always require manual approval.
What's Inside the Control UI
The Control UI is built with Vite + Lit — a lightweight, fast web application that communicates with the gateway over WebSocket. It has several main sections:
Chat
A full chat interface for talking directly to your agent from the browser:
- Send text messages and see streaming responses in real time
- Upload files (images, PDFs, documents) for the agent to analyze
- View tool calls as they happen — watch the agent invoke skills and see results
- See token usage and latency per message
- Access conversation history
Talk (Voice Conversations)
The Talk tab opens a live voice conversation with your agent — like ChatGPT's Advanced Voice Mode, but running through your own gateway:
- Click the microphone to speak
- The agent responds in real-time audio
- Supports OpenAI Realtime API and Google Live API
- Latency is near-instant (under 500ms in most cases)
Enable Talk mode in your config:
{
"voice": {
"talk": {
"enabled": true,
"provider": "openai-realtime",
"apiKey": "${OPENAI_API_KEY}",
"model": "gpt-4o-realtime-preview",
"voice": "alloy"
}
}
}
Channels
Manage your connected channels visually:
- See which channels are connected, connecting, or failed
- Connect WhatsApp by scanning a QR code directly in the browser
- View the channel's current configuration
- Restart individual channels without restarting the whole gateway
- See the last message received on each channel
Configuration
Edit your openclaw.json without touching the file system:
- Form view: User-friendly fields for common settings
- Raw JSON: Full editor with syntax highlighting and validation
- Changes take effect on save (or after a reload/restart, depending on the setting)
- The UI warns you if a change requires a full restart
Cron Jobs
Manage your scheduled tasks from the browser:
- See all configured cron jobs and their next run time
- Run a job immediately (for testing)
- Pause and resume jobs
- View the history of past runs and their outputs
Skills & Nodes
- See all installed skills and their status (enabled / disabled / error)
- View iOS and Android nodes that are paired to this gateway
- Check node last-seen timestamps
- Send a test message to a node
Logs & Debugging
- Live log stream — new entries appear in real time
- Filter by log level (info, debug, error)
- Search logs by keyword
- View individual request/response pairs with full detail
- Manual RPC console — send raw commands to the gateway for advanced debugging
Health & Diagnostics
- Gateway health at a glance (uptime, memory, active sessions)
- Run
openclaw doctorequivalent from the browser - See current API rate limits and usage
- Export diagnostics report (for sharing with support)
PWA Support
The Control UI can be installed as a Progressive Web App (PWA) on any device:
- Open the Control UI in Chrome or Edge
- Click the install icon in the address bar
- The dashboard appears as a standalone app in your taskbar or home screen
Once installed, it works even when the browser is closed and can receive Web Push notifications from the gateway — alerts appear even when the dashboard isn't open.
Remote Access to the Control UI
By default, the Control UI is only accessible from localhost. To access it from another device (phone, laptop on the same network, or remotely), see Chapter 32 for Tailscale setup.
Quick local network access:
{
"gateway": {
"controlUi": {
"host": "0.0.0.0"
}
}
}
Then access at http://your-server-ip:18789/ from any device on your local network.
Warning: Only expose
0.0.0.0on trusted networks. For internet-facing access, always use Tailscale or a reverse proxy with authentication.
Themes and Localization
The Control UI supports customizable themes and 19+ languages:
Themes
{
"gateway": {
"controlUi": {
"theme": "dark"
}
}
}
Available themes: light, dark, system (follows OS preference). Custom themes can be imported.
Language
{
"gateway": {
"controlUi": {
"locale": "ur"
}
}
}
Supported locales include: en, zh-CN, zh-TW, ja, ko, de, fr, es, pt, ar, ur, fa, hi, tr, ru, nl, vi, it, th, and more.
Security
- First-connection device pairing prevents unauthorized access
- All communication over WebSocket (same-origin)
- Remote access via Tailscale adds network-level encryption
- Session tokens expire automatically
- The diagnostics export requires explicit owner approval before sharing
Next: Chapter 32 — Remote Access with Tailscale — How to securely access your OpenClaw gateway from anywhere in the world.