dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
A floating black liquid-glass schedule plugin for DeepSeek Harness (DSH): work/personal categories, time ranges, a two-lane timeline and mainland-China holidays.
一个悬浮在 DSH 窗口里的日程表插件:苹果「液态玻璃」(Liquid Glass)黑色玻璃质感,可以缩小成胶囊或小球,也可以拖拽缩放;每条日程分为工作(紫色)或个人(蓝色),并能标注时间范围,时间轴按类型分两条泳道显示。
A floating schedule plugin for DSH with an Apple Liquid Glass material in its black variant, three panel sizes, free resizing, work/personal categories, and per-entry time-range annotations.
client.js 直接由 DSH 的 Client module loader 加载。glass-notepad,包名为 dsh-plugin-glass-notepad。数据迁移说明:显示名称曾为「记事本」,包名与行 id 始终未变,因此旧数据和已安装实例都能继续使用;旧数据会自动归为「工作」类型。
14:00–15:30,跨天则补上日期如 10-07 09:00–10:00,只有开始时间就只显示开始时刻),前面带该日程的类型色圆点;第二行是日程内容(没填内容则显示「(未填写内容)」)。选取规则:正在进行中的优先,否则取开始时间最近的一条;全部完成时显示「没有未完成的日程」,并回到插件标题。小球上会亮一个类型色小圆点,悬停提示里也会写明「最近未完成 · 时间 + 内容」。读秒跟随系统时钟(每 30 秒重算),一条日程结束后会自动指向下一条。datetime-local),并显示时长徽标与状态(进行中 / 待开始 / 已结束 / 时刻 / 未标注)。徽标只显示时刻(如 13:00 → 14:00 · 1 小时),因为列表与时间轴本来就只呈现选中的那一天;跨午夜的区间会标成 23:00 → 次日 01:00,不会退回去用日期表达。倒序的区间(结束早于开始)会自动排好序。快捷按钮:现在、+1 小时、今天 09:00–18:00、清除时间。backdrop-filter: blur(30px) saturate(180%) brightness(.92)(会把背景压暗)、深色半透明分层材质、白色镜面渐变描边、顶部高光与多层黑色投影。材质固定为黑色玻璃,浅色/深色主题下都是同一种观感,因此使用插件自带的调色板(#0a0b0e 底 + 白色 7–18% 的填充/描边)而不是主题令牌;color-scheme: dark 让原生日期选择器也保持深色。尊重 prefers-reduced-motion。.agn-fixed),只有下面的日程列表会滚动 —— 列表再长,时间轴和日期选择始终可见。想临时收起时间轴可点工具条上的时钟图标。今天 · 10月7日 星期三;如果这一天是法定节假日或调休上班日,同一行的操作区还会出现一枚彩色小标签:红色 = 放假(如「国庆节」/「春节」),琥珀色 = 调休上班(如「劳动节」)。周六周日不再单独标红,星期几本身就说明了。悬停标签有数据来源提示。八月廿七,闰月带「闰」前缀,如 闰六月初一)与节气(当天正好是节气就直接显示,如 八月廿八 · 寒露);悬停该行可以看到下一个节气及其日期。数据覆盖 1900–2100 年:农历用内置位压缩月表换算,节气用逐年精确日期表(不是近似公式 —— 经典闭式公式在 1900–2100 里有 184 天会算差一天)。locale/en.json 与 locale/zh.json。语言解析是惰性 + 重试的:本插件属于 immediately 客户端半边,可能在 DSH 的 locale 服务注册之前就被激活,因此不再在 apply() 里一次性取服务(那正是"重开后偶发英文"的原因),而是每次读取都重新解析、服务未就绪时每 250ms 重试(最多约 10 秒)并按浏览器语言兜底,服务出现后立即订阅,之后切换语言照常生效。日程、类型、面板尺寸、位置、时间轴日期都保存在本机浏览器存储的 dsh-plugin-glass-notepad/state.v1 键下,节假日同步缓存存在 dsh-plugin-glass-notepad/holidays.v1。
节假日数据:插件内置了 2024 / 2025 / 2026 年的中国大陆法定节假日与调休安排(逐条照抄国务院办公厅通知,已与社区镜像 holiday-cn 逐条比对一致,共 108 条)。除此之外还会尽力联网同步:启动时以及切换年份时,从 cdn.jsdelivr.net 拉取对应年份的 JSON(6 秒超时)并缓存 30 天;拉取失败就静默沿用内置数据,不影响任何功能。除这一项节假日同步外,插件不做其它网络请求、不写会话日志、不注册工具,Host 半边是空的 apply()。
农历与节气数据:内置 1900–2100 年的位压缩农历月表(201 项)与逐年精确节气表(4824 个数字,base36)。生成与校验方式:以 lunar-javascript(MIT)的天文实现生成,再与 solarlunar(ISC)以及经典公开农历表交叉比对 —— 农历换算与参考实现在 1950–2100 的每一天(73414 天)完全一致;农历月表有 199/201 年与经典表一致(1933、2097 两年两个参考实现本身就不一致,此处采用天文实现的结果);节气表在 2020–2035 的 384 个节气上与第二个库零分歧。这两个库只用于生成与校验,插件运行时不依赖它们。
三种方式,任选其一(DSH 的 plugin_manager 工具或「设置 → 插件」安装界面都支持):
本地目录:把本仓库放到磁盘上,然后
plugin_manager install_bundle target = <本目录的绝对路径>
打包成 tgz(便于分发):
npm pack --ignore-scripts
把生成的 dsh-plugin-glass-notepad-*.tgz 交给 DSH 的插件安装界面安装。
Git 仓库地址:在插件安装界面填入本仓库地址(owner/repo 或带 #tag 的固定版本)。
安装后建议刷新一次页面;插件会出现在浮层右下角(首次为展开面板,可拖动/缩放)。
backdrop-filter(Chromium 系均可);不支持时自动退回不透明深色底。.github/workflows/ci.yml):校验 client.js 与 index.js 的语法、校验三个 JSON 清单。client.js 加载并递归渲染整棵组件树,可捕获运行时崩溃;另有节假日数据逐条比对官方通知、泳道几何、八方向缩放边界、悬停提示定位等断言)。这些脚本不属于插件包,未随仓库分发。代码以 MIT 授权。
节假日数据:内置的 2024–2026 年中国大陆法定节假日与调休安排来自国务院办公厅通知,经社区项目 NateScarlet/holiday-cn 汇总校对,仅作日期标注用途;联网同步同样读取该项目发布的 JSON。
图标 icon.svg 为本项目原创绘制。