360 Secure SkillHub
360 安全技能中心

ClawDef

ClawDef 是面向 OpenClaw 的自托管本地仪表盘,运行在 127.0.0.1:3456,读取会话记录与网关日志统计 token 用量和费用,提供图表、浪费检测、模型费用估算与一键切换、8 家厂商接入、预算告警与故障转移;带多用户角色与 JWT 鉴权,并含禁用全部技能、停止 Gateway 等高影响操作。

gs921302
gs921302
热度 50.92
最近更新 2026-05-11 17:35:46
分类:数据依赖:代码执行 / 读写文件 / 联网浏览搜索 / 第三方 API / 内部调用大模型应用场景:报告撰写 / 财务 / DevOps / 工作流

安装技能

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

执行命令安装此 skill: npx secure-skills-cli add clawdef
Metadata
name
clawdef
version
1.3.0
description
ClawDef — Self-hosted Token optimization dashboard for OpenClaw. Tracks token usage, estimates costs, auto-switches to cheapest model, provides one-click provider setup (8 vendors), budget control, and waste detection. Runs locally on 127.0.0.1:3456, does not send user data to third parties.
metadata
{"tags":["monitoring","cost-optimization","dashboard","token-management","smart-optimizer"],"category":"productivity","configPaths":["~/.openclaw/openclaw.json","~/.openclaw/agents/*/sessions/","/tmp/openclaw/"],"openclaw":{"requires":{"bins":["node","npm"]},"install":[{"id":"node","kind":"node","package":"better-sqlite3","bins":[],"label":"Install dependencies"}]}}

ClawDef — Token Optimization Dashboard for OpenClaw

A local web dashboard that helps you monitor and reduce your OpenClaw token costs.

Features

Feature Description
🧠 Smart Auto-Optimizer Analyzes usage every 5min, auto-switches to cheapest model based on budget and task complexity
💰 Cost Estimator Input a task → see estimated cost per model, one-click switch
📊 Real-time Dashboard Token/cost tracking, cache hit rate, hourly charts, waste detection
🤖 One-click Model Setup 8 providers (Zhipu/OpenAI/Claude/DeepSeek/Qwen/Kimi/Gemini/Custom), just fill API Key
💳 Budget Control Daily/monthly limits with 80% warning and 95% auto-downgrade
🔄 Failover Auto-detect unhealthy models and switch
🚨 Emergency Controls Disable all skills or stop Gateway (admin-only, manual trigger)
👥 Multi-user Admin/Editor/Viewer roles with password auth

Prerequisites

  • Node.js v18+ (node --version)
  • OpenClaw installed and running
  • OS: Linux or macOS

Installation

Step 1: Copy files

CLAWDEF_DIR=/opt/openclaw-monitor   # or any directory you prefer
SKILL_DIR=~/.openclaw/workspace/skills/clawdef

mkdir -p "$CLAWDEF_DIR/data" "$CLAWDEF_DIR/public/lib"
cp "$SKILL_DIR/scripts/server.js" "$CLAWDEF_DIR/server.js"
cp "$SKILL_DIR/scripts/package.json" "$CLAWDEF_DIR/package.json"
cp "$SKILL_DIR/public/index.html" "$CLAWDEF_DIR/public/index.html"
cp "$SKILL_DIR/public/lib/chart.min.js" "$CLAWDEF_DIR/public/lib/chart.min.js"

Step 2: Install dependencies

cd "$CLAWDEF_DIR" && npm install --production

Step 3: Start

node "$CLAWDEF_DIR/server.js"

Or use the helper script:

bash ~/.openclaw/workspace/skills/clawdef/scripts/install.sh

Step 4: First-run setup

Open http://127.0.0.1:3456 in your browser. On first run, you'll be prompted to set an admin password.

Optional: Run as a service (Linux with systemd)

The install script copies files only. To run as a persistent service, create a systemd unit manually:

sudo tee /etc/systemd/system/clawdef.service << EOF
[Unit]
Description=ClawDef Token Optimizer
After=network.target

[Service]
Type=simple
ExecStart=$(which node) /opt/openclaw-monitor/server.js
WorkingDirectory=/opt/openclaw-monitor
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable --now clawdef

File Access

This skill reads and writes the following files:

File/Path Access Purpose
~/.openclaw/openclaw.json Read + Write Read current model config; write agents.defaults.model.primary (model switching) and skills.entries (skill enable/disable)
~/.openclaw/agents/*/sessions/*.jsonl Read only Parse session transcripts for token counting
/tmp/openclaw/*.log Read only Parse gateway logs for request tracking
~/.openclaw/workspace/skills/*/SKILL.md Read only List installed skills with metadata
<install_dir>/data/clawdef.db Read + Write Local SQLite database for dashboard data

Network Activity

Destination Trigger Data sent
127.0.0.1:3456 Always Local web dashboard (served to your browser)
127.0.0.1:11612/health Dashboard load HTTP GET health check (Gateway status)
127.0.0.1:11612/v1/chat/completions User sends chat message Proxied to Gateway
User-configured model APIs Manual health check Minimal POST to verify API is reachable

No data is sent to any third-party server. The dashboard UI is served entirely from local files (no CDN).

Security Notes

  • Binding: Listens on 127.0.0.1 only (not externally accessible)
  • Auth: JWT tokens with bcrypt-hashed passwords, 7-day expiry
  • No default password: First-run setup requires creating admin credentials
  • No telemetry: No outbound data collection or phone-home
  • Dependencies: express, better-sqlite3, jsonwebtoken, bcryptjs, ws (all well-known packages)
  • Native module: better-sqlite3 requires a C++ build step during npm install

Uninstall

# Stop service if using systemd
sudo systemctl stop clawdef && sudo systemctl disable clawdef
# Delete files
rm -rf /opt/openclaw-monitor

Supported Providers

Zhipu (智谱) · OpenAI · Anthropic Claude · DeepSeek · Qwen (通义) · Moonshot (Kimi) · Google Gemini · Custom (any OpenAI-compatible API)

License

MIT