Releases: scottgl9/clawmander
Releases · scottgl9/clawmander
v1.0.1 — SSE + chat streaming reliability
Highlights
Reliability pass on the SSE + chat streaming stack.
Backend
- SSEManager: 15s heartbeat comment frames, disabled per-socket idle timeout, guarded writes that drop dead clients instead of crashing the broadcast loop.
- ChatGatewayClient: tracked reconnect timer so `stop()` can cancel it; no more stacked reconnects.
- routes/chat: stable djb2 message ids replace `Date.now()` so React keys stay stable across history reloads.
Frontend
- useSSE: exponential reconnect backoff (3s → 30s), reset on successful open.
- useChatState: synchronous `sendingRef` double-send guard, 90s stale-stream watchdog, and conditional history reload on SSE reconnect (only when a run is in flight).
- MarkdownContent / ChatMessage: streaming-aware rendering — closes dangling ``` fences and finalizes mid-stream blocks; normalizes single-line markdown tables emitted by some models.
Tests
- New `SSEManager.test.js` covering heartbeat, write-error resilience, and close cleanup.
- `stableGatewayMsgId` determinism cases in `chatRoutes.test.js`.
- Fixed two pre-existing stale suites (`approvalsRoutes.test.js`, `OpenClawCLI.test.js`).
All 344 backend tests pass.
v0.1.0 — Initial Release
Clawmander v0.1.0 — Initial Release
Personal command center for AI agents, work, and finances.
Clawmander provides full visibility into OpenClaw agents with real-time task monitoring, a virtual browser, bash terminal, chat interface, voice integration, drawing canvas, and more. Built with Next.js and Express, optimized for single-user deployment.
Features
🌐 Virtual Browser
- Full remote Chromium browser streamed live via JPEG screencast over WebSocket
- Multiple browser instances with named tabs and popup/new-tab support
- User/agent control modes — agent can drive the browser while you watch
- Stealth mode to bypass bot detection
- Full input support: click, scroll, keyboard, mouse-move
- Mobile touch scroll and keyboard toggle support
💻 Bash Terminal
- Full xterm.js terminal backed by node-pty over WebSocket
- Persistent shell session with resize-aware rendering
💬 Chat Interface
- Discord/Matrix-style chat with OpenClaw agents
- Streaming responses with real-time markdown rendering
- Slash commands, image attachments, approval request banners
- Message copy, retry, and smart auto-scroll
🎤 Voice Integration
- Mic dictation via Web Speech API
- TTS toggle with Chatterbox TTS server support
- Dedicated hands-free
/voicepage with auto-listen mode
🎨 Drawing Canvas
- Full Excalidraw canvas with dark theme
- Drawing list sidebar — create, rename, delete
- Auto-save with real-time sync via SSE
- Agent-accessible via REST API
🤖 Agent Status (Kanban)
- Real-time agent task monitoring with progress bars
- Heartbeat countdown, idle/active status
- Completed tasks split by agent or user
📰 Feeds & Cron Monitoring
- Agent reports and cron run output in a paginated feed
- Scheduled cron job status, run history, and real-time updates
🧠 Memory Viewer
- Browse and inspect agent memory files
💼 Work View & Job Postings
- Action items, daily notes, work briefs
- Job posting matches with location prioritization and match scoring
💰 Budget & Finance
- Income tracking, cash flow, spending trends
- Bill reminders and savings rate
🔒 Authentication
- JWT-based auth with access + refresh token flow
- Login, register, profile update, and password change
⚙️ Exec Approvals & Settings
- Per-agent tool/allowlist management for execution approvals
- Configurable TTS URL and Excalidraw asset path