omdsh-dev/dsh-daily-progress

Plugin插件 Native原生 ⭐ 2 BSD-3-Clause Productivity & Tasks效率与任务Data & Analysis数据与分析

Project Overview项目介绍

This repository is a native plugin built exclusively for DeepSeek Harness (DSH), designed to add a daily progress tracking and achievement system to the DSH Web interface. It follows a dual-half architecture, with a host half that handles persistent storage of daily plans, calculates progress metrics, and exposes private loopback-only HTTP routes. The client half adds a thermometer widget to the conversation input dock, a two-column plan modal, and a 9PM browser reminder for daily progress check-ins. To install it, add the package to your DSH profile’s dependencies, or use the dsh plugin install command, then add an entry to cordis.patch.yml and restart DSH Web to activate it.

The plugin tracks three core metrics for your daily plans: overall completion rate, consecutive completion streak, and weekly completion rate. A streak increment is added only when you complete 100% of your plans for the day, and an incomplete day will not reset your existing streak, it will only pause further accumulation. Weekly completion rate starts counting from Monday, only includes plans up to the current day, and does not count future days that have not yet arrived. All dates are based on the user’s local calendar date reported by the client to the host, and any uncompleted items from the previous day are automatically carried over to the current day for continued tracking.

For developers who want to modify or contribute to this plugin, the standard workflow starts with running npm install to pull all required dependencies. Next, you can run npm run typecheck to check TypeScript types, npm test to run existing unit tests for metrics and calendar logic, and npm run build to compile the source code into the output lib folder. To test the full end-to-end workflow locally, you can run npm run probe, which requires creating symbolic links to three local DSH runtime packages in your node_modules directory. This plugin is released under the permissive BSD-3-Clause open source license, and it is designed only for personal single-device use, with no built-in protection against anti-tampering or backdating.

omdsh-dev/dsh-daily-progress 是专为 DeepSeek Harness (DSH) 开发的原生 Web 插件,实现了每日计划进度追踪与成就统计功能。它采用双半架构,分为 host 端和 client 端:host 端负责数据持久化存储、指标计算和私有 HTTP 路由处理,client 端负责前端交互与定时提醒。该插件归类为生产力工具,采用 BSD-3-Clause 许可证开源发布,适配 DSH Web 客户端使用。

它支持计算完成率、连续打卡 streak 和周完成率三类指标,其中 streak 规则为当日完成全部计划才累计,未完成也不会中断历史 streak 只会暂停累计;周完成率以周一为起点统计,仅计算截至当日已完成的计划比例。用户可以添加、编辑、删除、切换每日计划的完成状态,未完成的昨日计划会自动带入今日,也支持手动清空今日计划。它面向需要每日规划并追踪进度的 DSH 用户,帮助养成持续完成计划的习惯。

安装该插件需要在 DSH profile 的 package.json 中添加依赖,或通过 dsh plugin install 命令安装,之后在 cordis.patch.yml 中添加对应配置项,重启 DSH Web 即可使用。开发阶段需要先安装 npm 依赖,再执行类型检查、单元测试和构建命令,验证全链路功能需要软链本机 DSH 运行时包。已知该插件不处理防回溯、防篡改需求,仅适用于单机个人日常计划追踪场景。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 warning1 项注意
  • Only 2 stars - very few users, little community feedback星标只有 2,几乎没人在用,遇到问题缺少社区反馈
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add github:omdsh-dev/dsh-daily-progress

把 omdsh-dev/dsh-daily-progress 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-daily-progress

Author / Maintainer: @Zacklinkk

每日进度成就系统(DSH Web 插件,双半架构):

  • host 半(src/ → lib/index.js):daily_progress 存储域(每日计划持久化于宿主 storage-domain 的 json 后端)+ 完成率 / streak / 周率指标 + 自有 HTTP 路由(/daily-progress/state、/daily-progress/mutate,loopback-only)。
  • client 半(P1 起,src/client/ → lib/client.js):conversation.input.dock 温度计 widget + 两栏计划面板(Modal)+ 21:00 浏览器提醒。

已确认口径

  • 存储:storage-domain + json 后端(记录键 <scope>:<date>,V1 scope=default,按用户隔离预留)。
  • streak:达成日 = 当日有 ≥1 条计划且完成率 100%;今天未达成不中断历史 streak(只暂停累计)。
  • 周完成率:本周(周一为起点)截至今天的条目 done/total;未来日不参与。
  • 日期一律是用户的本地日历日(YYYY-MM-DD 字符串,由 client 随请求携带);历史日锁定只读;跨日惰性 rollover(昨天未完成项自动 carry,clearToday 后不重携)。

开发

npm install
npm run typecheck   # tsc --noEmit
npm test            # node:test 单测(metrics/calendar)
npm run build       # tsc 产出 lib/
npm run probe       # 活体验证:真实 @deepseek-ai 运行时包 + json 后端全链路

probe 依赖本机 DSH 运行时包解析:把 node_modules/@deepseek-ai/ 下三个包软链到 ${DSH_PROFILE:-~/.dsh/profiles}/node_modules/@deepseek-ai/{dsh-storage,dsh-storage-json,dsh-storage-domain}。 生产环境由宿主组合在运行时解析这些包,无需随包发布。

安装(DSH profile)

  1. 在 profile 的 package.json dependencies 加入本包(或 dsh plugin install 渠道);
  2. profile 的 cordis.patch.yml 加一行 { id: daily-progress, name: dsh-daily-progress }(本包 dsh.bundle.patch 指向的 cordis.patch.yml 已含此 insert);
  3. 重启 DSH Web;client 半由 dsh.client manifest 自动装配。

路由契约(host)

  • GET /daily-progress/state?localDate=YYYY-MM-DD&tz=IANA → Snapshot
  • POST /daily-progress/mutate {localDate, tz, op, payload} → {ok:true, snapshot} | {ok:false, code, message}
    • ops:toggleItem{itemId}(仅当天)、addItem{target:'today'|'tomorrow', text}、removeItem、editItemText、setTomorrow{items}、clearToday
  • 所有路由仅接受 loopback Host;写操作落盘后广播 domain/changed(进程内)。

已知边界

  • 「今天」以 client 上报的 localDate 为准(host 不知道用户时区);单机个人工具语义下可接受,防回溯/防篡改不在威胁模型内。
  • 数据通道为插件自有同源路由 + 轮询/乐观更新(外部插件无法扩展核心 /api RPC 表或转发事件 allowlist)。
← 上一个 Prev dsh-plugin-evaluation-standards 下一个 Next dsh-action-parity →