Haoxiang-Fant/dsh-task-notice ↗★ 1
dsh-task-notice
优化设置保存机制、刷新价格目录并提供完工通知 适合需要实时掌握任务消耗、费用统计及完工系统提醒的用户。
安裝
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Haoxiang-Fant/dsh-task-notice說明文件
閱讀完整 README ↗使用
完工通知
- 每个顶层会话(非 subagent)完成一轮任务时,浏览器端收到通知帧后在 Web 界面右上角弹出 toast,并按配置经 Web Notifications API 发送 Windows 系统通知(桌面右下角横幅 + 操作中心);内容为本轮消耗(缓存输入 / 缓外输入 / 输出 / 合计)与金额。
- 目标(goal)完成时同样触发系统通知与网页弹窗,显示该目标自创建以来的总消耗。
- 代理发起权限请求或提问(等待你回答)时,也会触发同样的页内弹窗 + 系统通知提醒你处理(通过观察官方 UI 的待处理交互存储实现,不影响对话框本身)。
- 系统通知由浏览器 Web Notifications API发出:需先在插件设置页点击「授权并开启」(浏览器要求用户手势授权;GUI 需运行在 HTTPS 或 localhost 安全上下文)。开启后,Edge/Chrome 会调用 Windows Notification Platform API,把通知交给 Windows 操作中心统一管理与显示——桌面右下角弹出横幅、存入操作中心;点击通知浏览器自动聚焦回本页面。
- 发送时机可选:默认「仅页面后台时发送」(正在看本页时只显示页内弹窗,切走/最小化后才发系统通知);也可取消该选项,让每次完成都发系统通知。
- 网页弹窗自动消失(默认 15 秒,可配),也可手动关闭;页面隐藏期间弹窗挂起,回到页面后继续计时。
消耗统计
打开 设置(Settings)→ 任务通知与消耗,即可:
- 选择时间范围:24小时 / 1周 / 15天 / 1个月 / 3个月 / 6个月 / 1年 / 自定义(自定义支持起止日期时间)。
- 查看汇总卡片(总消耗、调用次数、缓存输入、缓外输入、输出、金额)。
- 查看按 Provider(Key)的表:每个 Provider 一行(显示名 + Provider ID,环境变量名作辅助),列出调用次数、缓存输入、缓外输入、输出、金额与合计;展开可看按模型明细。
- 查看按模型消耗总览:跨全部 Provider 按模型名聚合每个模型的调用次数与各类 tokens 消耗与金额——同一模型名无论出现在哪个 Provider / 提供商下都合并为一行(与价格编辑页「同一模型只有一行价格」、使用分析饼图口径一致);不同版本(不同模型名)各占一行,价格互不影响。
口径:缓存输入 =
cacheReadTokens(命中缓存);缓外输入 =inputTokens(未命中缓存);输出 =outputTokens。消耗按每次模型调用的 provider 上报 usage 记账,并按该调用实际使用的 Provider(全局模型设置路由)归集(Key 身份 = Provider ID,0.3.2;环境变量名如DEEPSEEK_API_KEY只作辅助展示)。
使用分析
在 设置 → 任务通知与消耗 页顶部点击「使用分析」导航切换到使用分析视图,分析规定时间范围内各大模型的使用资金状况(时间范围:24小时 / 1周 / 15天 / 1个月 / 3个月 / 6个月 / 1年 / 自定义,与分析页共用一套查询):
- 消耗金额展示:饼状图展示每个模型的消耗金额占比——鼠标悬停在某个饼图块上浮现该模型的具体使用情况(调用次数、缓存输入 / 缓外输入 / 输出 / 缓存写入 / 推理、金额与占比);饼状图下方用表格显示每一个 Provider(Key)的消耗额度(调用次数、tokens、金额)。
- Token Plan 回本提示:每个被设置为 Token Plan 的 Provider(Key)显示为一张独立的子卡片,卡片显示 Provider 显示名、名下每个模型的消耗金额(按当前计费周期)、是否回本(当前周期消耗金额 ≥ 订阅费)、每个 Credits 对应的 Tokens(当前周期 tokens ÷ 套餐 Credit)以及重置按钮。点「重置当前周期」把当前周期的消耗归档为上一轮、从现在开始新的周期——之前的消耗不再计入现在的回本计算,不影响消耗总额统计。0.3.4 起每个计费周期有唯一 TID(插件内部身份,不向用户显示),卡片只统计当前生效 TID,「历史」按钮可展开查阅全部已冻结周期(起止时间 / 订阅费 / tokens / 金额);检测到 402/429(Token Plan 错误码) 时卡片显示待确认横幅与临时账本(之后产生的消耗,回应前不参与回本),可点「已续费 / 没续费」回应——续费则重置周期(临时账本并入原周期冻结),未续费则仅清除待确认。
- 性价比计算排名:将所有模型的 (Provider · 模型) 全部拿出来一起排名比较(排名名 = Provider 显示名 · 模型名称),按 1 元(CNY)能兑换多少 tokens(消耗 Token 总数 ÷ 消耗金额)从高到低排序。Token Plan 额度分配使用基于 Tokens 消耗的对订阅费用的加权平均:每个模型的金额 = 订阅费 × 该模型 tokens ÷ 周期总 tokens(订阅费按各模型消耗的 tokens 占比摊薄);0.3.4 起只统计当前生效计费周期(当前 TID),不再优先用上一轮周期,周期尚无数据时标注「正在统计」并回退到展示范围的消耗按同一加权规则分配,保证所有模型都参与比较。
- 每日费用消耗表:微型日历中代表一天的正方形的填充颜色深度区分每天用量的多少(颜色越深消耗越多,悬停查看当日金额与 tokens);日历下方显示每一个日期的各模型消耗金额(Token Plan 的模型按加权平均计算,且加权平均严格限定同一 TID:订阅费 ÷ 该 TID 周期总 tokens × 当天 tokens,并标注「加权」;同一天同一 Provider 出现在不同 TID 时,当天各 TID 数据相加合并为同一 Provider 显示),每个日期的数据默认堆叠(日期头 + 该日各模型行 + 堆叠色条);429/402 待确认的消耗按模型价原值展示并标「待确认」;表格部分一次只显示最近 6 天的记录,其余记录用鼠标滚轮滚动查看。
周期口径:Token Plan 的回本 / 性价比 / 每日加权摊薄按计费周期(当前 TID)计算,不受当前选中的展示时间范围影响;饼图与 Provider 额度表按展示范围统计。TID 为插件内部周期身份,不向用户显示。
价格编辑
在 设置 → 任务通知与消耗 页顶部点击「价格编辑」导航切换到价格编辑视图:
- 选择币种(¥ / $)。
- 设置全局默认价格(每 1M tokens:缓存输入 / 缓外输入 / 输出 / 缓存写入 / 推理)——作为未收录官方价且未自定义的模型的兜底单价。
- 模型价格(跨 Provider 合并):页面列出全部 Provider 消耗记录中出现过的所有模型(0.3.2:首次启动 / 无数据时也列出 Provider 目录所含模型,可提前定价),同一模型只保留一行。每张模型卡片显示模型显示名(0.3.7:优先全局模型设置里该 Provider 下该模型的显示名,未配置则用官方目录的「厂商 + 模型名称」,悬停见原始模型 ID)与集体价格——未自定义显示官方价,勾选「自定义价格」解锁编辑;0.3.7 起勾选后可选 自定义(逐字段价)/ 倍率 方式,倍率模式输入倍率即可,实际价 = 该模型默认价格 × 倍率(默认价 = 官方价,未收录回退全局默认价),页面只读展示按当前倍率计算的实际单价。点击卡片展开 Provider ID 子卡片:「使用集体价格」开关(取消勾选编辑该 Provider 专属价,自动预填当前生效价)+ 0.3.7 新增价格倍率(默认 1,对该 Provider ID 使用此模型的最终价整体 × 倍率)。
- 添加模型:在输入框输入模型名称后点「添加模型」,可手动加入未出现在消耗记录中的模型行(同样可激活后自定义价格;查重不区分大小写)。
- Token Plan 设置已移至 设置 → Token Plan Key 管理(0.3.2):本页只编辑模型价格;保存时套餐保持现状、不会被清空。
- 峰谷计价(全局默认窗口):开关、峰时段(UTC 小时)与「仅工作日」配置;默认即 DeepSeek 官方规则(北京时间周一至周五 9:00-12:00、14:00-18:00 为峰时,2026-08-16 16:00 UTC 前按基础价)。
- 主体峰谷规则页(卡片 / 子卡片「设置」按钮进入;0.3.5 引入、0.3.7 重做):为「模型集体」或「模型 × Provider ID」配置峰谷规则——顶部为生效开关与自定义时区(UTC 偏移小时,支持 0.5 步进,默认 8 = UTC+8);每条规则含生效日(工作日 / 自定义(勾选星期)/ 每天)、高峰时段(如
1-4,6-10,按主体时区的小时)与峰时价格方式(倍率 / 自定义——自定义直接填五个峰时单价,留空字段按原价计费);规则自上而下逐条判定,首个命中调用时刻的规则生效,无命中按基础价(Provider 规则优先于集体规则,主体规则优先于官方目录内嵌峰谷档),退出本页即保存此页的一切更改;启用后对应卡片显示「峰谷」徽标与规则摘要。 - 点「保存价格」后立即生效:汇总卡片、按 Provider 表、按模型表与完工通知标题里的金额马上按新价格重算(服务端按每次调用的时刻逐条取峰谷档)。
金额口径 = 各类 tokens × 对应单价 ÷ 1M,价格按「每 1M tokens」计;改价只影响展示与通知标题,不改动原始 usage 账本。
旧账目(0.1/0.2)默认按低谷价:旧版本记录的账目没有峰谷语义,插件对无版本标记的旧条目统一取低谷价(模型未配置峰谷档时即基础价),避免旧数据被按峰时价回溯计费;0.3 起记录的消耗(账目带
ver)按每次调用的时刻取峰/谷档。
内置官方价格目录与峰谷计价
- 默认价以《主流大模型API官方价格汇总.xlsx》(2026-09)为基准:目录中表格已收录的模型一律按表格取值——「输入价格」→ 缓存未命中输入(cacheOut)、「缓存命中价格」→ 缓存命中输入(cacheIn;表格未给出的海外模型按官方缓存折扣惯例补齐:OpenAI GPT-4.1 系列 25% / GPT-5.x 系列 10%、Anthropic 0.1×、Gemini 25%)、「输出价格」→ 输出(output);区间价(如 ¥8~10)取基础起步价;表格未收录的既有官方价条目(GPT-4o / o3 / Claude 4.x / Gemini 2.5 / kimi-k2 / qwen3-max / GLM-5.3 等)保留作为补充。
- 官方价默认生效:未激活自定义的模型自动按内置目录的官方价计费(按当前币种),无需手动填写;目录命中时页面显示官方价明细与来源。
- 币种与折算:表格「国内」厂商(DeepSeek / 阿里云 / 字节跳动 / 智谱 / 月之暗面 / 百度 / 腾讯 / MiniMax / 小米 / 零一万物 / 阶跃星辰 / 百川智能 / 科大讯飞)以人民币官方价入库;「海外」厂商(OpenAI / Anthropic / Google)以美元官方价入库;缺失一侧按固定汇率 1 USD = 7.2 CNY 折算。
- 峰谷计价(DeepSeek 等):目录中 DeepSeek 模型自带峰/谷两档官方价(工作日 9:00-12:00 / 14:00-18:00 价格翻倍,峰 = 2× 谷);统计与通知金额按每次调用的时刻逐条取档计费。
- deepseek-flash 与 deepseek-v4.1-flash 同价(0.3.6):目录为 deepseek-v4.1-flash 增加
deepseek-flash别名,模型名 deepseek-flash 的调用按 deepseek-v4.1-flash 官方价计费(缓存命中 ¥0.02 / 缓外输入 ¥1 / 输出 ¥4,每 1M tokens)。 - 价格目录数据截至 2026-09,厂商可能调价;修改任意价格不会影响其他模型,历史金额随新价格即时重算。
插件配置
打开 设置 → 任务通知与消耗 页,在顶部导航切到「设置」视图即可调整:
| 字段 | 说明 | 默认 |
|---|---|---|
| 插件总开关 | 关闭后停止通知与记账 | 开 |
| 每轮任务弹窗 | 每完成一轮任务即弹窗 | 开 |
| 目标完成弹窗 | 目标(goal)完成时弹窗 | 开 |
| 权限请求提醒 | 代理请求权限时通知你处理 | 开 |
| 提问提醒 | 代理提问需要你回答时通知 | 开 |
| 弹窗时长(秒) | 弹窗自动消失秒数(3–120,滑块) | 15 |
| 浏览器系统通知 | 经 Web Notifications API 发送系统通知(需页面授权;Edge 横幅 + 操作中心) | 开 |
| 仅后台时发送 | 页面在前台时只显示页内弹窗,切到后台/最小化后才发系统通知 | 开 |
| 账本保留天数 | 消耗账本保留天数(1–3650,滑块) | 365 |
清除记录数据(0.3.1):设置页底部可清除全部 Token 消耗统计账本。为防误操作,必须依次完成:① 拖动图形验证码滑块(按住滑块拖到最右端,松手后变绿锁定);② 输入随后出现的随机 8 位英文数字验证码(区分大小写,可点「换一个」);③ 连续点击两次「确认清除」。清除后「消耗统计」「使用分析」与完工通知金额全部归零并自动刷新,价格 / 套餐 / 峰谷配置不受影响。若宿主进程尚未重启(remote 无 clearUsage),面板会提示重启 DSH。
使用分析
在 设置 → 任务通知与消耗 页顶部点击「使用分析」导航切换到使用分析视图,分析规定时间范围内各大模型的使用资金状况(时间范围:24小时 / 1周 / 15天 / 1个月 / 3个月 / 6个月 / 1年 / 自定义,与分析页共用一套查询):
- 消耗金额展示:饼状图展示每个模型的消耗金额占比——鼠标悬停在某个饼图块上浮现该模型的具体使用情况(调用次数、缓存输入 / 缓外输入 / 输出 / 缓存写入 / 推理、金额与占比);饼状图下方用表格显示每一个 Provider(Key)的消耗额度(调用次数、tokens、金额)。
- Token Plan 回本提示:每个被设置为 Token Plan 的 Provider(Key)显示为一张独立的子卡片,卡片显示 Provider 显示名、名下每个模型的消耗金额(按当前计费周期)、是否回本(当前周期消耗金额 ≥ 订阅费)、每个 Credits 对应的 Tokens(当前周期 tokens ÷ 套餐 Credit)以及重置按钮。点「重置当前周期」把当前周期的消耗归档为上一轮、从现在开始新的周期——之前的消耗不再计入现在的回本计算,不影响消耗总额统计。0.3.4 起每个计费周期有唯一 TID(插件内部身份,不向用户显示),卡片只统计当前生效 TID,「历史」按钮可展开查阅全部已冻结周期(起止时间 / 订阅费 / tokens / 金额);检测到 402/429(Token Plan 错误码) 时卡片显示待确认横幅与临时账本(之后产生的消耗,回应前不参与回本),可点「已续费 / 没续费」回应——续费则重置周期(临时账本并入原周期冻结),未续费则仅清除待确认。
- 性价比计算排名:将所有模型的 (Provider · 模型) 全部拿出来一起排名比较(排名名 = Provider 显示名 · 模型名称),按 1 元(CNY)能兑换多少 tokens(消耗 Token 总数 ÷ 消耗金额)从高到低排序。Token Plan 额度分配使用基于 Tokens 消耗的对订阅费用的加权平均:每个模型的金额 = 订阅费 × 该模型 tokens ÷ 周期总 tokens(订阅费按各模型消耗的 tokens 占比摊薄);0.3.4 起只统计当前生效计费周期(当前 TID),不再优先用上一轮周期,周期尚无数据时标注「正在统计」并回退到展示范围的消耗按同一加权规则分配,保证所有模型都参与比较。
- 每日费用消耗表:微型日历中代表一天的正方形的填充颜色深度区分每天用量的多少(颜色越深消耗越多,悬停查看当日金额与 tokens);日历下方显示每一个日期的各模型消耗金额(Token Plan 的模型按加权平均计算,且加权平均严格限定同一 TID:订阅费 ÷ 该 TID 周期总 tokens × 当天 tokens,并标注「加权」;同一天同一 Provider 出现在不同 TID 时,当天各 TID 数据相加合并为同一 Provider 显示),每个日期的数据默认堆叠(日期头 + 该日各模型行 + 堆叠色条);429/402 待确认的消耗按模型价原值展示并标「待确认」;表格部分一次只显示最近 6 天的记录,其余记录用鼠标滚轮滚动查看。
周期口径:Token Plan 的回本 / 性价比 / 每日加权摊薄按计费周期(当前 TID)计算,不受当前选中的展示时间范围影响;饼图与 Provider 额度表按展示范围统计。TID 为插件内部周期身份,不向用户显示。
插件配置
打开 设置 → 任务通知与消耗 页,在顶部导航切到「设置」视图即可调整:
| 字段 | 说明 | 默认 |
|---|---|---|
| 插件总开关 | 关闭后停止通知与记账 | 开 |
| 每轮任务弹窗 | 每完成一轮任务即弹窗 | 开 |
| 目标完成弹窗 | 目标(goal)完成时弹窗 | 开 |
| 权限请求提醒 | 代理请求权限时通知你处理 | 开 |
| 提问提醒 | 代理提问需要你回答时通知 | 开 |
| 弹窗时长(秒) | 弹窗自动消失秒数(3–120,滑块) | 15 |
| 浏览器系统通知 | 经 Web Notifications API 发送系统通知(需页面授权;Edge 横幅 + 操作中心) | 开 |
| 仅后台时发送 | 页面在前台时只显示页内弹窗,切到后台/最小化后才发系统通知 | 开 |
| 账本保留天数 | 消耗账本保留天数(1–3650,滑块) | 365 |
清除记录数据(0.3.1):设置页底部可清除全部 Token 消耗统计账本。为防误操作,必须依次完成:① 拖动图形验证码滑块(按住滑块拖到最右端,松手后变绿锁定);② 输入随后出现的随机 8 位英文数字验证码(区分大小写,可点「换一个」);③ 连续点击两次「确认清除」。清除后「消耗统计」「使用分析」与完工通知金额全部归零并自动刷新,价格 / 套餐 / 峰谷配置不受影响。若宿主进程尚未重启(remote 无 clearUsage),面板会提示重启 DSH。