360 Secure SkillHub
360 安全技能中心

Token Burn Monitor

该 Skill 是一个零依赖的 Node.js 本地仪表盘,读取 OpenClaw 智能体会话 JSONL 与 cron 任务文件,提供按智能体与模型的 token 用量、成本、缓存命中率、定时任务状态和 30 天历史趋势,并通过仅绑定本机回环地址的 GET 接口与可替换前端主题展示。

kasparchen
kasparchen
热度 86.45
最近更新 2026-05-11 17:30:20
分类:数据依赖:代码执行 / 读写文件应用场景:报告撰写 / 数据处理

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add token-burn-monitor
Metadata
name
token-burn-monitor
description
Real-time token consumption monitoring dashboard for OpenClaw agents. Tracks per-agent token usage, cost breakdown by model, cache hit rates, cron job status, and 30-day historical trends. Use when setting up cost monitoring, checking daily token burn, or reviewing cron job health. User prompts are redacted by default.
env
{"OPENCLAW_AGENTS_DIR":{"description":"Path to OpenClaw agents directory","default":"/home/node/.openclaw/agents","required":false},"OPENCLAW_HOME":{"description":"Path to OpenClaw home directory (for cron data)","default":"/home/node/.openclaw","required":false},"PORT":{"description":"Server port","default":"3847","required":false}}
permissions
{"filesystem":{"read":["$OPENCLAW_AGENTS_DIR/*/sessions/*.jsonl","$OPENCLAW_HOME/cron/jobs.json"]},"network":{"listen":"127.0.0.1:$PORT","outbound":"none"},"shell":"none"}

Token Burn Monitor

Zero-dependency Node.js dashboard. Core API + swappable frontend themes.

Architecture

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

Quick Start

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

Configuration

Copy config.default.json to config.json:

{
  "port": 3847,
  "theme": "default",
  "agents": {
    "main": { "name": "Karl", "icon": "/assets/karl.png" }
  },
  "modelPricing": {}
}
  • theme: Directory name under themes/. Default: "default"
  • agents: Display names/icons. Auto-discovered; config only overrides display.
  • port: Also settable via PORT env var.
  • modelPricing: Override/add model pricing ($/1M tokens).

Set OPENCLAW_AGENTS_DIR to override agent directory (default: /home/node/.openclaw/agents).

Themes

Themes live in themes/<name>/. Minimum: one index.html that fetches data from the API.

To create a custom theme:

  1. Read API.md for all available endpoints
  2. Create themes/my-theme/index.html
  3. Set "theme": "my-theme" in config.json
  4. Restart

The default theme (themes/default/) is a full reference implementation.

API Overview

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

Security

  • Server binds to 127.0.0.1 by default (localhost only)
  • No shell execution — all data read from filesystem
  • No outbound network requests — default theme uses system fonts
  • User prompts redacted by default ([redacted]), opt-in via showPrompts: true in config
  • HTML responses include CSP: connect-src 'self'; font-src 'self'
  • GET-only — all other HTTP methods rejected

Troubleshooting

  • No data: Verify OPENCLAW_AGENTS_DIR points to correct agents directory.
  • Port conflict: PORT=4000 bash start.sh
  • Theme not loading: Check themes/<name>/index.html exists.