Tiger Agent workspace -- OpenClaw orchestration runtime
- Rebrand Tarzan → Tiger in layout metadata and header
- Bridge: point WORKSPACE_SYMLINK at the docker volume path post-migration
(/var/lib/docker/volumes/tiger_tiger-workspace/_data) — the old
/root/tiger-workspace symlink was orphaned after the April standalone
migration, causing workspace endpoint to return empty.
- Bridge: read agents.defaults.model.primary for model info + expose all
configured availableModels so the dashboard card can show them.
- Dashboard: page.tsx renders currentModel/fallbackModels/availableModels.
- Chat streaming fix (client side):
* proper SSE buffering across TCP chunks (split on \n\n, keep tail in
buffer, {stream: true} decoder for multi-byte UTF-8)
* separate status vs chunk handlers — status no longer pollutes content
* fall back to data.content in done event if streamingRef is empty
* visible parse errors instead of silent catch
* plain-text rendering while streaming, ReactMarkdown only after done —
avoids per-token markdown reparse which was killing the typing feel
Root causes:
1. tiger-bridge crash-looped for 36h on EADDRINUSE because a manual
nohup restart squatted on port 3456; systemd's tsx version couldn't
bind. Killing the squatter restored the expected tsx-src workflow.
2. ChunkLoadError on /chat: npm run build ran under a live next start
prod server, creating an in-memory manifest vs on-disk build split.
Fixed by disciplined build-then-restart.
3. Dashboard chat silently dropped responses: SSE 'status' event text
was being concatenated into the agent message content.
|
||
|---|---|---|
| .agent | ||
| .claude | ||
| .clawhub | ||
| bridge | ||
| canvas | ||
| commands | ||
| config | ||
| dashboard | ||
| deploy | ||
| docs | ||
| firecrawl-search | ||
| memory | ||
| skills/youtube-full | ||
| tools | ||
| .gitignore | ||
| AGENTS.md | ||
| HEARTBEAT.md | ||
| IDENTITY.md | ||
| MEMORY.md | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| SOUL.md | ||
| TOOLS.md | ||
| USER.md | ||
Clawd Agent Dashboard
A premium, dark-mode "Command Center" for the Clawd AI Agent.
Overview
The Clawd Dashboard is a centralized interface designed to monitor and interact with the Clawd AI agent. It provides real-time visibility into the agent's memory, logs, scheduled tasks (cron jobs), and capabilities (skills), all wrapped in a sleek, responsive UI.
Features
- 📊 System Status: Real-time heartbeat monitoring of the
clawdbotprocess. - 🧠 Memory Management: View and edit the agent's core memory (
MEMORY.md) and daily logs. - 🛠️ Skills Registry: Browse, edit, and manage the agent's capabilities and MCP tools.
- ⏱️ Cron Jobs: detailed view and control over scheduled background tasks.
- 💬 Chat Interface: Integrated chat window to communicate directly with the agent.
- 🌗 Dark Mode: Built with a "Slate & Violet" aesthetic optimized for low-light environments.
Tech Stack
- Framework: Next.js 14 (App Router)
- UI Components: Shadcn/UI (Radix Primitives)
- Styling: Tailwind CSS
- Icons: Lucide React
- State Management: SWR / React Query
- Backend: Next.js API Routes (Serverless)
Getting Started
Prerequisites
- Node.js 18+
- npm or pnpm
Installation
-
Clone the repository:
git clone https://github.com/manohar6839/clawd-dashboard.git cd clawd-dashboard -
Install dependencies:
npm install cd dashboard && npm install -
Configure Environment:
- Copy example configs:
cp config/mcporter.example.json config/mcporter.json cp config/cron.example.json config/cron.json
- Copy example configs:
Running the Dashboard
Start the development server:
npm run dashboard
The dashboard will be available at http://localhost:3000.
Project Structure
clawd/
├── .agent/ # Agent self-knowledge & documentation
├── dashboard/ # Next.js Application
│ ├── src/app/ # App Router Pages (Memory, Skills, Cron, Chat)
│ └── src/components/ # Shared UI Components
├── config/ # Agent configuration (Cron, MCP)
├── memory/ # Agent daily logs
├── tools/ # External tool scripts
└── MEMORY.md # Core Agent Memory
Contributing
- Fork the repository.
- Create a feature branch (
git checkout -b feature/amazing-feature). - Commit your changes (
git commit -m 'feat: Add amazing feature'). - Push to the branch (
git push origin feature/amazing-feature). - Open a Pull Request.
License
MIT © Manohar Air