DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Plugin Stand Reminder — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
P

dsh-plugin-stand-reminder

Plugin Stand Reminder

久坐提醒 · Stand-up Reminder — 按你设定的间隔提醒你起身活动,并支持使用内置或自定义文案。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:sunnycreate/dsh-plugin-stand-reminder#d072670ef0be655f40ee6bbfda95a5b7f3a580f3
README兼容性版本

兼容性与来源证明

Plugin Stand Reminder 以 dsh-plugin-stand-reminder 发布,当前版本为 1.0.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
github
Registry 更新时间
2026/10/10

版本

1.0.0stable
2026/10/10

相关插件

正在加载相关插件…

最新版
1.0.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
web
许可证
MIT
发布源
github
GitHub
★ 0
周下载
0
最近提交
2026/10/10
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 productivity-workflow 分类下经过校验的插件。

Acp App@deepseek-ai/dsh-acp-appdsh ACP 配置文件包:基于 dsh-base 的仅限自动化的 JSON-RPC stdio 和进程生命周期管理Experimental Schedule Bundle@deepseek-ai/dsh-experimental-schedule-bundle为 Web 组合添加 Schedule、其任务页面和时间上下文的可选捆绑包Ab Ocrdsh-ab-ocr--- description: "外部 ocr 工具:逐页识别扫描的 PDF 或图像,仅在处理完最后一页后按顺序合并页面,并使用模型确定的标题级别保存为一个 Markdown 文档。" kind: "package-reference" ---Deepseek Ipptdeepseek-ipptiPolloWork PPT Studio 及其精选幻灯片模板,作为原生 DeepSeek Harness 对话视图。

README

久坐提醒 · Stand-up Reminder

一个面向久坐电脑前人群的 DeepSeek Harness 插件:按你设定的间隔提醒你站起来走动一下。 提醒文字内置了一整套(可直接用),也支持完全自定义。

A DeepSeek Harness plugin for people who sit at a desk all day: it nudges you to get up and move on an interval you choose, with built-in wording or entirely your own.


功能

间隔可设置15 / 30 / 45 / 60 / 90 / 120 分钟一键切换,也可以填 1–480 之间的任意分钟数。
提醒文字内置 19 条中/英文文案,按「走动 / 眼睛 / 姿势 / 习惯」轮播,且不会连续重复同一条。
自定义文案可添加最多 50 条自己的文字,并选择只用自己的、只用内置的、或两者混合轮播。
提醒形式右下角浮出提醒卡片(带「我起来了 / 推迟 / 先不管」按钮)+ 右下角常驻倒计时胶囊。
系统通知可选,窗口最小化或切到后台也能收到(浏览器通知,需要授权)。
提示音可选,用 Web Audio 合成,不加载任何音频文件。
自动关闭可选,提醒出现 N 秒后自动消失,不打断你的思路。
屏幕常亮可选,提醒期间请求 Screen Wake Lock,避免锁屏吞掉提醒。
暂停与统计可暂停一整轮;记录今日起身次数与推迟次数,按本地日期自动清零。
隐私纯前端,设置只存在本机浏览器的 localStorage 里,不联网、不上报。

内置提醒文字示例

中文(节选):

  • 坐满一段时间了,站起来走两步吧,哪怕只到窗边打个转。
  • 起来动一动:接杯水,顺便把肩和脖子转一圈。
  • 让眼睛下班二十秒,看看六米外的东西。
  • 肩膀是不是又耸起来了?站起来放松,再坐回去。
  • 注意坐姿:别跷腿,双脚放平。再站起来动一动。

英文(excerpt):You have been sitting a while — stand up and take a few steps. / Give your eyes twenty seconds off — look at something twenty feet away. / Shoulders creeping up again? Stand, let them drop, then sit back down.

完整文案见 src/core/messages.js。

安装

直接跟DeepSeek对话说:

帮我安装插件:https://github.com/sunnycreate/dsh-plugin-stand-reminder

Chat directly with DeepSeek and say:

Help me install the plugin: https://github.com/sunnycreate/dsh-plugin-stand-reminder

使用

  1. 打开 设置 → 久坐提醒。

  2. 选一个间隔(默认 20 分钟),保持「启用久坐提醒」打开。

  3. 需要自己的话术时,在「我的提醒文字」里添加,再选「只用我写的文案」或「内置 + 我写的」。

  4. 到点后右下角会浮出提醒卡片:

    按钮作用
    我起来了记一次起身,倒计时重新开始
    5 分钟后再说推迟,不计入起身次数
    先不管关掉这一条提醒,下一个间隔照常计时

右下角的小胶囊一直显示距离下次提醒还有多久,点击它可以跳到设置页。

项目结构

src/core/         纯逻辑,无 DOM、无框架(可被 node --test 直接测)
  messages.js     内置文案
  settings.js     设置与运行状态的结构定义、校验、持久化键
  engine.js       计时、到点触发、推迟、暂停、每日清零
src/client/       浏览器侧
  index.jsx       Slot 注册与生命周期(shell.overlay + settings.section)
  notice.js       提醒卡片与倒计时胶囊(原生 DOM,避免逐秒 React 重渲染)
  settings.jsx    设置页(React)
  locale.js       中英文案与 language store
  storage.js      localStorage 适配器(失败即降级到内存)
  notify.js       系统通知 + 提示音
  wake-lock.js    Screen Wake Lock
src/host/index.js Host 半边(有意为空:提醒完全是前端行为)
scripts/build.mjs 构建:ESM host + __ModuleLoader__ 格式的 client bundle
tests/            37 个单元/集成测试

开发

npm install        # 安装 esbuild / jsdom / react(prepare 会自动构建一次)
npm run build      # 重新生成 lib/index.js 与 client/client.js
npm test           # 40 个测试
npm run check      # test + build

测试分五层:

文件覆盖
engine.test.js调度、到点、推迟、暂停、跨天清零、存储失败降级
locale.test.js语言探测({ active } 快照)、插值、订阅、中英键对齐
bundle.test.js按宿主协议真实加载构建产物,驱动提醒卡片与倒计时
render.test.js用 jsdom + 真 React 渲染设置页,断言页面非空、无 React 报错、控件能改设置
package.test.jscordis.patch.yml 是合法 YAML、清单声明的路径都存在

client/client.js 是构建产物,但必须一起提交:DSH 按 package.json 的 exports/dsh.client 直接读取它,不会在安装时为你构建。

写这个插件时踩到的坑(给后来者)

  1. ctx.slots.register(options, component) 的第二个参数是 React 组件本身,不是返回组件的工厂。 写成 () => SettingsPage 会让宿主把 SettingsPage 当元素类型渲染, 于是它被当成无 props 组件调用,闭包里的 engine / locale 全变 undefined, 结果是设置页空白,而注册类断言全部照常通过。不需要 owner props 时直接传组件: register(options, SettingsSlot),其中 SettingsSlot = () => <SettingsPage engine={...} />。
  2. YAML 注释只能是 #。 cordis.patch.yml 里写 // 会让安装被拒绝并整包回滚。
  3. 语言快照的字段是 active,不是 language / id。 读错不会报错,只会静默变英文。
  4. 不要假设 globalThis.addEventListener 存在,用 globalThis.window?.addEventListener。
  5. 一个地址只能对应一种安装方式。 github:owner/repo 会被解析成固定 commit, push 之后必须重新安装;重复用同一个 .tgz 路径装,pnpm 会说 Already up to date 而不重新抓取。而且从 link: 切换过去之前要先删掉 node_modules 里的 junction, 否则一定 EPERM(见上面「安装」一节)。

设计要点

  • 时间可注入。 ReminderEngine 接收 now(),所以「到点触发 / 推迟 / 每日清零 / 跨天」 这些时序逻辑都能在 Node 里确定性地测,不需要等待真实时间。
  • 页面重载不会立刻弹提醒。 只有「本次会话里真正到点」的 deadline 才会触发; 刚打开的页面会从当前时刻重新计时。
  • 错过的时间点不会消失。 如果页面在后台待过了 deadline,回到前台后的第一次 tick 就会提醒。
  • 提醒文字在出现时定格。 一条提醒的措辞在它消失前不会变,避免重渲染时措辞跳变。
  • 存储失败不影响提醒。 localStorage 被禁用时自动降级为内存态,插件照常工作。
  • 提醒卡片与倒计时用原生 DOM。 逐秒刷新的倒计时如果走 React,会每秒重渲染整棵子树; 这里两种状态都在同一个 shell.overlay 条目里用原生 DOM 维护,只有设置页是 React。

兼容性

  • DSH Web / Desktop,@deepseek-ai/dsh-client-locale 可用。
  • 只使用官方 Slot:shell.overlay(新增条目,不替换任何内置 UI)与 settings.section。
  • 不注册 Host 服务、工具或后台任务;卸载插件时定时器、DOM、监听器都会一并清理。

License

MIT