Skip to content

ID-Robots/clawbox

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

439 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

ClawBox

OpenClaw OS

Your private AI assistant that runs 24/7 on your desk.
Plug in. Scan QR. Done. No cloud required.

Website Discord License Platform

Next.js TypeScript Bun


What is ClawBox?

ClawBox is OpenClaw OS β€” the operating system for OpenClaw Hardware, a private AI assistant running on NVIDIA Jetson (Tegra/ARM). Unlike cloud AI, your data never leaves your device. It manages the full device lifecycle: broadcasts a WiFi access point for first-boot setup from any phone/laptop, transitions to the home network, then serves a Chrome OS-style desktop environment with built-in apps.

The OpenClaw AI agent controls the entire device through MCP (Model Context Protocol) tools β€” making ClawBox an OS the AI can operate, not just a UI the user clicks through.

Key Features

Feature Description
πŸ§™ 5-minute setup Guided wizard: WiFi β†’ updates β†’ AI provider β†’ messaging β†’ done
πŸ–₯️ Desktop environment Chrome OS-style desktop with windowed apps, taskbar, and system tray
πŸ€– AI-controlled OS 40+ MCP tools let the AI agent operate the entire device
πŸ”’ Privacy-first Everything runs locally. No telemetry. No data collection.
🧠 Hybrid AI Local models (Llama, Gemma, Mistral) + cloud (Claude, GPT, Gemini)
🌐 Browser automation AI controls a real browser β€” fills forms, scrapes data, posts content
πŸ’¬ Multi-platform Telegram, web panel, desktop chat
πŸ’» Built-in apps Terminal, file manager, VS Code, VNC, app store, AI chat
πŸ› οΈ Code assistant AI builds and deploys desktop webapps through iterative coding
⚑ Always-on 7-15W power. Runs 24/7 for ~€39/year in electricity

πŸ–₯️ Hardware

Component Spec
Processor NVIDIA Jetson Orin Nano 8GB (Super)
AI Performance 67 TOPS
Storage 512GB NVMe SSD
Power 7-15W typical, USB-C
Size 100 Γ— 79 Γ— 31mm
Case Carbon fiber

πŸš€ Quick Start

sudo bash install.sh

Connect to the ClawBox-Setup WiFi network (open, no password) and navigate to:

  • http://clawbox.local/
  • http://10.42.0.1/

How It Works

Layer 1 β€” System Bootstrap

The installer (install.sh) provisions the Jetson from scratch:

  • Installs system packages, Node.js 22, Bun runtime
  • Sets hostname to clawbox, enables mDNS discovery
  • Builds the web OS, installs the OpenClaw gateway
  • Configures systemd services and captive-portal DNS
  • Creates the WiFi access point for first-boot setup

Two systemd services run the OS:

Service Role
clawbox-ap WiFi access point (SSID: ClawBox-Setup, IP: 10.42.0.1)
clawbox-setup Web server on port 80 (Next.js + WebSocket proxy)

Layer 2 β€” Setup Wizard

On first boot (or after factory reset), the OS presents a 7-step wizard:

  1. 🌐 Welcome β€” Language selection (10 languages supported)
  2. πŸ”’ Security β€” Device password + WiFi hotspot credentials
  3. πŸ“Ά WiFi β€” Connect to your home/office network (or use Ethernet)
  4. ⬆️ Update β€” Pull latest system updates
  5. 🧠 AI Models β€” API key or OAuth login for Claude, GPT, Gemini, OpenRouter, ClawBox AI, or local Ollama
  6. πŸ’¬ Telegram β€” Optional bot token for remote messaging
  7. βœ… Done β€” System status dashboard and factory reset option

Layer 3 β€” Desktop Environment

After setup, ClawBox serves a Chrome OS-style desktop accessible from any browser:

  • πŸ€– AI Chat β€” Full-window and floating popup chat via the OpenClaw gateway
  • πŸ’» Terminal β€” xterm.js shell with WebSocket PTY
  • πŸ“ File Manager β€” Browse, upload, rename, delete files on the device
  • 🌐 Browser Automation β€” Visual Chromium control via DevTools Protocol
  • πŸ–₯️ Remote Desktop β€” NoVNC viewer for VNC sessions
  • πŸ“ VS Code β€” Integrated code-server IDE
  • πŸͺ App Store β€” Discover and install skills from openclawhardware.dev
  • βš™οΈ Settings β€” WiFi, AI provider, appearance, Telegram, system management
  • πŸ¦™ Ollama Models β€” Pull, search, and manage local AI models
  • πŸ¦€ Mascot β€” Animated crab companion with personality states

The desktop features draggable/resizable windows, a taskbar with system tray, and a responsive mobile layout for phone access.

Layer 4 β€” AI Agent Integration (MCP)

The OpenClaw AI agent controls the device through an MCP (Model Context Protocol) server. This is what makes ClawBox an OS rather than just a dashboard β€” the AI can operate the device autonomously.

Device control tools:

system_stats / system_info / system_power   β€” monitor and manage the device
bash                                        β€” execute shell commands
read_file / write_file / edit_file          β€” file operations
list_directory / glob / grep                β€” search files and content
wifi_scan / wifi_status                     β€” network management
ui_open_app / ui_notify                     β€” control the desktop UI

Browser automation tools:

browser_launch / browser_navigate / browser_click / browser_type
browser_scroll / browser_screenshot / browser_keypress / browser_close

App management tools:

app_search / app_install / app_uninstall     β€” app store operations
webapp_create / webapp_update                β€” create desktop apps from HTML
preferences_get / preferences_set            β€” user preferences

Code assistant tools (for building new desktop webapps):

code_project_init    β€” scaffold a new multi-file webapp project
code_project_list    β€” list all projects
code_project_build   β€” bundle CSS/JS into HTML, deploy to desktop, open the app
code_project_delete  β€” remove a project
code_file_write      β€” create or overwrite a project file
code_file_read       β€” read a project file
code_file_edit       β€” surgical string-replacement edits
code_file_delete     β€” remove a file
code_file_list       β€” recursive project tree
code_search          β€” grep across project files

The code assistant enables the AI to iteratively build, test, and deploy new desktop apps β€” write code across multiple files, make precise edits, search the codebase, then build a self-contained webapp that appears on the user's desktop.

CLI wrapper (clawbox command):

clawbox webapp create <appId> <name> [color] < file.html
clawbox app open <appId>
clawbox app list
clawbox notify <message>
clawbox system stats
clawbox code init <projectId> <name> [template] [color]
clawbox code build <projectId>
clawbox code files <projectId>
clawbox code search <projectId> <pattern>

πŸ—οΈ Architecture

Browser (http://clawbox.local)
  β”‚
  β”œβ”€β”€ Port 80: Next.js (production-server.js)
  β”‚     β”œβ”€β”€ /setup          β†’ Setup wizard (React SPA)
  β”‚     β”œβ”€β”€ /login          β†’ Authentication
  β”‚     β”œβ”€β”€ /               β†’ Desktop environment (post-setup)
  β”‚     β”œβ”€β”€ /setup-api/*    β†’ 50+ API routes (system, files, code, browser, etc.)
  β”‚     β”œβ”€β”€ /api/*          β†’ Proxy to OpenClaw gateway
  β”‚     └── WebSocket       β†’ Proxy to gateway + terminal PTY
  β”‚
  β”œβ”€β”€ Port 3006: Terminal WebSocket PTY server
  β”‚
  β”œβ”€β”€ Port 18789: OpenClaw Gateway (localhost only)
  β”‚     β”œβ”€β”€ AI Agent (MCP tools β†’ controls the entire OS)
  β”‚     β”œβ”€β”€ Control UI
  β”‚     β”œβ”€β”€ WebSocket (real-time chat)
  β”‚     └── REST API
  β”‚
  └── Port 18800: Chromium CDP (browser automation)

Node.js is used for the production server because Bun doesn't support http.Server upgrade events needed for WebSocket proxying.

πŸ› οΈ Tech Stack

Layer Technology
Frontend Next.js 16, React 19, Tailwind CSS 4
Language TypeScript 5
Package Manager Bun
Runtime Node.js 22 (production), Bun (dev/build)
AI Engine OpenClaw via MCP
Local Models Ollama (Llama, Gemma, Mistral)
Networking NetworkManager (WiFi AP), Avahi (mDNS)
Testing Vitest + Playwright

πŸ“ Project Structure

β”œβ”€β”€ config/                 Systemd services, captive-portal DNS
β”œβ”€β”€ mcp/                    MCP server + CLI (AI agent interface to the OS)
β”œβ”€β”€ scripts/                WiFi AP, terminal server, voice/TTS, Jetson tuning
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ app/                Next.js App Router (pages + 50+ API routes)
β”‚   β”‚   └── setup-api/      WiFi, AI models, Ollama, apps, files, browser, code, system
β”‚   β”œβ”€β”€ components/         Setup wizard, desktop environment, built-in apps
β”‚   β”œβ”€β”€ hooks/              Window manager, Ollama model management
β”‚   β”œβ”€β”€ lib/                Config, network, auth, OAuth, i18n, updater, code-projects
β”‚   β”œβ”€β”€ tests/              Unit + API route tests
β”‚   └── middleware.ts       Captive portal detection + session auth
β”œβ”€β”€ production-server.js    Node.js HTTP + WebSocket proxy wrapper
└── install.sh              Full system installer (idempotent)

πŸ§ͺ Development

bun install
bun run dev              # Port 3000
bun run dev:privileged   # Port 80 (requires root)
bun run build
bun run lint
bun run test             # Unit tests (Vitest)

Environment Variables

Variable Default Description
PORT 80 Web server port
GATEWAY_PORT 18789 OpenClaw gateway port
NETWORK_INTERFACE wlP1p1s0 WiFi interface for AP
CANONICAL_ORIGIN http://clawbox.local Default redirect origin
ALLOWED_HOSTS clawbox.local,10.42.0.1,localhost Trusted hostnames
SESSION_SECRET Auto-generated Session cookie signing key
OLLAMA_HOST http://127.0.0.1:11434 Ollama server URL
CLAWBOX_ROOT /home/clawbox/clawbox Project root directory

🌍 Internationalization

10 languages: English, German, Spanish, French, Italian, Japanese, Dutch, Swedish, Chinese, Bulgarian. Auto-detected from browser, changeable in settings.


🌍 Community & Links


πŸ“„ License

ClawBox is released under the ClawBox Source Available License v1.0. Free to use, modify, and redistribute for personal, non-commercial purposes. Commercial use requires a separate license from IDRobots Ltd. β€” contact yanko@idrobots.com.


openclawhardware.dev
Built with ❀️ by ID Robots in the EU πŸ‡ͺπŸ‡Ί β€” source available