Zero-dependency Node.js dashboard. Core API + swappable frontend themes.
server.js → Core API (stable, don't modify)
themes/default/ → Default dark dashboard theme
themes/<custom>/ → User/agent-generated themes
API.md → API contract for theme developers
config.json → Port, theme, agents, pricing overrides
bash start.sh # Start (default port 3847)
bash start.sh status # Check status
bash start.sh restart # Restart after config change
bash start.sh stop # Stop
Copy config.default.json to config.json:
{
"port": 3847,
"theme": "default",
"agents": {
"main": { "name": "Karl", "icon": "/assets/karl.png" }
},
"modelPricing": {}
}
themes/. Default: "default"小葱技能7w4.net持续更新中。
PORT env var.Set OPENCLAW_AGENTS_DIR to override agent directory (default: /home/node/.openclaw/agents).
Themes live in themes/<name>/. Minimum: one index.html that fetches data from the API.
To create a custom theme:
API.md for all available endpointsthemes/my-theme/index.html"theme": "my-theme" in config.jsonThe default theme (themes/default/) is a full reference implementation.
All endpoints return JSON. GET-only. Server binds to localhost. Full docs in API.md.
| Endpoint | Description |
|---|---|
GET /api/config |
Agent names and icons |
GET /api/stats?date= |
All agents aggregated |
GET /api/agent/:id?date= |
Single agent with per-call breakdown |
GET /api/history?days= |
30-day cost history |
GET /api/pricing |
Model pricing table |
GET /api/crons |
Scheduled jobs (read from filesystem) |
GET /api/cron/:id/runs |
Job run history |
127.0.0.1 by default (localhost only)[redacted]), opt-in via showPrompts: true in configconnect-src 'self'; font-src 'self'OPENCLAW_AGENTS_DIR points to correct agents directory.PORT=4000 bash start.shthemes/<name>/index.html exists.这是一个质量很高的监控 Dashboard Skill。文档非常详细,配置灵活,支持自定义主题和安全保护(提示词默认脱敏)。界面美观,功能实用,可以追踪每个 agent 的 token 消耗、费用和缓存效率。优点是零依赖、启动简单、安全性强。不足之处是缺少自动化测试,错误提示信息有限。不过对于普通用户来说开箱即用,安装和配置都很直观,是一个值得安装的生产级工具。