手机端 Hermes 用量同步协议(2026-08-17 建立)

目的:PC 端 webwatch「DeepSeek 用量卡」对账需要手机端 Hermes 的 token 用量——用户可用「总用量 vs 官方余额」检测 API 是否被盗用。

手机端任务(请转达手机 Hermes 执行)

每天 23:00(SGT)或每次长会话结束时,把当天 DeepSeek 用量汇总写入共享位置:

  • 路径:vault/env/usage-phone-YYYY-MM-DD.json(vault = Obsidian 共享库,Drive 同步)
  • 格式:
{
  "source": "termux-hermes",
  "date": "2026-08-17",
  "requests": 0,
  "input_tokens": 0,
  "output_tokens": 0,
  "cache_hit_tokens": 0,
  "cache_miss_tokens": 0,
  "cost_usd": 0.0
}
  • 数据来源:手机 Hermes 的 session 记录/API 用量(查不到就写 "cost_unknown": true,不编造)
  • 跨平台通道:vault → Google Drive 同步 → PC 读取(与现有知识同步同机制)

PC 侧(Hermes 主 agent 负责)

  • webwatch 用量卡读取 vault/env/usage-phone-*.json 合并显示(手机端区块)
  • 与本地聚合(PI/OMP/Hermes/OpenClaw)+ 官方余额三方对账

备注

  • 手机 Hermes 若无法自动写 vault:最低限度 = 手机 agent 把用量数字回复给用户,用户转达(手动模式)

自动化(2026-08-17 手机侧已部署 cron)

手机 Termux Hermes 已挂每日 cron(job 066363fe684d,每天 23:00 SGT,no_agent 脚本模式,零 token 成本):

  • 脚本:~/.hermes/scripts/usage_phone_daily.py
  • 行为:统计当天 ~/.hermes/logs/gateway.logresponse ready ... api_calls=N 成功请求合计 + errors.log 的 402 失败计数 → 生成/更新 vault/env/usage-phone-<今日>.json(gdrive.py 直写 Drive,存在则 update)
  • 输出:跑完发一条 Telegram 摘要(requests 数 + 402 失败数 + cost_unknown)
  • 边界:手机端日志无 token 明细,故 token/cost 一律 cost_unknown: true;若未来手机端能记录 usage 再补
  • PC 侧可在 webwatch 用量卡直接读 usage-phone-*.json 合并展示,与官方余额对账

事件记录(2026-08-17 余额异常复盘)

  • 现象:8/16 全天 0.28/M→1.89 异常
  • 结论:非盗用(账单单一 key = 自家 key,全 flash)。根因 = OMP 遇到 402/429 error 后无限重试循环烧钱,直至余额清零(04:47 还 200 → 05:17 起全 402)
  • 教训:① 记录余额 + 差值对账 = 自证清白的第一道防线;② 所有 agent 的重试循环必须设熔断/上限
  • 处置:旧 key 已删,新 key 已写入 PC D:\hermes\.env;手机侧每日用量 cron 已上线