dsh-task-board:在 DSH Web GUI 里管理个人任务

前言

在 DSH 里跑智能体或写插件时,日程往往散落在笔记、聊天和脑子里:长期项目没有起止可视范围,当天的会议和习惯又和「跨周任务」混在一起。外接 SaaS 任务应用可以解决问题,但数据和模型调用都在别的系统里,和本地 Harness 环境脱节。

下面介绍社区插件 dsh-task-board(维护者 GinoXiang):它挂在 DSH Web GUI 侧边栏,用日历、日常清单和周/日时间轴把个人任务收在一处,并支持用自然语言让当前默认模型解析任务草案。插件归类为客户端,数据落在本机 JSON,不引入第三方运行时依赖。

这是什么

dsh-task-board 是 DSH Web GUI 的个人任务管理面板:双月日历、日常清单、每天工作视图(任务列表 / 具体当天 + 可拖拽 24 小时时间轴),以及 AI 任务提取。当前 npm 包版本为 1.0.1,许可证 MIT。

社区目录 SkillHub 与 DeepSeek / 幻方无官方从属关系;DSH 生态理念是「一切皆插件」,本插件是其中一条客户端扩展。

核心功能

双月日历

连续两个月网格展示。每个长期任务按起止日期画成彩色时间条;当天定时任务画成单日条(长期任务优先排布,每周最多 5 行,可点「还有 N 项」展开)。日常任务不显示在日历上。跨周自动分段;双击长期任务线条进入拖动模式(拖线身改日期、拖两端改长度)。已度过的日期段用浅灰雾面、细斜纹和白色毛玻璃描边标出。单击任一条线可查看该任务的子任务。

日常任务

每天重复的习惯清单,圆角方块勾选框(完成时绿色实心 + 白色对勾);可增删改。

每天工作(两种视图)

  1. 任务列表:周一至周日 7 列,左右翻页切换周;已过去日期背景为 #E5ECFD。只列非日常任务(定时任务与跨天长期任务),每行带完成勾选框。按住任务行可拖到本周其他日期改期(当天定时任务和单日任务可拖;多日长期任务请在日历里拖动调整范围)。
  2. 具体当天:左侧「当天日常」与「当天任务」两个清单,右侧 24 小时纵向时间轴。方块可拖动移动、拖上下边缘改起止(15 分钟吸附),双击时间轴空白处快速新建;点方块可编辑。

AI 提取

页面顶部输入一段中文安排(例如「下周一至周五完成季度报告;每天锻炼 30 分钟;今天 14:00-15:30 开例会」),点击提取后调用当前配置的默认模型解析为可编辑任务草案,确认后写入日历、日常清单或当天安排。模型不可用、超时或返回格式异常时,会降级为本地规则解析并给出提示。仅在点击「AI 提取」时调用一次,不后台自动请求;不发送文件内容,只发送输入框文本。

长期任务按天完成与子任务

长期任务出现在任务列表或具体当天时,勾选只表示「这一天做了相关工作」,记录在 doneDates,不会把整个项目标为完成;取消勾选也只影响当天。

长期任务和当天定时任务可带有序子任务;AI 提取时缩进行会归到上一行任务名下。选中日历上的任务可查看子任务,周视图显示子任务数量。子任务只能在「具体当天」页增删改,顺序固定、不支持拖动重排。

持久化与 Host 接口

改动自动保存到 <DSH_HOME>/task-board/data.json(默认 ~/.dsh/task-board/data.json);写入前做字段校验与原子重命名,读取失败时暂停自动保存以免覆盖原文件。卸载插件不会删除该文件。

Host 端提供三个本地 HTTP 接口(仅回环地址与同源 POST,请求体上限 2 MB):

  • /task-board/load
  • /task-board/save
  • /task-board/extract

客户端为 plain JS(client.js),使用 DSH Web GUI 自带的 React 与主题 token,无需单独构建。

安装与启用

插件要求 DSH >= 0.2.1-rc.2,Node >= 20。任选一种安装方式:

# 从 npm 安装(发布后可用)
dsh plugin --profile web add dsh-task-board

# 或直接从 GitHub 安装
dsh plugin --profile web add github:GinoXiang/dsh-task-board

安装后重启 DSH 或刷新 Web GUI,侧边栏会出现「任务」图标,点开即进入任务面板。

典型用法

  1. 在顶部输入框粘贴一周安排的中文描述,点击 AI 提取,在草案里改标题、日期或时间段,确认写入。
  2. 在日常任务里维护每天重复项(如锻炼、复盘),在双月日历上拖长期项目的时间条,或在任务列表里把单日任务拖到别的星期几。
  3. 切换到具体当天:勾选当天日常、在时间轴上拖动会议块或双击空白新建 15 分钟粒度的时段任务;需要拆解时在同一页维护子任务。

开发时若修改 client.js 或 index.js,在插件管理中禁用再启用该 bundle 即可让客户端半重新加载。

适用场景与注意

适合:已在用 DSH Web GUI、希望任务数据留在本机、并愿意用默认模型做一次性「口语 → 结构化任务」解析的开发者或个人用户。

注意:

  • 插件以当前 dsh 进程权限运行;安装前请自行查看源码与 MIT 许可证,确认行为符合你的环境策略。
  • 数据仅读写上述单个 JSON;AI 只处理你主动粘贴的文本,但仍需确保 DSH 里默认模型配置可信。
  • 不要用 git clone 替代官方文档中的 dsh plugin 安装流程,除非你在做插件开发并已熟悉 DSH 插件加载方式。

结尾

dsh-task-board 把日历时间条、习惯清单、周列表与日时间轴收进 DSH 侧边栏,用本地 JSON 持久化,并在模型可用时用自然语言加速录入。需要详情、截图与 Issue 时,见 SkillHub 目录页 与 GitHub 仓库。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜