Built on WebClaw

OpenCami 🦎

A feature-rich desktop web client for OpenClaw

Multi-session chat with real-time streaming, voice I/O, workspace tools (files, memory, agents, skills, cron), AI personas, smart titles, browser notifications β€” 35+ features for power users.

Self-hosting tip: after OpenClaw updates, if OpenCami can’t connect or you see scope/auth errors, restart the Gateway first. If it’s still broken, check the OpenCami GitHub for the current workaround.

# One-line install
$ curl -fsSL https://opencami.xyz/install.sh | bash
# Or via npm
$ npm install -g opencami && opencami
OpenCami Chat Interface
⚑
Real-Time
Token-by-token streaming. See responses as they're written.
🧠
Smart
AI titles, follow-ups, context meter. It thinks ahead.
🎨
Yours to Customize
Models, personas, themes, text size. Make it fit you.
πŸ“‚
Full Workspace
File explorer, search, export, keyboard shortcuts. Desktop-first.
πŸ’¬ Communication
3 β–Ό
⚑
Real-Time Streaming
Token-by-token via persistent WebSocket β†’ SSE. Tool call indicators, smart polling fallback.
πŸ”Š
Voice Playback (TTS)
Multi-provider: ElevenLabs β†’ OpenAI TTS β†’ free Edge TTS fallback. Listen to any response.
🎀
Voice Input (STT)
Record voice messages instead of typing. ElevenLabs Scribe v2 β†’ OpenAI Whisper β†’ Browser (free). Auto language detection for 90+ languages with recording UI, timer & pulse animation.
πŸ“ Organization
8 β–Ό
πŸ“
Session Folders
Auto-grouped: Chats, Sub-agents, Cron/Isolated, Other. Clean sidebar.
πŸ“Œ
Pin Sessions
Pin important conversations to the top. Always accessible.
πŸ—‘οΈ
Bulk Delete
Select multiple sessions, delete at once with confirmation dialog.
πŸ›‘οΈ
Protected Sessions
Main + channel-bound sessions auto-protected from accidental deletion.
πŸ€–
Agent Manager (Beta)
Full agent CRUD from the sidebar β€” create, edit, delete agents visually. Shows model, workspace, sandbox mode, tools & channel bindings.
πŸ“‹
Cron Jobs Panel (Beta)
Manage recurring automations from a dedicated panel. Beta/experimental and actively evolving.
🧠
Memory Viewer
Browse and edit MEMORY.md and daily memory files. Grouped sidebar: Daily notes (newest first) and Notes (alphabetical). Toggle in Settings.
πŸ””
Browser Notifications
Get notified when assistant replies while tab is in background. Debounced, permission-aware, click to jump to session.
πŸ” Search & Navigation
3 β–Ό
πŸ”
Conversation Search
⌘F current chat, βŒ˜β‡§F global deep search. Instant results with highlights.
⌨️
Keyboard Shortcuts
⌘N new chat, ⌘B sidebar, βŒ˜β†΅ send, ⌘⌫ delete. Full power-user nav.
πŸ“₯
Export Conversations
Markdown, JSON, or plain text. Your data is yours.
🎨 Customization
8 β–Ό
🎨
Model Selector
Switch AI models per message from your gateway config.
🎭
Persona Picker
20 AI personalities. Integrates with ClawHub personas skill.
🦎
Chameleon Theme
Light/dark/system auto. Smooth transitions. Signature green.
πŸ”€
Text Size
S / M / L / XL in Settings. Readable at any distance.
βš™οΈ
TTS/STT Provider Selection
Choose your preferred voice provider in Settings. TTS: Auto / ElevenLabs / OpenAI / Edge TTS (free). STT: Auto / ElevenLabs / OpenAI / Browser (free).
🧠
Thinking Level Toggle
Brain icon in the composer to quickly switch reasoning depth for each prompt.
πŸ”§
Multi-Provider LLM Settings
Configure OpenAI, OpenRouter, Ollama, or a custom endpoint from one unified settings panel.
πŸ—‚οΈ
Workspace Settings
Unified toggles for Files, Memory, Agents, Skills & Cron. Show or hide each tool from the sidebar.
πŸ“‚ Files
5 β–Ό
πŸ“‚
File Explorer
Browse, upload, edit 30+ file types. Context menu, path jailing, breadcrumbs.
πŸ–ΌοΈ
Image Attachments
Drag & drop, paste, or click. Smart compression. Preview before send.
πŸ’»
Code Block Enhancements
Line numbers, filename headers, and a word-wrap toggle for cleaner code reading.
πŸ”—
Smart File Links
Bare filenames become clickable links with quick directory navigation.
✏️
Open in Editor
Open file previews directly in the built-in editor with one click.
🧠 Smart Features
5 β–Ό
🏷️
Smart AI Titles
LLM-generated titles via gpt-4.1-nano. No more "New Chat #47".
πŸ’‘
Smart Follow-ups
Context-aware suggestions. Instant heuristics β†’ LLM refinements. One click.
πŸ“Š
Context Window Meter
Token usage bar: green β†’ yellow β†’ red. Pulse warning at 95%+.
πŸ’¬
Slash Commands
/help shows available commands. Quick access to OpenClaw features.
πŸ”
Search Sources Badge
Shows which search engines were used with favicons in an expandable badge. Supports Brave, Serper (Google), Tavily & Exa. Appears at end of response. Toggle in Settings.
πŸ“± Mobile & PWA
5 β–Ό
πŸ‘‰
Swipe Gestures
Edge-swipe sidebar open/close. Dark backdrop, direction lock.
⚑
Performance
Lazy-loaded dialogs & routes. content-visibility. -16% bundle.
πŸ“±
Native Android APK (Beta)
Capacitor shell. App icons, splash screen, status bar integration.
πŸš€
PWA Support
Install as app, offline support, auto-update. Android & iOS.
πŸ–₯️
Desktop App (Beta)
Experimental Tauri v2 native wrapper for macOS/Windows/Linux with tray icon, native notifications, auto-start, custom titlebar, and multiple windows. Web app is still the primary focus.
⚑ 1.8.7
2026-03-07 β–Ό

Performance β€” Android PWA Overhaul

  • πŸš€ Streaming polling reduced 13Γ— β€” 150ms β†’ 2000ms. SSE handles real-time deltas; polling is now a safety net only
  • 🎨 Render-blocking fonts removed β€” No more external Google Fonts import blocking first paint (200-800ms faster)
  • 🧊 Frost theme mobile-optimized β€” Reduced backdrop blur on touch devices, preventing GPU-heavy repaints
  • πŸ’‘ Deferred syntax highlighting β€” Code highlighting skipped during streaming, applied after response settles
  • 🧩 Lazy-loaded UI components β€” Follow-ups, thinking indicators, search badges loaded on demand
  • πŸ“¦ CSS containment β€” Added contain: content to messages + scroll compositing hints
  • πŸ–ΌοΈ Image optimization β€” Memoized base64 URIs + low fetch priority for inline images
πŸ”Œ 1.8.6
2026-03-07 β–Ό

Fixed

  • πŸ”Œ Duplicate WebSocket fix β€” Fixed Vite SSR issue causing doubled streaming text
  • πŸ”Œ Stale WebSocket cleanup β€” Proper cleanup of ghost connections on reconnect
πŸ” 1.8.5
2026-03-03 β–Ό

Fixed

  • πŸ” Proper device pairing β€” correct scopes (operator.admin, operator.approvals, operator.pairing). No more allowInsecureAuth required.
  • πŸ” deviceToken storage β€” after pairing, OpenCami stores a device token for future connections
  • πŸ” Pending state detection β€” /api/ping now returns helpful approveCommand if device awaits gateway approval
πŸ”’ 1.8.4
2026-03-03 β–Ό

Security

  • πŸ”’ Command injection fix β€” Skills API replaced execSync with execFile + argument arrays
  • πŸ”’ SSRF / API key leak fix β€” LLM features API validates X-LLM-Base-URL against an allowlist
  • πŸ”’ Path traversal consistency β€” File info endpoint uses shared jailed path helper
  • πŸ”’ Private cache headers β€” User workspace files now served with private, no-store
πŸš€ 1.6.0
2026-02-13 β–Ό

Added

  • πŸ”§ Workspace Settings β€” Files, Memory, Agents, Skills & Cron toggles under dedicated section
  • πŸ”” Browser Notifications β€” Background tab alerts, debounced, permission-aware
  • 🧠 Memory Viewer β€” Browse and edit MEMORY.md and daily files with grouped sidebar
  • πŸ“‚ File Explorer toggle β€” controllable via Settings (default: on)

Fixed

  • Memory Viewer file paths correctly prefixed for API compatibility
⚑ 1.5.1
2026-02-12 β–Ό
  • ⚑ Lazy-load Shiki β€” Dynamic imports for syntax highlighting
  • πŸ” Promise.allSettled for global search β€” no more blocked results
  • πŸ”’ LocalStorage API key warning in LLM Features
  • πŸ§ͺ 162 Vitest tests across 14 files
  • πŸ“š 5 new docs β€” API, Architecture, Contributing, Deployment, Features
🎨 1.5.0
2026-02-11 β–Ό
  • πŸ–₯️ Tauri Desktop App (Beta) β€” Native wrapper with tray, notifications, multi-window
  • 🎨 Appearance Overhaul β€” Frost themes, accent colors, font family, density, bubble style
  • πŸ“¦ Skills Browser (Beta) β€” Browse and discover ClawHub skills
  • πŸ“„ FAQ page
  • πŸ”§ Fixed streaming race condition, bulk delete, search jump, Frost Dark CSS
🧩 1.4.0
2026-02-10 β–Ό
  • 🧩 Code Block Enhancements β€” Line numbers, filename headers, word wrap
  • πŸ€– Cron Jobs Panel (Beta) β€” Visual manager with execution history
  • πŸ”— Smart File Links β€” Bare filenames clickable (35+ extensions)
  • πŸ“ Directory Navigation, ✏️ Open in Editor
  • ⚑ Search optimization, overflow hardening
🧠 1.3.2
2026-02-09 β–Ό
  • 🧠 Thinking Level Toggle β€” Reasoning depth per message
  • πŸ”Œ Multi-Provider LLM β€” OpenAI, OpenRouter, Ollama, Custom
  • βš™οΈ Settings sidebar layout, πŸŽ™οΈ Voice tab
  • πŸš€ Release automation (npm + GitHub Packages)
🎀 1.3.0
2026-02-08 β–Ό
  • 🎀 Voice Input (STT) β€” ElevenLabs Scribe β†’ OpenAI Whisper β†’ Browser fallback
  • πŸ”Š TTS/STT Provider Selection in Settings
  • πŸ” Search Sources Badge with favicons
  • πŸ€– Agent Manager β€” Full CRUD from sidebar
πŸ“± 1.2.0
2026-02-07 β–Ό
  • πŸ‘‰ Swipe Gestures β€” Edge-swipe sidebar open/close
  • πŸ“± Native Android APK (Capacitor)
  • ⚑ Performance β€” Lazy dialogs/routes, -16% bundle
  • πŸ“Š Context Window Meter β€” Token usage visualization
🦎 1.0.0
2026-02-05 β–Ό
  • πŸš€ Initial release β€” Forked from WebClaw
  • ⚑ Real-Time Streaming (WebSocket + SSE)
  • πŸ”Š Voice Playback (TTS) β€” ElevenLabs/OpenAI/Edge
  • 🎭 Persona Picker β€” 20 AI personalities
  • 🎨 Model Selector, Chameleon Theme
  • πŸ“‚ File Explorer, πŸ” Search, πŸ“₯ Export
  • πŸ“ Session Folders, πŸ“Œ Pins, πŸ›‘οΈ Protected Sessions
  • 🏷️ Smart Titles, πŸ’‘ Follow-ups
  • πŸ“± PWA, ⌨️ Keyboard Shortcuts, πŸ’¬ Slash Commands
βš›οΈ
Modern Stack
Latest web technologies for performance and DX.
React 19TanStack StartTailwind 4TypeScriptVite
πŸ”Œ
Gateway Architecture
WebSocket for real-time bidirectional communication with OpenClaw.
WebSocketSSE StreamingREST APICapacitor
🎯
Developer Friendly
Fork-ready, hot reload, upstream PR workflow. Easy to extend.
MIT LicenseHot ReloadDocumented
# Quick start
$ git clone https://github.com/robbyczgw-cla/opencami.git
$ cd opencami && npm install
$ npm run dev
🦎

"Started as a fork. Became a home."

OpenCami

🌐 Built with πŸ’š in the Clawiverse