令牌监控器:实时配额追踪 - Openclaw 技能

作者:互联网

2026-04-13

AI教程

什么是 令牌坚控器?

令牌坚控器是 Openclaw 技能库中的一个专门工具,旨在对 AI 模型消耗进行自动化监督。通过坚控 OpenAI Codex、GitHub Copilot 和 Google 等平台的供应商配额,它确保开发者不会因资源耗尽或突然的服务中断而措手不及。

该技能专为最大效率而设计,通过系统 cron 运行时可实现零令牌足迹。它利用本地状态文件追踪配额历史,实现智能告警——确保您仅接收有关新的低配额事件及后续恢复的通知,避免重复骚扰。

下载入口:https://github.com/openclaw/skills/tree/main/skills/tradmangh/token-monitor

安装与下载

1. ClawHub CLI

从源直接安装技能的最快方式。

npx clawhub@latest install token-monitor

2. 手动安装

将技能文件夹复制到以下位置之一

全局模式 ~/.openclaw/skills/ 工作区 /skills/

优先级:工作区 > 本地 > 内置

3. 提示词安装

将此提示词复制到 OpenClaw 即可自动安装。

请帮我使用 Clawhub 安装 token-monitor。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。

令牌坚控器 应用场景

  • 在 AI 令牌配额跌至临界水平以下时通过接收早期预警来防止开发停工。
  • 同时管理多个 AI 供应商,以平衡不同模型层级的使用情况和成本。
  • 在不便进行手动配额检查的无头环境中自动化资源可视化。
  • 在每日或每小时配额成功重置并可供使用时接收确认告警。
令牌坚控器 工作原理
  1. 脚本通过运行 openclaw models status 命令启动,从所有配置的供应商处获取最新的使用数据。
  2. 它使用 jq 解析命令输出,提取各种配额类型(如 5h、Day 或 Premium)的具体百分比值。
  3. 系统将这些百分比与用户定义的阈值(默认为 20%)进行比较。
  4. 它参考本地 .token-state.json 文件,判断低配额情况是新事件还是之前警告的延续。
  5. 如果检测到新的阈值突破或配额恢复,它将通过 openclaw cron wake 系统触发通知。
  6. 最后,它用最新的时间戳和配额水平更新本地状态文件,为下一个坚控周期做准备。

令牌坚控器 配置指南

要将此实用程序安装到您的 Openclaw 技能集合中,请使用以下命令:

clawhub install token-monitor

要通过每 30 分钟一次的 cron 作业启用自动化后台坚控,请运行:

openclaw cron add --schedule "*/30 * * * *" r
  --payload '{"kind":"systemEvent","text":"Run quota monitor: skills/token-monitor/scripts/check-quota.sh"}' r
  --name "Token Monitor (30min)"

令牌坚控器 数据架构与分类体系

该技能通过位于 ~/.openclaw/workspace/skills/token-monitor/.token-state.json 的 JSON 状态文件管理其持久性。

类型 描述
warned 数组 当前活动告警列表,用于防止重复通知。
current 数组 在最近一次检查中捕获的原始配额字符串。
lastCheck 字符串 最后一次执行的 ISO 8601 时间戳。
threshold 整数 用于触发低配额逻辑的百分比值。
name: token-monitor
description: Monitor OpenClaw token/quota usage and alert when any quota drops below a threshold (default 20%). Uses `openclaw models status` and writes only a local state file to avoid duplicate alerts. **Does not handle secrets.** **Token cost:** Script itself: 0 tokens (pure bash). Heartbeat integration: ~1k-2k tokens/hour (reading HEARTBEAT.md + executing script). Alert delivery: ~500-1k tokens/alert. **Optimization:** Use system cron instead of heartbeat to reduce to ~0 tokens (except alerts).

Token Monitor

Monitors OpenClaw token/quota usage and outputs alerts when any quota drops below a configurable threshold (default 20%).

Features

  • Multi-provider support: Monitors all configured providers (openai-codex, github-copilot, google-antigravity, etc.)
  • Multi-quota tracking: Tracks all quota types (5h, Day, Premium, Chat, etc.)
  • Smart alerting: Only alerts on new low-quota events (no spam)
  • Recovery notifications: Alerts when quota recovers above threshold
  • State persistence: Remembers previous warnings across runs

Install / Update (ClawHub)

Install:

clawhub install token-monitor

Update:

clawhub update token-monitor

(You can also run clawhub update --all.)


Disable / Uninstall

If enabled via HEARTBEAT.md

Remove the Token Monitor section from HEARTBEAT.md (or comment it out). No further uninstall needed.

If enabled via an OpenClaw cron job

Disable/remove the cron job:

openclaw cron list
openclaw cron remove 

Optional cleanup (state)

rm -f ~/.openclaw/workspace/skills/token-monitor/.token-state.json

Usage

Manual Check

Run the monitoring script directly:

skills/token-monitor/scripts/check-quota.sh

If installed into ~/.openclaw/skills, run:

~/.openclaw/skills/token-monitor/scripts/check-quota.sh

With custom threshold (default 20%):

skills/token-monitor/scripts/check-quota.sh --threshold 10

Automated Monitoring (Heartbeat)

Add to HEARTBEAT.md for periodic checks:

## Token Monitor (every ~60min, rotate)

Check model quotas and alert if below threshold.

**Instructions:**
1. Run `output=$(skills/token-monitor/scripts/check-quota.sh 2>&1)`
2. If output non-empty → send wake event with output text
3. If empty → all quotas OK, continue silently

**Rotate check:** Only run every ~4th heartbeat (once/hour if heartbeat is 15min)

**Example integration:**
```bash
output=$(skills/token-monitor/scripts/check-quota.sh 2>&1)
if [[ -n "$output" ]]; then
  openclaw cron wake --text "$output" --mode now
fi

### Automated Monitoring (Cron Job)

Create a dedicated cron job for precise scheduling:

```bash
openclaw cron add --schedule "*/30 * * * *" r
  --payload '{"kind":"systemEvent","text":"Run quota monitor: skills/token-monitor/scripts/check-quota.sh"}' r
  --name "Token Monitor (30min)"

Output

Low Quota Alert

?? Model Quota Alert (<20%):
? openai-codex Day: 0% left
? github-copilot Premium: 5% left

Recovery Alert

? Quota Recovered (>=20%):
? openai-codex 5h: 100% left

State File

The script maintains state in:

~/.openclaw/workspace/skills/token-monitor/.token-state.json

Example state:

{
  "warned": [
    "openai-codex Day: 0% left",
    "github-copilot Premium: 5% left"
  ],
  "current": [
    "openai-codex:5h=100",
    "openai-codex:Day=0",
    "github-copilot:Premium=5",
    "github-copilot:Chat=100"
  ],
  "lastCheck": "2026-02-15T09:30:00Z",
  "threshold": 20
}

Configuration

Environment Variables

  • QUOTA_THRESHOLD: Alert threshold percentage (default: 20)
  • QUOTA_STATE_FILE: Path to state file (default: ~/.openclaw/workspace/skills/token-monitor/.token-state.json)

Script Arguments

  • --threshold : Set alert threshold (overrides QUOTA_THRESHOLD)
  • --state-file : Set state file location (overrides QUOTA_STATE_FILE)

How It Works

  1. Parse quota data: Runs openclaw models status and extracts all "X% left" values
  2. Identify low quotas: Finds all quotas below threshold
  3. Compare with previous state: Determines new warnings and recoveries
  4. Send alerts: Uses openclaw cron wake to deliver notifications
  5. Update state: Saves current state for next run

Dependencies

  • openclaw CLI (models status, cron wake)
  • jq (JSON parsing)
  • bash 4.0+

Troubleshooting

No alerts sent:

  • Check that quota is actually below threshold: openclaw models status
  • Verify state file permissions: cat ~/.openclaw/workspace/skills/token-monitor/.token-state.json
  • Run script manually to see output: skills/token-monitor/scripts/check-quota.sh

Duplicate alerts:

  • State file may be corrupted or deleted
  • Check state file for warned array: jq .warned ~/.openclaw/workspace/skills/token-monitor/.token-state.json

Script fails:

  • Ensure jq is installed: jq --version
  • Check script permissions: ls -l skills/token-monitor/scripts/check-quota.sh
  • Run with verbose output: bash -x skills/token-monitor/scripts/check-quota.sh