Skip to content

joaompfp/ClawBoard

Repository files navigation

ClawBoard

Multi-agent workspace editor for OpenClaw and AI orchestration platforms.

Browse, edit, and manage workspace files for multiple AI agents from a single dashboard — with Monaco Editor, dark mode, i18n, and real-time system stats.

Features

  • Multi-agent switching — navigate between agents via sidebar grid (hash routing, no page reload)
  • Monaco Editor — syntax highlighting, Ctrl+S save, per-extension language detection
  • File management — browse, create, move, delete, upload (drag & drop), download
  • Config file shortcuts — one-click access to AGENTS.md, SOUL.md, MEMORY.md, etc.
  • Search — filename and content search across agent workspaces
  • Dark mode — toggle with system preference detection, persisted in localStorage
  • i18n — English and Portuguese included, easily extensible
  • System stats — RAM, disk, and load average in the status bar
  • Quick links — configurable external service shortcuts
  • Auto-discover — scans /workspaces/ for agent directories automatically
  • Optional auth — basic auth via environment variable
  • Config-driven — agents, links, branding, protected files — all in one JSON file
  • No build step — vanilla JS + Express, Monaco via CDN

Quick Start

git clone https://github.com/yourusername/clawboard.git
cd clawboard
npm install
node server.js

Open http://localhost:3000 — ClawBoard auto-discovers agent workspaces in /workspaces/.

Docker

docker compose up -d

Or with custom config:

services:
  clawboard:
    build: .
    ports:
      - "8181:3000"
    volumes:
      - ./clawboard.config.json:/app/clawboard.config.json:ro
      - /path/to/workspaces:/workspaces:rw
    environment:
      - CLAWBOARD_AUTH=admin:changeme

Configuration

All settings in clawboard.config.json:

{
  "name": "ClawBoard",
  "locale": "en",
  "workspacesDir": "/workspaces",
  "autoDiscover": true,
  "branding": "ClawBoard",
  "agents": [
    {
      "id": "agent-1",
      "name": "My Agent",
      "emoji": "🤖",
      "color": "#6366f1",
      "role": "General Purpose",
      "avatar": "/api/agent/agent-1/file?path=/avatar.png"
    }
  ],
  "quickLinks": [
    { "name": "Docs", "url": "https://docs.example.com" }
  ],
  "configFiles": [
    { "name": "AGENTS.md", "icon": "👥" },
    { "name": "MEMORY.md", "icon": "🧠" }
  ],
  "protectedFiles": ["AGENTS.md", "SOUL.md", "MEMORY.md"],
  "folderShortcuts": [
    { "name": "inbox", "icon": "📥", "path": "/inbox" }
  ]
}

Auto-discover

When autoDiscover is true (default), ClawBoard scans workspacesDir for subdirectories and registers them as agents. Configured agents take priority — auto-discovered ones get default emoji and color.

Config reload

Send SIGHUP to reload config without restarting:

docker kill -s HUP clawboard

Environment Variables

Variable Description Default
PORT Server port 3000
CLAWBOARD_CONFIG Path to config file ./clawboard.config.json
CLAWBOARD_AUTH Basic auth (user:pass) (disabled)

API

Method Endpoint Description
GET /api/config Public config (agents, links, branding)
GET /api/agents List all agents
GET /api/agent/:id/files?path= Directory listing
GET /api/agent/:id/file?path= Read file
PUT /api/agent/:id/file?path= Write file (text body)
DELETE /api/agent/:id/file?path= Delete file or directory
POST /api/agent/:id/move Move file ({from, to})
POST /api/agent/:id/mkdir Create directory ({path})
POST /api/agent/:id/upload?path=&filename= Upload file (binary body)
GET /api/agent/:id/recents?limit= Recently modified files
GET /api/agent/:id/search?q=&type= Search (name or content)
GET /api/stats System stats (RAM, disk, load)

i18n

Add locale files to public/locales/:

public/locales/
├── en.json    # English
├── pt.json    # Portuguese
└── fr.json    # Add your own

Toggle language with the button in the top bar. Locale is persisted in localStorage.

OpenClaw Integration

ClawBoard was built for OpenClaw's multi-agent architecture where each agent has its own workspace directory. Mount each agent's workspace:

volumes:
  - /path/to/workspace-main:/workspaces/jarbas:rw
  - /path/to/workspace-scout:/workspaces/scout:rw
  - /path/to/workspace-coder:/workspaces/coder:rw

License

MIT

About

Multi-agent workspace editor for OpenClaw and AI orchestration platforms. Browse, edit, and manage workspace files for multiple AI agents from a single dashboard.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors