前言¶
在 DeepSeek Harness(DSH)里长时间对话或等待 Agent 执行时,开发者往往要切到系统托盘、手机或浏览器其他标签看时间;若需要短倒计时(例如提醒休息、限时会话),又要再开一个独立计时工具。DSH 生态强调「一切皆插件」:界面能力可以通过 bundle 扩展,而不必改宿主核心。下面介绍社区插件 Time & Timer / 时间与计时器(仓库 Depar7ure/dsh-time-timer),由维护者 Depar7ure 发布,在 Harness Web 客户端内嵌可视化时钟,并附带农历、中国法定节假日与最多 15 分钟的计时器;SkillHub 目录将其归类为「联网工具」(可选 NTP 同步)。目录页与 GitHub 为独立信息来源,与 DeepSeek / 幻方无官方从属关系。
这是什么¶
dsh-time-timer(npm 包名 dsh-time-timer,当前版本 0.0.1,许可证 MIT)是面向 DeepSeek Harness Web GUI 的 Client + Host bundle:默认用浏览器系统时间,每秒刷新 24 小时制 HH:MM:SS;可选通过 Host 向 ntp.aliyun.com 校时。首页空白会话显示大号数字时钟卡片,对话进行中在标题栏显示紧凑时间条;两种形态均提供计时器入口。插件显示名:Time & Timer / 时间与计时器。
两种时钟形态¶
| 模式 | 出现时机 | 位置与尺寸 |
|---|---|---|
| StartMode | 首页 / 空白会话(Hero 页) | 对话区域左上角,256 × 64 px 横向数字时钟卡片 |
| DefaultMode | 任意对话进行时 | 标题栏左侧工具区(标题旁 actions 组)最右端,JetBrains Mono 14px |
StartMode 顶部为公历年 YY/MM/DD(如 26/10/18)及节假日 / 休息日徽标(如 国庆节·休、春节·班);中部以 HH:MM:SS 为视觉焦点(HH:MM 30px、秒 18px);底部可显示农历(如 丙午年.九月初九),默认关闭。DefaultMode 时间条带加深底色与 1px 内描边,时间与蓝色计时按钮集中在标题栏。计时按钮在 StartMode 为 64 × 24 矩形,在 DefaultMode 为 24 × 24 正方形,图标强调色 #27F5F5。
空白会话时 DefaultMode 槽位不会出现;StartMode 通过 conversation.header.leading 渲染,DefaultMode 通过 conversation.session.header.actions 渲染。
时间来源与 Host 路由¶
- 默认:采信浏览器
Date(系统时间)。 - 可选:在设置中开启「第三方时间服务器」后,Host 通过 UDP 查询
ntp.aliyun.com,Client 按偏移量校正;每 5 分钟重新同步,失败回退系统时间并在设置页显示错误。
浏览器无法直接发 NTP(UDP/123),因此 Host 注册了固定用途的路由:
GET /api/time-n-timer/ntp
该路由只查询 ntp.aliyun.com,不是通用 NTP 代理。NTP 依赖 Host 与网络可达;离线环境自动回退系统时间。
计时器¶
- 倒计时上限 15 分钟,预设:
15s / 30s / 1min / 3min / 5min / 10min / 15min;另有正向计时(最多 15:00)。 - 点击计时按钮打开对话框,可选模式与时长,支持开始 / 暂停 / 继续 / 重置。
- 到点自动弹出「时间到」并播放三声提示音;进行中按钮带状态点,StartMode 顶部徽标在计时中显示剩余时间。
- 状态保存在当前页面内存,刷新页面后重置。
农历与节假日数据¶
- 农历:内置 1900–2100 标准农历表(含闰月)。
- 节假日:内置 2025、2026 年国务院办公厅放假安排(含调休上班日);无数据年份按周末规则回退(普通周六日显示「周末·休」,调休上班日显示「班」)。2026 年数据依据国办发明电〔2025〕7 号。
插件设置¶
在 Harness 设置 → 通用 中新增「时间与计时器」相关项:
- 显示农历日期(默认关闭)
- 第三方时间服务器(默认关闭;开启后显示同步状态、偏移量与错误)
持久化键名:dsh.time-n-timer.settings.v1(浏览器 localStorage)。
安装与启用¶
官方 README 提供两种方式;没有 dsh plugin add github:... 一类的一行远程安装命令,需本地 bundle 或 Agent 安装。
方式一:克隆后本地安装
git clone https://github.com/Depar7ure/dsh-time-timer.git
在 Harness Plugin Manager → 安装本地插件(Install bundle) 中选择克隆目录,安装后刷新页面。
方式二:Harness Agent
将上述目录的绝对路径交给 Agent,说明「安装这个 bundle」;Harness 通过 install_bundle 完成安装,之后刷新页面。
要求:Web 客户端(dsh.client.platform: web);Host 使用 node:dgram,需 Node.js ≥ 18。插件以当前 DSH 进程权限运行,安装前请自行查看源码与 MIT 许可证。
典型用法¶
- 安装并刷新后,打开空白会话,在左上角查看 StartMode 时钟与节假日徽标。
- 需要农历时:设置 → 通用 开启「显示农历日期」。
- 需要与阿里云 NTP 对齐时:开启「第三方时间服务器」,在设置中查看同步状态与偏移量。
- 进入任意对话后,在标题栏右侧使用紧凑时钟与计时按钮;点击按钮选择倒计时或正向计时并开始。
本地开发自检(维护者脚本):
node scripts/check.mjs
node --check index.js
适用场景与注意¶
适合在 Harness Web 里常驻看时间、对照国内调休安排,或做 15 分钟以内的短计时,而无需离开对话界面。样式使用 Harness 主题 token(--dsw-alias-*),浅色 / 深色主题可用;宿主大版本升级后槽位尺寸可能需要重新核对。节假日目前明确覆盖 2025–2026,其他年份仅周末判定。社区目录:SkillHub - dsh-time-timer;源码与变更记录见 GitHub 仓库。