magicOF2/dsh-schedule
Project Overview项目介绍
This is a local persistent schedule plugin for DeepSeek Harness. It adds a Schedule tab to better-sidebar, supports schedule management, recurring tasks, conversation linking and agent access. All data is stored locally for long-term review. Note UI requires dsh-better-sidebar to be installed first.
这是DeepSeek Harness的本地日程插件,会在better-sidebar添加日程侧边标签,支持日程增删改、重复日程、会话关联、Agent工具调用,数据本地持久存储可用于长期回顾。注意:使用UI需要先安装dsh-better-sidebar。
请帮我了解并安装插件:【dsh-schedule】【https://github.com/magicOF2/dsh-schedule】
Send this message to DSH in your current session. CLI install commands may not be accurate across systems — DSH will figure it out for you.把上面这条消息直接发给当前会话里的 DSH,让它帮你了解并安装。安装命令不一定准确,发给 DSH 更稳。
Or use CLI install (for developers)或使用命令行安装(适合开发者)
CLI Install命令行安装
dsh plugin --profile web add github:magicOF2/dsh-schedule
把 magicOF2/dsh-schedule 加入你的 DSH 配置(web profile)即可启用。
READMEREADME
dsh-schedule
DeepSeek Harness 本地日程插件 —— better-sidebar 侧边卡片「日程」、日程-会话链接、行内编辑与详情视图、完成打勾、重复日程与 agent 工具。数据长期保存在本地文件,支持周/月/季度/年度回顾。
A local long-term schedule plugin for DeepSeek Harness: a "Schedule" tab in the better-sidebar side card (today / week / history calendar), schedule↔conversation links, inline editing with a detail view, completion checkmarks, recurring tasks, optional auto carry-over, and agent tools. Data persists in a local file for lifetime history review.
功能 Features
- 📅 单入口(侧边卡片) — 日程作为 better-sidebar 侧边栏的一个 tab;通过侧边栏顶部「+」菜单添加/打开,也可固定到侧边卡片。不占会话标题栏,也没有独立浮窗/抽屉(保证只有一种形态,不再有加载时序导致的"有时弹窗、有时侧边栏"问题)
- 🗓️ 侧边卡片面板 — 今天(未完成/已完成)/ 本周(按天分组)/ 历史(月历 + 本周/本月/本年/连续完成统计)
- ✏️ 行内编辑 — 日程条右侧 ✎ 直接编辑名称、日期、重复、时间、备注、顺延开关;详情页内也可编辑
- 🔍 详情视图 — 点日程标题查看完整备注(自动换行不再截断)、完成统计、顺延历史日期与关联会话,支持在详情里打勾/关联/删除
- ➕ 添加表单折叠 — 面板内默认收起为「+ 添加」按钮,点开才展开表单(含备注输入),把更多空间留给日程列表
- ✅ 完成打勾 — 按天记录,重复日程每天独立;勾掉的进"已完成"区,次日自动清空当日记录但历史永久保留
- 🔁 自动顺延(可选) — 一次性日程可勾选"未完成自动顺延":到期未完成时,下次打开自动顺延到当天,顺延经过的历史日期保留在月历中,完成的当天会显示最终状态
- 🔗 日程↔会话链接 — 日程条右侧 ⊕ 一键关联当前会话;输入框右侧 🔗 弹出日程列表;点击日程标题或会话标签跳转到关联会话;一个日程可关联多个会话
- 🔁 重复日程 — 一次性 / 每天 / 每周(周一~周日多选)
- 🔄 自动刷新 — 面板打开期间每 30 秒同步一次,其他会话里 agent 改的日程也会出现
- 🤖 Agent 工具 —
dailytask_add/list/set_done/update/delete/link_session,在任意对话里说"帮我记一条日程"即可 - 💾 长期本地存储 —
~/.dsh/dsh-schedule-data.json,完成历史永不删除,自动迁移旧版数据文件;文件损坏时先备份为.corrupt-时间戳再以空数据启动,绝不覆盖原文
安装 Install
# 从源码
git clone https://github.com/magicOF2/dsh-schedule.git
cd dsh-schedule
pnpm build
pnpm test
# 安装到 web profile
dsh plugin --profile web add /path/to/dsh-schedule
# 重启 DSH
dsh web
使用 Usage
- 打开 DSH Web,点侧边栏顶部「+」→ 选择「📅 日程」(或在已打开的侧边卡片标签栏中点日程);之后可直接点侧边卡片上的 📅 tab 使用
- 点面板内「+ 添加」展开表单:标题 + 日期/重复/时间 + 备注,再点"添加";一次性日程可勾选"未完成自动顺延"
- 完成一项,点左侧圆圈打勾
- 日程条 ✎ 直接编辑;点日程标题进入详情(完整备注、完成统计、顺延历史、关联会话管理)
- 日程条 ⊕ 或详情页按钮把当前会话关联到该日程;输入框右侧 🔗 也可以;点会话标签跳转回关联会话
- "历史"页签查看月历和统计;顺延过的日程会在历史日期上显示"顺"标记
前提:日程 UI 需要 dsh-better-sidebar 已安装(日程作为它的侧边卡片 tab 注册,并在其顶部「+」菜单里出现)。未安装时只有 Host 侧 agent 工具可用。
数据 Data
- 数据文件:
~/.dsh/dsh-schedule-data.json - 结构:
items(日程定义)+done(按 日程ID → 日期 累积的完成记录) - 备份:拷贝该文件即可
开发 Develop
pnpm build # 产出 lib/(Host ESM + Client C6 bundle)
pnpm test # node --test:存储核心 + 客户端纯视图逻辑(src/client/logic.cjs)
测试跨平台可用(Windows/macOS/Linux);日期校验、顺延展开、排序与统计均有单元覆盖。
License
MIT
titanwings/dsh-automation
fakechris/dsh-track
Nwflower/dsh-weneed