Bundle
dsh-peak-chip
DeepSeek 峰谷指示灯:会话头部一个圆点;面板两个数(本日消耗/余额),点开是详单(本地审计/本日首次观测余额/当前余额/今日充值/无法审计/误差三档告警)
- Source
- sunsun320
- stars
- 1 stars
- License
- MIT
- Updated
- Updated 13 days ago
Readme
# dsh-peak-chip(DeepSeek 峰谷指示灯) 会话头部一个**圆点**,点开是面板:**本日消耗** 与 **当前余额**。 DeepSeek 按峰谷时段定价,这个插件把"今天花了多少、余额还剩多少"摆在眼前。 ## 为什么用它:和同类插件的差别 显示余额、算今日消耗的同类插件很多。**这个插件和它们最不一样的地方,是「自修复设计」**, 分两层:**插件坏了叫 AI 按手册自己修**,**数字错了自己纠正**。 ### 一、坏了不必等人修:一键让你的 AI 读维修手册全自动修 面板详单**最底下**有一个「一键维修」大红按钮。点它,一段"维修契约"会被填进你当前会话的输入框 (**只填、不自动发送**)—— 接下来由**你正在用的这个 agent** 去读插件目录里的 `维修手册.md`, 按手册走完整套维修流程: 1. **先问你「发生了什么」**:什么时候开始的、你在面板上看到什么、之前动过什么(充值/换模型/改设置)、 你期望它是什么样 —— **不许一上来就跑测试或翻代码**; 2. **再只诊断**:把证据、根因、拟改动摆出来,你点头才动代码; 3. **动手改**:改代码、同步两个半边的价目表、该升 `RULE_VERSION` 就升; 4. **兑现维修契约(手册 §〇)**:更新文档与测试、写 `开发日志.md`、写 `故障记录/`, 最后重新封包 —— **测试不过不许封**; 5. **修不动就诚实收口**:把结论与证据写成"已知不可修"、留好出口、明确告诉你, 而不是假装修好了。 所以这不只是一个显示数字的插件,而是**一个能被你自己的 AI 就地维修的插件**: 每一轮维修都被契约要求回灌进手册与测试,下一轮更省事 —— 这是它"理论上不会彻底失效"的原因。 留下三个动作给人:**按下发送**、**回答"发生了什么"**、**点头开工** (先问症状 → 再诊断 → 后动代码)。设计如此,不是缺陷 —— 要不要动代码的决定权在你手上。 > 诚实边界:客户端半边整体挂掉时,这个按钮也不在了(同一批客户端插件会一起挂)。 > 那就走另一个入口:直接把 `维修手册.md` 的路径发给 agent。 ### 二、数字错了自己纠正,不用你清零也不用重启 - **判错的充值会自己撤销**:充值识别走「中位数 3 窗滤波 + 正台阶 + 连续窗确认」, 临时值参与显示但**不落库**;后续窗口的余额证据一旦不支持它,那一笔就自己消失。 (实测:一次误判的幻影充值,面板那行自己从数字变回了 `—`。) - **黄灯自己灭**:告警带滞回(进 `≥0.6`、出 `<0.4`,都要求连续 3 窗),水位回落后黄灯自动恢复, 不用你操作 —— 平台批量结算造成的缺口,落地后也自己回落。 - **错误不跨天遗传**:日边界「零点重锚、零携带」——昨天的错误数字不会带进今天。 - **永久态必须留出口**:连续 3 天红才转灰,而灰的语义是"计费口径已不成立", 唯一出口是规则版本变更 —— 它不会静默地永久锁死(这条是被一次真实故障打出来才补上的)。 - **环境变了也不用手工重置**:凭据每次现取(换 API key 不用重启);缺 3090 桥只降级"充值"按钮, 面板与记账照常。 ### 三、精度上的取舍:为什么不去读控制台 坦白说:**市场上有些计费插件比本插件准** —— 它们直接读官网控制台的数据, 能看到官方口径的消耗明细。本插件看不到,因为控制台不在开放平台 API 里: 本插件实测该账号下 12 个端点只有 `/user/balance` 与 `/models` 返回 200,`/user/usage` 是 404。 代价是精度,换来的是安全边界。要拿到控制台级别的数据,除非官方开放相应接口, 否则只能让插件拿着你的**网页登录态**(Cookie / Token)替你去访问控制台 —— 而这跟 API key 完全是两回事: | | API key(本插件只用这个) | 网页登录态(读控制台所必需) | |---|---|---| | 它能干什么 | 调该账号的模型、查余额 | 通常等同于"你正登录着":看账单、改账号设置、发起充值(取决于会话权限) | | 泄了怎么办 | 后台单独吊销,其余不受影响 | 吊销 = 把你所有设备登出,影响面大 | | 你能审计吗 | 行为受官方接口限制 | 插件拿它做了什么,你只能靠信任 | 本插件的取舍是:**宁可用"官方余额差分 + 本地 token 审计"这个精度差一点的口径, 也只用你在 dsh 设置里自己配的那个 API key**(插件不存 key),不碰登录态。 精度代价也没藏着:面板上专有两行 —— 「**无法审计**」(同账号别的客户端花的,正常现象)与「**误差**」(本机多算才可疑,三档告警)。 宁可把不确定摆出来,也不给一个看着精确的假数字。 ### 四、维修不依赖 GitHub,也不依赖下载源码 这是它敢叫"自修复"的底层原因:**整个仓库就在本地**。 从 Release 包安装的人,手上已经具备维修所需的一切 —— 完整源码(宿主与客户端两个半边)、 这份维修手册、六套测试、以及打包需要的 `package.json` 与 `cordis.patch.yml`, 全都在那个 `.tgz` 里。 所以维修流程**不需要登录 GitHub、也不需要去下载源码**:agent 直接读本地的代码与手册、 就地改、跑本地测试、再打一个包。**GitHub 在这里只是"发布渠道",不是"维修入口"** —— 用户就算永远登不上 GitHub,插件也照样能修。 只要你的 agent 还能跑(它本来就需要模型 API),修它就不需要额外的网络条件或账号: 换机器、换 profile、账号失效,都不影响修它。这在手机上尤其重要 —— 而这一切的前提,是维修手册与测试**跟着包走**,不是躺在某个仓库里等人去拉。 > 第三方插件,**非 DeepSeek 官方产品**,与 DeepSeek 官方无隶属关系。 > 面板标题里的鲸鱼标记为 DeepSeek 商标(取自 dsh 自带的 `dsh-web-frontend/dist/favicon.svg`), > 仅用于指称本插件所读取的服务。 ## 安装 从 Release 附件安装(安装器不执行任何构建脚本,本插件是零构建的): ```sh dsha-plugin import dsh-peak-chip-4.1.8.tgz ``` 装完**重启 dsh web**,并在浏览器里刷新页面。 - 发布包:<https://github.com/sunsun320/dsh-peak-chip/releases/download/v4.1.8/dsh-peak-chip-4.1.8.tgz> ## 它做什么 - **会话头部一个圆点**(指示灯); - **面板两个数**:本日消耗 / 当前余额; - **详单**:本日首次观测余额、当前余额、今日充值识别、本地审计值、"无法审计"差额、误差三档告警。 ## 记账口径(一句话) 本地按本机 token 折算的 `L`,与按余额变化推算的 `S = max(0, V + T)` (`V` = 当日首次余额 − 当前余额)各算一遍;差额按方向拆成 `O = max(0, S − L)`(面板上的"无法审计":同账号别的客户端花的,正常)与 `E = max(0, L − S)`(误差:本机多算才可疑)。充值靠余额台阶检测 (中位数滤波 + 连续窗确认),判定权只有宿主一处。 详见 [`计费算法说明.md`](计费算法说明.md)。 ## 接触面(权限与数据) - **读**:`$DSH_HOME/.bridge_token`(仅用于走 DSHA 桥)。 - **连**:`api.deepseek.com`(余额查询;凭据用 dsh 设置里已有的 DeepSeek API key, 插件自己不存 key);`127.0.0.1:3090`(DSHA 桥,**只用于"充值"按钮**)。 - **写**:只写 settings 命名空间 `dsh-peak-chip`(余额、今日消耗、充值识别结果、调试窗口、自身路径)。 - **不向任何第三方发送数据,无遥测**,不上传对话、不含设备标识。 - **缺桥只降级"充值"按钮**,面板与记账不受影响。 - 原生依赖:无。`lib/client.js` 是预构建单文件 → **安装器不需要执行 build/prepare 脚本**。 ## 边界(明确不做) - 不代替官方计费:所有数字是**本地审计 + 余额变化推算**,误差会显式显示出来; - 不改模型路由、不改定价参数、不自动充值; - 电脑端(Windows)未适配:剩下的未知只有两条 —— 那边没有 3090 桥、以及休眠/唤醒行为。 ## 环境与验证 - 环境:**DSHA 0.1.5-rc2 / dsh 0.1.5-rc.2**,arm64,Android 手机 WebView(mobile 变体)。 - 自带测试**六套 + `sync` 全绿**:`v4-alert` / `v4-client` / `v4-drift` / `v4-preview` / `v4-scenarios` / `v4-other-client` + `sync`。 (`v4-other-client` 里依赖本机真实账本的两段带标定日守卫,非标定日自动跳过并打印实测量级。) - 代码内不写死 `DSH_HOME`(`resolveDshHome()` + `import.meta.url` 自定位), 并有守卫测试 `tests/v4-drift.test.mjs` 阻止回归。 ## 文档 | 文件 | 内容 | |---|---| | [`声明.md`](声明.md) | 作者、入口、接触面、边界 | | [`依赖.md`](依赖.md) | 依赖、缺失时的真实行为、已知环境差异 | | [`计费算法说明.md`](计费算法说明.md) | 口径、参数与阈值、三档告警 | | [`维修手册.md`](维修手册.md) | 排障流程 | | [`开发日志.md`](开发日志.md) | 版本演进与决策 | | [`故障记录/`](故障记录/) | 两次真实故障的取证(**数值已脱敏**) | ## 许可证 [MIT](LICENSE) © 2026 deepseekV4.1Flash
Install
dsh plugin --profile web add github:sunsun320/dsh-peak-chip
Profile: web
With the hub plugin installed, ask your agent to install it by name — it resolves the same plan shown here.
dsh plugin --profile web add github:stvlynn/dsh.fish#path:packages/dsh-plugin-hub
install dsh-peak-chip from the hub
- This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.