ClawControl Documentation
Welcome to the ClawControl documentation. ClawControl is a cross-platform desktop and mobile client for the OpenClaw AI assistant platform.
Documentation Index
For Users
- Getting Started — Installation, configuration, first connection, and building for production
For Developers
-
Architecture Guide — System design, process structure, data flow, streaming architecture, platform abstraction, and security model
-
Developer Guide — How to add new RPC methods, views, event handlers, work with the store, CSS theming, error handling patterns, and testing
-
State Management — Complete Zustand store reference including all state fields, actions, selectors, event handlers, and the message lifecycle
API & Protocol
- API Reference — Full OpenClaw Protocol v3 reference with all RPC methods, request/response types, server events, session key formats, and error handling conventions
UI
- Component Reference — Catalog of all 25+ React components with purpose, features, store dependencies, and sub-components
Quick Reference
Common Commands
npm run dev # Start desktop dev server
npm run mobile:dev # Start mobile dev server
npm run typecheck # Type check without emit
npm run lint # ESLint
npm run test:run # Run tests once
npm run build:win # Build Windows installer
npm run build:mac # Build macOS DMG
Key Files
| File | Purpose |
|---|---|
src/store/index.ts |
Central state management |
src/lib/openclaw/client.ts |
WebSocket client core |
src/lib/platform.ts |
Platform abstraction |
src/App.tsx |
Root component & view routing |
src/styles/index.css |
Theme variables & global styles |
electron/main.ts |
Electron main process |
electron/preload.ts |
Electron IPC bridge |
Architecture at a Glance
Electron/Capacitor
|
v
React UI (components/)
|
v
Zustand Store (store/)
|
v
OpenClaw Client (lib/openclaw/)
|
v
WebSocket JSON-RPC v3
|
v
OpenClaw Server