Releases: MaudeCode/cove
v2026.2.6-4
🖼️ Canvas Panel
Let your agent push images, diagrams, and rich content directly to your browser with the new canvas feature:
- Floating panel — Drag anywhere, dock to edges, or pop out to a separate window
- Local images without base64 — The
/_canvas/proxy serves images from your gateway's canvas directory - All commands supported —
present,hide,navigate,eval, andsnapshot - Multi-tab sync — Canvas state syncs across browser tabs automatically
- Works everywhere — Dev server, npm package, and Docker all include the canvas proxy
Enable it in Settings → Canvas Node, then agents can push content with:
nodes action=invoke node=<id> invokeCommand=canvas.present invokeParamsJson='{"url":"/_canvas/image.png"}'
📚 Documentation Site
New VitePress-powered documentation at maudecode.github.io/cove:
- Getting started guides — Installation, configuration, deployment
- Canvas setup — Step-by-step instructions for gateway and Cove
- Agent reference — Complete skill doc for using canvas from agents
- Auto-deployed — Updates on every push to
docs/
🐳 Improved Docker Container
The Docker image now uses nginx with a proper canvas proxy:
- Smaller and faster — nginx serves static files efficiently
- Canvas proxy built-in — Configure with
GATEWAY_HOSTandGATEWAY_PORTenv vars - Rootless and secure — Runs as non-root with read-only filesystem
Installation
npm:
npx @maudecode/coveDocker:
docker run -d -p 8080:8080 ghcr.io/maudecode/cove:v2026.2.6-4Static files: Download cove-dist.zip or cove-dist.tar.gz below.
Changelog
Bug Fixes
- canvas: align proxy path and make gateway address configurable (6a20125)
- canvas: handle params as object or JSON string in invoke requests (9063f90)
- canvas: read all signals in component body for proper subscriptions (fbd4c41)
- canvas: use gatewayUrl for URL transform, remove unused import (ee2907a)
- csp: allow data: URLs in frame-src for inline HTML canvas content (ac734da)
- csp: allow localhost HTTP images for local gateway canvas host (93d3f77)
- dev: strip proxy headers for canvas requests (fffa914)
- docs: set base path for GitHub Pages (f94f691)
- readme: update banner path (0e09950)
- server: split dev/prod to fix font corruption (2924bc9)
Features
- bin: add canvas proxy to npm production server (2bccc27)
- canvas: add canvas node with device identity, mobile support, and tour integration (1a0a792)
- canvas: add eval and snapshot commands (acbdb78)
- canvas: add floating/dockable canvas panel for agent content (d020b6c)
- canvas: add local image proxy for canvas display (28a929f)
- canvas: add persistence, touch, keyboard shortcut, animations (5801079)
- canvas: add server proxy for local gateway images (8e2b0dd)
- canvas: multi-tab sync, split-screen dock, refactor (6eed868)
- canvas: support base64 images via WebSocket (f88127d)
- canvas: transform localhost URLs to gateway URL base (6ee0dc8)
- canvas: unified server with canvas proxy (aa26092)
- docker: nginx-based container with canvas proxy (ae54866)
v2026.2.6-3
⌨️ Command Palette
Press ⌘K (or Ctrl+K) to open the new command palette — instant access to actions without hunting through menus:
- Toggle settings like verbose mode, elevated permissions, and reasoning
- Switch themes, clear chat, copy session ID
- Fully keyboard navigable with arrow keys and fuzzy search
📁 Workspace Page
A new dedicated page to browse and edit your agent's configuration files:
- Token counts — See how many tokens each file uses, with a total at the bottom showing exactly how much context gets injected per conversation
- Agent switcher — Switch between different agent workspaces from the dropdown
- Inline editor — Edit files directly with Cmd+S to save, live token count as you type
- Smart metadata — File sizes, timestamps, and missing file indicators
Installation
npm:
npx @maudecode/coveDocker:
docker run -d -p 8080:8080 ghcr.io/maudecode/cove:v2026.2.6-3Static files: Download cove-dist.zip or cove-dist.tar.gz below.
Changelog
Bug Fixes
- chat: re-scroll when images load, reset auto-scroll on user message (029a3b7)
- css: prevent table overflow with long unbroken strings (45e0ea2)
- release: use -r 2 for changelog to include current release (3ebb05c)
- ui: auto-focus lightbox for keyboard navigation (d46c262)
Features
v2026.2.6-2
📅 New Versioning: Calver
Starting with this release, Cove uses calendar versioning that matches OpenClaw releases:
v1.3.0→v2026.2.6- Version now indicates OpenClaw compatibility (e.g.,
2026.2.6works with OpenClaw February 2026 releases) - Patch releases use suffix:
2026.2.6-1,2026.2.6-2, etc.
This makes it easy to know which Cove version works with your OpenClaw installation.
📊 Usage Page Overhaul
The Stats page has been completely redesigned and renamed to Usage with powerful new analytics:
- Per-session analytics — See token usage and costs broken down by session
- Session detail modal — Token breakdown with context weight visualization
- Sortable columns — Sort by cost, tokens, or recent activity
- Mobile responsive — Card-based layout on small screens with swipe-friendly design
- Caching — Instant page loads with localStorage caching
Also in this release
- Accessibility fixes — Proper
<button>elements for sortable table headers - Component extraction — Cleaner codebase with reusable usage components
- Dependency updates — Preact 10.28.3, @preact/signals 2.7.0, Vite 7.3.1
📦 Install
# npm (global)
npm install -g @maudecode/cove
# Docker
docker pull ghcr.io/maudecode/cove:2026.2.6-2Changelog
Bug Fixes
- a11y: replace role=button with proper button elements (bc72b08)
- release: add --tag latest for calver patch versions (060890a)
- release: add ./ prefix to tarball path for npm publish (5f603d7)
- release: download specific artifacts, not all (eb76208)
- release: lowercase Docker image name for registry (cc2653d)
- release: remove NODE_AUTH_TOKEN, use OIDC publishing (009013a)
- release: resolve tarball path before npm publish (a5cfe0c)
- release: restore exact npm publish from v1.3.0 (549e248)
- release: restore NODE_AUTH_TOKEN for npm auth (61edc3d)
- release: update Docker tags for calver versioning (af7de74)
- release: use docker format for load, bump to 2026.2.6-2 (618aabf)
Features
- release: atomic 3-phase workflow with release notes (71d8bf6)
- usage: add pagination to sessions table (db24b63)
- usage: rename Stats to Usage and add per-session analytics (d16565f)
- usage: rename Stats to Usage with per-session analytics (281d157)
Performance Improvements
- release: parallel native multi-arch Docker builds (ce28a11)
v1.3.0
📱 Full Mobile Support
Cove is now fully usable on mobile devices! All pages have been optimized with touch-friendly interfaces, including:
- iOS Settings-style navigation for the Config page with drill-down sections
- Mobile-optimized forms with larger touch targets (44px+)
- Responsive arrays with up/down buttons instead of drag handles
- Flat card sections for nested config on mobile (no collapse toggles)
- Full-width dropdowns and inputs on mobile screens
What's Changed
Features
- feat(mobile): add mobile layouts for Logs and Config views
- feat(config): make config form components mobile-friendly
- feat(config): add General item for mobile config nav
Fixes
- fix(config): polish mobile config UX (larger toggles, touch-manipulation)
- fix(config): mobile-friendly array reordering with up/down buttons
- fix(config): improve mobile config UX (dropdowns, touch targets, icons)
- fix(chat): handle direct array format in tool result extraction
- fix(chat): normalize streaming tool results to match history format
Refactoring
- refactor(config): address code review issues (i18n, DRY, signals organization)
- refactor(chat): extract shared tool result normalizer (DRY)
Full Changelog: v1.2.1...v1.3.0
v1.2.1
Installation
npm:
npx @maudecode/coveDocker:
docker run -d -p 8080:8080 ghcr.io/maudecode/cove:v1.2.1Static files: Download cove-dist.zip or cove-dist.tar.gz below.
Full Changelog: v1.2.0...v1.2.1
v1.1.0
What's Changed
Bug Fixes
- fix(streaming): resolve text duplication after tool calls (17f19d2)
- fix(chat): prevent message bleeding between sessions (8a50899)
- fix(chat): use effectiveSessionKey for session comparison (90cbe01)
- fix(csp): remove header-only directives from meta tag (6a857fa)
- fix(csp): add worker-src directive for blob workers (39cfde1)
- fix(auth): persist credentials in localStorage when rememberMe is enabled (72e5b60)
- fix(mobile): numerous mobile UX improvements
Features
- feat(chat): use assistant stream events for faster text updates (0294c92)
- feat(chat): persist input drafts across navigation (2661ed3)
- feat(mobile): edge swipe to open/close sidebar (9f9a147)
- feat(pwa): add manifest and iOS web app meta tags (a68809e)
- feat(channels): add BlueBubbles icon (f84fbf7)
- feat(cron): mobile-friendly card layout (1b7c113)
- feat(sessions): mobile-friendly card layout (7ea3e44)
- feat(ui): add ListCard component (8f0a35c)
- feat(build): add CSP extension via env vars (6442c74)
Refactors
- refactor(ui): extract ModalFooter components (01c997c)
- refactor(sessions): extract SessionActions, add comments (309076c)
- refactor: extract cron state/actions to useCronJobs hook (86cf8c9)
Full Changelog: v1.0.2...v1.1.0
Installation
npm:
npx @maudecode/coveDocker:
docker run -d -p 8080:8080 ghcr.io/maudecode/cove:v1.1.0Static files: Download cove-dist.zip or cove-dist.tar.gz below.
v1.0.2
🎉 First Public Release!
Cove is now open source! A beautiful, full-featured WebUI for OpenClaw.
✨ Highlights
- 💬 Real-time chat with streaming responses and markdown rendering
- 🛠️ Tool call visualization with expandable details
- 📊 Server stats, cron jobs, config editor, and more
- 🎨 6 themes with system sync and font options
- 🔒 Exec approval modal for shell command safety
Installation
npm (easiest):
npx @maudecode/coveDocker:
docker run -d -p 8080:8080 ghcr.io/maudecode/cove:v1.0.2Static files: Download cove-dist.zip or cove-dist.tar.gz below and serve with any web server.
📦 npm · 🐳 Docker · 📖 Docs · 💬 Discord