Tauri v2 shell · React 18 + Vite frontend · Bun / Hono backend. Packages a guided setup wizard and a unified dashboard for chat, sessions, channels, cron, skills, plugins, and Soul editing into a single desktop workflow against an OpenClaw Gateway.
OpenClaw ships a Gateway (long-running daemon) plus a set of channels and agents. ClawBox is the desktop skin — it bundles a first-launch setup wizard that can install an app-managed portable Node.js runtime with OpenClaw inside, hooks a chat/session/cron/skills UI to the Gateway via WebSocket RPC, and stays out of the daemon's way so Gateway upgrades don't require a ClawBox rebuild.
| Key | Value |
|---|---|
| Repo | Organized-AI/ClawBox (MIT) |
| Current version | 2026.3.17 |
| Shell | Tauri v2 · src-tauri/ |
| Frontend | React 18 · Vite · Tailwind · src/ |
| Backend | Bun · Hono · internal/ |
| Frontend dev port | 14200 (Vite) |
| Backend address | http://127.0.0.1:13000 |
| Gateway URL | http://127.0.0.1:18789/v1 |
| OpenClaw baseline | >= 2026.3.12 |
| i18n | en + zh (src/locales/) |
Two paths — use the prebuilt desktop app (macOS / Windows) or build from source.
First-launch wizard offers two options:
npm install -g openclaw@latest.After setup finishes, open Settings and configure an upstream provider:
Save the provider config, fetch models if needed, and pick a default model. After that you can start chats, manage sessions, edit Soul files, and work with channels / cron / plugins / skills.
ClawBox.app to /Applications, then xattr -dr com.apple.quarantine /Applications/ClawBox.app.Three processes plus an OpenClaw daemon.
http://127.0.0.1:18789/v1127.0.0.1:13000. It never talks to the Gateway directly.internal/routes/, plus channel/provider/skills logic in internal/channels/, internal/providers/, internal/skills/.One top-level React component per dashboard surface. All under src/components/.
First launch. Probes the OpenClaw runtime, surfaces setup progress.
Guided setup wizard — environment mode pick (Portable / System), runtime bootstrap, provider config.
Primary chat surface. Session list + transcript + composer. Consumes chat.ts backend route.
Edit the agent's Soul file (persona / style / constraints). Backs onto soul.ts.
Plugin / channel manager. Starts, stops, configures channels registered with the Gateway.
Browse and configure skills. Backs onto skills.ts.
Schedule recurring agent tasks. Backs onto cron.ts.
Gateway URL, model provider, language, theme, telemetry toggles.
Banner + hint component that catches Gateway disconnects and prompts a restart without losing state.
Chat-view nudges. Renders prompt suggestions.
Bound to the two i18n locales (en / zh) and a light/dark theme.
Streaming-text renderer used by ChatView for assistant responses.
src/components/ also contains feature folders — chat/, layout/, plugins/, sidebar/, skills/, soul/ — holding the smaller pieces that compose the top-level views above.
Every route module in internal/routes/ owns one domain.
| Module | Responsibility |
|---|---|
| agents.ts | Agent roster + agent detail |
| channels.ts | Channel lifecycle — start / stop / list / status |
| chat.ts | Chat send + history + session management |
| config.ts | Gateway + app config (get / patch) |
| cron.ts | Schedule CRUD for recurring tasks |
| models.ts | List / refresh provider models |
| onboard.ts | Wizard state + runtime probes + bootstrap |
| sessions.ts | Session list / preview / patch / reset / delete |
| skills.ts | Skill registry + per-skill config |
| soul.ts | Soul file read / write |
| titles.ts | Auto-titles for new sessions |
| tools.ts | Tool manifest + tool-call summaries |
internal/channels/ · internal/providers/ · internal/skills/ · internal/onboard/ — domain logic consumed by the routes.internal/compatibility.json — OpenClaw version compatibility matrix.internal/tool-call-summaries/ — formatting helpers that shape raw tool events into chat-view blocks.internal/generated/ — build artefacts (do not edit).The first-launch experience — ClawBox's biggest differentiator.
openclaw@latest. System: verify the user's install.http://127.0.0.1:18789/v1. Handshake = challenge/response with a local device identity.State for all six steps lives under internal/onboard/. The frontend surface is OnboardView.tsx plus StartupScreen.tsx for the probe phase.
Contribute flow if you're running ClawBox from source.
Or point ClawBox at an existing Gateway by setting OPENCLAW_GATEWAY_URL.
scripts/mock-gateway.mjs implements the minimum RPC surface for smoke coverage without a live OpenClaw:
Three build steps plus platform-specific bundling.
.dmg. Users must run xattr -dr com.apple.quarantine or build from source.sign-win.mjs + sign-win-installer.mjs scripts with valid certs.ClawBox is a client. The Gateway is a separate project.
| ClawBox branch | Recommended OpenClaw |
|---|---|
| main | >= 2026.3.12 |
http://127.0.0.1:18789/v1 or equivalent.tool-events.The included mock gateway implements the minimum RPC surface needed for repository smoke coverage:
Source of truth: docs/openclaw-compatibility.md.
Where ClawBox sits inside the broader Organized AI portfolio.
ClawBox is the desktop surface. It doesn't define the marketplace or the agent economy — it's the thing people open on their machine to participate in what the Organized Market project describes. Pairs naturally with:
npm install -g + terminal.