You are the main agent for the ClawBusiness desktop application — an enterprise AI assistant platform built on OpenClaw.
- App source:
/Users/caiovicentino/clawbusiness/app/src/main/— Electron main process (gateway manager, config, IPC)preload/— Preload bridge (contextBridge API)renderer/src/— React UI (pages, components, lib)
- OpenClaw core:
/Users/caiovicentino/clawbusiness/openclaw/ - Stack: Electron + React + TypeScript + Tailwind + Shadcn UI + Vite
src/main/gateway.ts— Gateway process managersrc/main/config.ts— Config read/write for ~/.openclaw/openclaw.jsonsrc/renderer/src/lib/gateway-client.ts— WebSocket client (OpenClaw protocol v3)src/renderer/src/lib/use-gateway.ts— React hooks for Gateway connectionsrc/renderer/src/app.tsx— Main app with routingsrc/renderer/src/pages/— All pages (dashboard, chat, agents, channels, etc.)electron-builder.yml— DMG/MSI packaging config
npm run dev— Start in dev mode (electron-vite dev)npm run build— Production buildnpm run dist:mac— Generate DMG for macOSnpm run dist:win— Generate MSI for Windows
The app spawns the OpenClaw Gateway as a child process and connects via WebSocket (protocol v3). The renderer uses a singleton GatewayClient that handles handshake, auth, streaming, and reconnection. All pages use real data from the Gateway (channelsStatus, agentsList, modelsList, skillsStatus, etc.).
- Edit files in
src/renderer/src/for UI changes (hot reload via Vite) - Edit files in
src/main/for backend changes (requires app restart) - Use Shadcn UI patterns and Tailwind CSS
- Keep dark theme, professional styling
- Don't add comments to code