English | 中文
dsh-clock — 省钱时钟 ⏰
主人为了省钱,让 AI 写了这个时钟:提醒他别在高峰时段(API 最贵的时候)
烧 token。高峰时时钟亮起闪烁红灯——看到红灯就收手,钱就省下来了 💸
给 DeepSeek Harness Web GUI 的浮动时钟插件:
可拖拽、可缩放,自动记住位置与大小;高峰时段(北京时间 9:00-12:00、14:00-18:00)
显示闪烁红灯,颜色与闪烁均可通过设置修改。
English (README.md)
✨ 功能
- 🕐 浮动显示当前时间(HH:MM:SS + 日期 + 星期),每秒刷新
- 🖱️ 按住时钟主体拖拽移动;拖拽右下角三角手柄放大/缩小(0.5× – 3×)
- 💾 位置与大小自动记住(浏览器 localStorage)
- 🔴 高峰时段(北京时间 9:00-12:00、14:00-18:00)亮起红灯,默认闪烁警示
- 🎨 设置项:
enabled 总开关 / color 时间颜色(任意 CSS 颜色代号)/ blinkPeak 闪烁开关
📦 安装
方式一:npm 快速安装(推荐)
dsh plugin --profile web add dsh-clock
然后重启 dsh web,刷新页面即可看到时钟。
方式二:手动安装
- 下载/克隆本仓库,或
npm pack 后解包;
- 编辑 web profile 的
package.json(~/.dsh/profiles/web/package.json):
// dependencies 加入
"dsh-clock": "^0.1.0"
// dsh.profile.bundles 末尾追加
"dsh-clock"
- 在 profile 目录执行
pnpm install,重启 dsh web。
方式三:本地目录直装(开发用)
dsh plugin --profile web add E:\工作区\dsh-clock
⚠️ 本地直装时若插件不在 profile 目录内,需在插件目录建 node_modules 链接指向
宿主包:@deepseek-ai 与 schemastery(见 README.md「解析说明」)。npm 安装版无需此步。
⚙️ 设置
GUI 设置 → 插件配置 → dsh-clock:
- 显示时钟:总开关
- 时间颜色:任意 CSS 颜色代号(
#9aa0a6 / red / rgb(255,0,0))
- 高峰时段闪烁红灯:关闭后高峰只亮不闪
⏰ 高峰时段规则
按**北京时间(UTC+8)**判断,与浏览器本地时区无关:
- 上午 9:00 – 12:00(不含 12:00)
- 下午 14:00 – 18:00(不含 18:00)
高峰时时钟右侧出现红点;blinkPeak 开启时红点以 1s 周期闪烁。
🗂️ 目录结构
| 文件 | 作用 |
|---|
cordis.patch.yml | bundle patch:把插件行插入 web profile roster |
lib/index.js | host 侧:注册 dsh-clock settings 命名空间 |
lib/client.js | 浏览器侧:浮动时钟 + 拖拽缩放 + 持久化 + 设置卡 |
🔧 开发
client bundle 是手写的 window.__ModuleLoader__.load(...) 格式(与 dsh-web-ui
全家桶插件一致),无需构建步骤;修改 lib/client.js 后刷新页面(dev)或
重启 dsh web(生产)生效。
📤 发布
npm publish # 发布到 npm
git push origin main # 推送 GitHub
📄 License
MIT