pycjava/dsh-usage

pycjava★ 0JavaScript最后同步: 2026-08-15

在 GitHub 打开

DSH 跨会话 token 记账插件:进程内每一次模型调用都记入本地 SQLite 账本,设置面板一眼看全、agent 一问即答。只做 token,不做钱。

README 摘要

dsh-usage 跨会话、跨模型/提供方聚合的 DSH 用量记账插件——「我这个月用了多少 token、按模型分布如何」,设置面板一眼可见、agent 一问即答。 只做 token,不做钱。 这是什么 dsh-usage 是一个标准的 DSH 插件:单个 npm 包 dsh-usage-ledger ( 双面包 ——宿主半边跑在 Node、浏览器半边跑在 App 客户端),不 fork 核心、不改 DSH 源码。它在 llm/stream waterfall 上为进程内每一次模型调用记账,落成本地 SQLite 账本,并以两种方式呈现:设置页的「数据与统计」面板 + 面向模型的 usage stats 工具。 答案是 本地、持久、跨会话、跨模型/提供方 的真实数字——提供方实报的 token;估算只作可选的兜底,并永远单独标记。实现位于 dsh-usage-ledger/ ,详见其 README。 为什么 DSH 缺这一块 DSH 拥有完整的会话事件基础设施,但 没有一张「账」 ——没有跨会话的用量账本、没有「按模型/按提供方/按时间」的用量视图: 现有能力 位置 能做什么 缺什么 @deepseek-ai/dsh-token-meter 内置 启发式 token 估算 (chars/4 + 结构开销) 服务于上下文水位、compaction; 不是提供方实报用量 @deepseek-ai/dsh-session-stats 内置 单会话投影:turns / steps / decodeTokens 只统计 output tokens、只到会话粒度; 无 input、无跨会话聚合 @deepseek-ai/dsh-session-telemetry-otel 内置(默认 DISABLED) 可选地把会话事件以 OTLP 分享出去 是 外发遥测 ,不是本地记账 会话事件日志 内置 append-only 规范日志; assistant/message 携带提供方实报 usage 只按会话存取; 没有任何消费方聚合成账本 这就是 dsh-usage 填的洞。 特性 - 跨会话记账 :捕获每次 LLM 调用的 provider、model、实报 usage(input / output / cache read / cache write / reasoning tokens)、时间、会话 id、用途;捕获点选 llm/stream waterfall——agent 轮次、子代理、会话标题、压缩摘要都经过它,比会话事件日志更完整(标题/压缩调用不进事件日志); - 实报优先,估算兜底 :提供方实报的 usage 直接入账;失败调用(无 usage chunk 或全零)不入账,不虚增; estimateFallback ( 默认关 )开启后,无实报的调用用与 to…

在 GitHub 查看完整 README →
Agent/智能体deepseek-harnessdsh-pluginagent

分类