joyiok / dsh-token-usage

목록에 있음

DSH plugin: authoritative token usage stats across sessions, with a Web sidebar panel and token_usage tool

main도구세션 소스 보기

설치

npx -y @deepseek-ai/dsh plugin --profile web add github:joyiok/dsh-token-usage

이 설치 명령은 GitHub 저장소 주소에서 생성된 확인되지 않은 시작점입니다.

README

유지 관리자가 작성한 문서 스냅샷입니다.

GitHub에서 보기 ↗
커밋 8d9ca66동기화 2026. 8. 18.

dsh-token-usage

DeepSeek Harness(DSH)Token 用量统计插件。

  • Web 侧边栏:底部新增 Tokens 按钮,点击查看全部累计 / 今日 / 每个会话的 input / output / cache-read token(数据通过 Typert RPC 从宿主聚合)。
  • Agent 工具:注册 token_usage 工具,headless / Web 会话里直接问 「我一共用了多少 token」即可得到权威统计。
  • 权威计数:读取 $DSH_HOME/sessions/**/session.jsonl(.zstd),对每个 (turn, step) 只计一次(优先 assistant/messagedata.usage), 不做字符估算;内置多帧 zstd 解码,无需外部 zstd 二进制。

安装

cd /home/joy/Documents
dsh plugin --profile web add /home/joy/Documents/token-usage-dsh-plugin
dsh plugin --profile headless add /home/joy/Documents/token-usage-dsh-plugin

安装完成后重启 dsh web(客户端扫描与 Typert 清单按包缓存):

dsh web

验证:dsh --profile web --dump-config 应出现:

# == dsh-token-usage
- id: token-usage
  name: dsh-token-usage

使用

Web 侧边栏

打开任意会话 → 左下角点击 Tokens 图标 → 面板展示:

  • 全部累计 / 今日:输入、输出、输入+输出、缓存读取、含缓存总计、LLM steps;
  • 会话明细表:标题、模型、输入 / 输出 / 缓存读取、最近活动时间。

Agent 工具(headless / Web 均可)

用户:我一共用了多少 token?
Agent:调用 token_usage(scope: "all") 后回答

工具参数:

参数说明
scopeall(默认,全部会话)/ today(今日)/ current(当前会话)
includeSessions是否包含逐会话明细;默认 current/today 为 true,all 为 false

配置

可在 profile 的 cordis.patch.yml 覆盖(注意:覆盖整行 config):

- id: token-usage
  config:
    cacheTtlMs: 8000        # 聚合缓存毫秒数
    maxToolSessions: 20     # token_usage 工具最多返回的会话数

禁用插件:

- id: token-usage
  disabled: true

结构

src/index.js               # 宿主半体:Typert RPC + token_usage 工具
src/usage.js               # 零依赖聚合核心(多帧 zstd + 会话日志扫描)
lib/client.js              # 浏览器半体:侧边栏按钮 + 统计面板
lib/typert.host.js         # Typert host 清单(token-usage/aggregate)
lib/typert.remote-client.js# Typert remote 描述符(参考)
cordis.patch.yml           # dsh bundle 补丁:插入 token-usage 行
scripts/build.mjs          # esbuild 构建脚本(node scripts/build.mjs)

说明

  • totalTokens = inputTokens + outputTokenstotalWithCache 额外计入 cacheReadTokens + cacheWriteTokens
  • 会话日志正在写入时,内置解码失败会自动回退到 zstd CLI(PATH 可用时)。

저장소 정보

언어
JavaScript
라이선스
MIT
마지막 업데이트
2026. 8. 15. 오전 7:33

신중하게 설치하기

소스 코드, 권한, 수명 주기 스크립트, 의존성 및 네트워크 접근을 검토하고 신뢰하지 않는 플러그인은 격리 환경에서 테스트하세요.