Skip to content

Releases

v0.1.7

Choose a tag to compare

@github-actions github-actions released this 17 Oct 14:37

本版更新

兼容

  • 适配 DSH 0.2.1-rc.2。核对范围:兼容门(engines.dsh 单独判定)、投影 seam(stateSchema、stateVersion、init、apply、stateOf)、sessionQuery 与 sessions 服务、typert manifest 校验、客户端 __ModuleLoader__ 与 main / sidebar.panellist / settings.plugins.tab 槽位、remote.$mount、remote 的 { ok, value } 信封、会话日志文件名。上述接口均未变更,本版本不修改调用方式。

变更

  • 账号接口上报的客户端版本改为读取 window.__DSH_BOOT__.release.version;读取失败或格式不合法时使用内置常量。
  • smoke:compat 的检查版本表加入 0.2.1-rc.2。

安装

推荐跟随 main(应用内插件市场 / 插件管理里填来源):

github:Abyssun/dsh-achievements

想钉死版本就用 commit:

github:Abyssun/dsh-achievements#a849a379a6e1825d48675b85439907156669d024

或直接用本 Release 的产物:

pnpm add https://github.com/Abyssun/dsh-achievements/releases/download/v0.1.7/dsh-achievements-0.1.7.tgz

装完必须重启 DSH:已装插件没有热重载。

Full Changelog: v0.1.6...v0.1.7

v0.1.6

Choose a tag to compare

@github-actions github-actions released this 12 Oct 16:35

本版更新

修复

  • 历史会话统计不到(只有当前会话有数据)。ctx.get("sessionQuery") 在
    [Service.init] 阶段拿不到这个服务:插件按顺序加载,
    @deepseek-ai/dsh-session-query 提供服务比本插件晚,而 ctx.get() 不等待服务出现。
    表现为界面能出数、但只有当前活会话那一份(诊断里 cold=0)。
    改为用 ctx.inject(["sessionQuery"], …) 等依赖到位再启动回填
    (投影注册表一直好用,正因为它走的就是 inject),并加 5s 兜底避免界面永远显示「扫描中」;
    诊断新增 query= 字段如实上报。
  • 部分历史会话读不到(导致总计偏低)。少数会话的 descriptor 版本不被 DSH reader 接受
    (例如 subagent/descriptor 0 uses unsupported descriptor version 2),
    readSession() 直接拒绝它们。实测这些日志的事件形状是兼容的,
    所以新增了原始日志兜底:自己解多帧 zstd(用 Node 内置 zlib,无额外依赖)、
    按 seq 只取真事件、按官方规则跳过继承前缀,再交给同一套折叠逻辑。
    诊断新增 raw= 报告兜底成功的会话数。
  • 同名模型无法区分。模型 key 是 provider::model,不同 provider(通道)可以有同名模型 ——
    实测 deepseek-account::deepseek-flash 与 deepseek-official::deepseek-flash 是两条通道,
    数据当然不同。界面此前只显示模型名,于是两行看起来一模一样。
    现在同名时补上 provider 后缀(deepseek-flash @account / @official),完整 key 仍在悬停提示里。
  • 个人主页不再显示信息性提示:只有真的丢数据(failed > 0)或调用失败才提示。
    「N 个会话走了原始日志兜底」这类说明移到设置页的「统计状态」,并把底层报错压成一句人话
    (去掉会话 id 与原始日志路径)。
  • 看不出数字在动(容易被误认为「没有统计」)。累计值在亿位只保留 1 位小数,
    而一轮对话通常只涨几百万 —— 实测 73 秒涨约 296 万,7.99 亿 → 8.02 亿 四舍五入后
    全都显示成「8.0 亿」,于是看起来像没刷新。现在:亿/万位保留 2 位小数;
    页脚显示**「N 秒前刷新」(每秒跳动)与「本次 +Δ」;另加一行累计精确值**(逐位)。

改进

  • 鼠标悬停在统计卡片上即显示精确值:缩略的「8.04 亿」本身看不出在动,
    把指针放到「累计 Token 数」这片区域,数值会就地换成逐位精确值(如 804,123,456);
    峰值卡显示精确峰值与峰值日期,最长任务卡显示毫秒数。
    模型用量行悬停也会显示精确 token 与完整 provider::model。
  • 「Token 活动」由柱状图改为贡献热力图(GitHub 那种小方格):列 = 周、行 = 星期一…日,
    显示最近一年(53 周),按当日用量相对峰值分 4 档深浅,悬停某一格显示该日精确值;
    带月份与星期标签、右下「少 → 多」图例;底部明细顺带补上峰值时段与常用模型。

文档

  • README 隐去面向维护者的内部信息(本机路径、开发环境搭法、私有统计数字),
    这些内容移到仓库外的开发工作记录。
  • README 顶部加上界面效果截图(assets/preview.png),并说明「缩略值可悬停看精确值」。

说明

  • 取代 0.1.4:后者缺少上面三项数据修复(尤其「历史会话统计不到」会让总计明显偏低)。

安装

推荐跟随 main(应用内插件市场 / 插件管理里填来源):

github:Abyssun/dsh-achievements

想钉死版本就用 commit:

github:Abyssun/dsh-achievements#f9b45a012ad83eb1d9db647612db160ed5c927fc

或直接用本 Release 的产物:

pnpm add https://github.com/Abyssun/dsh-achievements/releases/download/v0.1.6/dsh-achievements-0.1.6.tgz

装完必须重启 DSH:已装插件没有热重载。

Full Changelog: v0.1.5...v0.1.6

v0.1.5

Choose a tag to compare

@github-actions github-actions released this 12 Oct 15:51

本版更新

修复

  • 历史会话统计不到(只有当前会话有数据)。ctx.get("sessionQuery") 在
    [Service.init] 阶段拿不到这个服务:插件按顺序加载,
    @deepseek-ai/dsh-session-query 提供服务比本插件晚,而 ctx.get() 不等待服务出现。
    表现为界面能出数、但只有当前活会话那一份(诊断里 cold=0)。
    改为用 ctx.inject(["sessionQuery"], …) 等依赖到位再启动回填
    (投影注册表一直好用,正因为它走的就是 inject),并加 5s 兜底避免界面永远显示「扫描中」;
    诊断新增 query= 字段如实上报。
  • 部分历史会话读不到(导致总计偏低)。少数会话的 descriptor 版本不被 DSH reader 接受
    (例如 subagent/descriptor 0 uses unsupported descriptor version 2),
    readSession() 直接拒绝它们。实测这些日志的事件形状是兼容的,
    所以新增了原始日志兜底:自己解多帧 zstd(用 Node 内置 zlib,无额外依赖)、
    按 seq 只取真事件、按官方规则跳过继承前缀,再交给同一套折叠逻辑。
    诊断新增 raw= 报告兜底成功的会话数。
  • 同名模型无法区分。模型 key 是 provider::model,不同 provider(通道)可以有同名模型 ——
    实测 deepseek-account::deepseek-flash 与 deepseek-official::deepseek-flash 是两条通道,
    数据当然不同。界面此前只显示模型名,于是两行看起来一模一样。
    现在同名时补上 provider 后缀(deepseek-flash @account / @official),完整 key 仍在悬停提示里。
  • 个人主页不再显示信息性提示:只有真的丢数据(failed > 0)或调用失败才提示。
    「N 个会话走了原始日志兜底」这类说明移到设置页的「统计状态」,并把底层报错压成一句人话
    (去掉会话 id 与原始日志路径)。

文档

  • README 隐去面向维护者的内部信息(本机路径、开发环境搭法、私有统计数字),
    这些内容移到仓库外的开发工作记录。

说明

  • 取代 0.1.4:后者缺少上面三项数据修复(尤其「历史会话统计不到」会让总计明显偏低)。

安装

推荐跟随 main(应用内插件市场 / 插件管理里填来源):

github:Abyssun/dsh-achievements

想钉死版本就用 commit:

github:Abyssun/dsh-achievements#6f03d77a4ee009870addb2f80bcac42bd4cc24b6

或直接用本 Release 的产物:

pnpm add https://github.com/Abyssun/dsh-achievements/releases/download/v0.1.5/dsh-achievements-0.1.5.tgz

装完必须重启 DSH:已装插件没有热重载。

Full Changelog: v0.1.4...v0.1.5

v0.1.4

Choose a tag to compare

@github-actions github-actions released this 12 Oct 15:12

本版更新

修复

  • 修掉致命 bug:getMetrics 的返回值被套了两层 {ok,value} 信封。
    DSH 的约定是:manifest 里 result.schema 描述方法的原始返回值,
    {ok,value} 信封由传输层加(权威依据:官方 dsh-api-account-controller
    的 getProfile(client) { return this.ctx.deepseekAccount.getProfile(client); })。
    我们既在 host 里自己包了一层,又把信封写进了 result.schema —— 两边自洽,
    strict 校验照样通过,而客户端最终拿到
    {ok:true, value:{ok:true, value:真正的快照}},每个字段都读不到。
    表现:5 张卡片全 0、截至 Invalid Date、诊断全是 ?、不报任何错。
    现在 host 直接返回原始值、失败 throw,schema 也改回裸值;
    并加了反证测试:把信封喂给 schema 必须失败。
  • 个人主页头像/昵称/按钮居中(补回漏掉的 .ach-head 容器)。
  • 不再显示本机匿名 UUID。之前把 ~/.dsh/.anonymous-user-id(一个 UUID)
    当用户 ID 摆在主页上,容易被误认成账号 ID;现在只有拿到账号 id/contact
    才显示那一行,匿名 id 挪到设置页并标注「仅本地」。

新增

  • 模型选择:新增「模型用量」区块,列出每个模型的用量条与占比,
    点一行即可只看该模型,再点取消。
    这不是把全局数字换个标题:账本升到 v3,models 从
    provider::model → 数字 变成 { total, days: { 日期 → 当日完整聚合 } },
    筛选后的累计 / 峰值 / 连续天数 / 图表 / 输入输出缓存读全部按该模型分日明细真算。
    选择器目录恒为全部模型(否则筛完就切不回去)。
    「最长任务用时」是会话级指标、没有模型维度,筛选时仍是全局值,界面已标注。
  • 移除占位区块「精选作品」(源自参考设计、无实际内容),由模型用量取代。

说明

  • 取代 0.1.3。0.1.3 的标签与 Release 已发布且存在上述致命缺陷,请勿使用。

安装

推荐跟随 main(应用内插件市场 / 插件管理里填来源):

github:Abyssun/dsh-achievements

想钉死版本就用 commit:

github:Abyssun/dsh-achievements#65e1d3d1e4c3622755bbf495c5cef3b10edc7618

或直接用本 Release 的产物:

pnpm add https://github.com/Abyssun/dsh-achievements/releases/download/v0.1.4/dsh-achievements-0.1.4.tgz

装完必须重启 DSH:已装插件没有热重载。

Full Changelog: v0.1.2...v0.1.4

v0.1.2

Choose a tag to compare

@github-actions github-actions released this 11 Oct 16:36

dsh-achievements v0.1.2 —— DeepSeek Harness 个人成就插件。

安装(推荐:跟随 main)

在应用内的插件市场 / 插件管理里,来源填:

github:Abyssun/dsh-achievements

想钉死版本就用 commit:

github:Abyssun/dsh-achievements#9555f6268dfe0d5c86ab39646a0c8fdef1bdc88b

安装(本 Release 的产物)

dsh plugin --profile <profile> add \
  https://github.com/Abyssun/dsh-achievements/releases/download/v0.1.2/dsh-achievements-0.1.2.tgz

或在 profile 目录里:

pnpm add https://github.com/Abyssun/dsh-achievements/releases/download/v0.1.2/dsh-achievements-0.1.2.tgz

装完必须重启 DSH:已装插件没有热重载。

Full Changelog: https://github.com/Abyssun/dsh-achievements/commits/v0.1.2