dsh-gor-tasks:把待办放进 DeepSeek Harness

前言

DSH 的会话里经常聊得很热闹,最后真正要动手的几件事散在历史消息里,要么手动记到别的工具里,要么下一轮再让模型复述一遍。dsh-gor-tasks 就是为这个缺口做的:它给 DSH 左侧栏加一个「待办任务」入口,任务挂在项目下管理,也能在对话里直接增删,还能把一条助手回答一键拆成多条待办。插件由 gorwayne 维护,当前版本 1.2.0,License 是 MIT。

下面先介绍它是什么,再走一遍功能、安装和用法。

一、定位

一句话:这是 DSH 的客户端插件,把项目化的待办管理嵌进界面和对话里,数据存在本机。

它和「让助手记住别忘了某件事」的做法差别在于,任务是条目化的对象,有所属项目、状态、优先级、截止日期,可以过滤、检索、批量导入导出,而不是留在对话文本里。

二、核心功能

界面。侧栏多一行「待办任务」,行尾红圈数字是「快到期」的未完成任务数。面板是三栏:左边项目列表,中间任务列表,点任务从右侧滑出编辑抽屉。窄窗口下自动折叠。

任务字段包括标题、说明、状态、优先级、截止日期。状态四种:待办、进行中、受阻、已完成。

项目分类。任务必须挂在项目下,默认项目是「收集箱」。项目可以新建、改名、改色、删除,还可以拖拽排序,顺序即显示顺序,收集箱也能拖。删除项目前会提示连带删掉多少个任务。

过滤与检索。可以按全部任务或单个项目看,按进行中 / 全部 / 已完成筛,也能按关键字搜索。

两种视图。列表视图按状态分页签;看板视图四列分别对应四种状态,卡片可以直接拖到别的列改状态,选择会记住。

对话里管理。插件向模型暴露 9 个工具,覆盖项目和任务的增删改查,另有一个批量建任务的 task_bulk_add。

回答拆成任务。每条助手回答的操作条上(复制、点赞那排)有一个「拆成任务」按钮,可以选择用你自己配置的模型把回答拆成多条任务,也可以不调模型、按行或标点粗拆。

主题。配色全部取自 DSH 主题变量,跟随 DSH 的浅色 / 深色设置(含跟随系统)自动切换,没有单独的配置项。

数据可带走。系统设置里可以导出 JSON(项目 + 任务 + 设置),文件名带时间戳;换台机器导入即可还原。导入会覆盖当前全部数据,导入前有二次确认并显示文件里的条数。

三、安装与启用

需要先说明现状:插件还未上架应用市场。README 的说法是「应用市场:待上架后,在 DSH 的插件市场里搜『待办任务』一键安装即可」。也就是说目前没有一条开箱即用的安装命令,只能走开发态挂载。

开发态的做法是把仓库 clone 到本机,在 profile 里用符号链接挂上去,改代码后刷新页面即可生效,不用重装。

git clone git@github.com:gorwayne/dsh-gor-tasks.git

然后在 cordis.patch.yml 里写插入点:

- insert:
    - id: dsh-gor-tasks
      name: "@local/dsh-gor-tasks"

并在 profile 的 package.json 里把路径换成实际 clone 位置:

{
  "dependencies": { "@local/dsh-gor-tasks": "link:/path/to/dsh-gor-tasks" }
}

插件的包名和声明来自 package.json:@gorwayne/dsh-gor-tasks,dsh.bundle 指向 ./cordis.patch.yml,dsh.client 声明了 web 平台和三个 client 依赖注入。

有一点值得记住:Host 侧(index.js)改完要停用再启用插件,或者重启 DSH;只改 client.js 的话刷新页面就够了。

四、典型用法

进入界面后点侧栏「待办任务」,三栏界面里操作:

  • 「+ 新建任务」:标题必填,项目、状态、优先级、截止日期可选;
  • 项目行 hover 出现 ✎(改名)、✕(删除)、⋮⋮(拖动);
  • 顶栏右侧齿轮是系统设置。

不想切界面时,可以直接在对话里让助手调工具。下面这段是 README 里的示例:

帮我在「产品改版」项目下加三条任务:整理竞品截图、写改版说明、约设计评审,最后一条要在这周五前完成。
把「写改版说明」标成进行中。
列出这个项目还没做完的任务。

工具清单如下:

工具 作用
project_list / project_create / project_update / project_delete 项目的查、建、改、删
task_list / task_create / task_update / task_delete 任务的查、建、改、删
task_bulk_add 一次加多条(拆分的落库就走它)

「拆成任务」第一次点会问要不要用你自己配置的模型来拆,同意后记住这个选择,之后直接拆;拒绝则按行 / 标点粗拆,草稿可以手改,不消耗额度。拆出来的每行一条,底部选项目,保存后进入对应项目,notes 里会记下来源消息。想关掉模型拆分,去「系统设置 → 任务拆分」关掉开关,之后连询问都不会再出现。

五、系统设置

点顶栏齿轮打开,所有设置立即保存:

设置 默认 说明
使用我配置的模型拆分任务 开 关掉后只做按行粗拆,不调用任何模型
在左侧图标上显示红圈数字 开 角标数字 = 未完成且「已逾期」或「N 天内到期」的任务数
提前 N 天算「快到期」 3 范围 0–30,0 表示只看逾期和今天到期
导出 JSON — 项目、任务、设置一次性导出,文件名带时间戳
导入 JSON — 覆盖当前全部数据,导入前二次确认并显示条数

六、数据与存储

数据全部在本机,一个 JSON 文件:

$DSH_HOME/integrations/gor-tasks/tasks.json

写入采用「临时文件 + 原子重命名」并做了串行化,避免并发写坏。文件格式:

{
  "version": 1,
  "projects": [{ "id": "p_inbox", "name": "收集箱", "color": "#8b8fa3", "order": 0 }],
  "tasks": [{ "id": "t_x1", "projectId": "p_inbox", "title": "写周报", "status": "todo", "priority": "normal", "due": "2026-11-08" }],
  "settings": { "useModelSplit": true, "dueReminder": true, "dueSoonDays": 3 }
}

导出文件用 format: "dsh-gor-tasks/export" 标记,导入时认这个形状;缺项目引用的任务会自动归到收集箱。

七、适用场景与注意

适合这类人:日常用 DSH 对话推进工作,任务散落在会话里,希望就近落成条目,不愿意再开一个专门的任务工具。

需要注意几点。第一,插件以当前 DSH 进程的权限运行,Host 侧会读写本机 $DSH_HOME 下的数据并暴露 RPC 工具,安装前应先打开源码核对,确认工具和存储行为符合预期,MIT License 见仓库根目录。第二,目前还没有应用市场安装路径,得按上面的开发态方式挂载。第三,导入 JSON 会覆盖现有全部数据,只有导出备份时才能回退。

目录结构方面,Host 逻辑在 index.js(存储、RPC、9 个工具),界面在 client.js(侧栏图标、任务面板、拆分弹窗、设置),另有 locale/、icon.svg 和 README 截图目录。

小结

dsh-gor-tasks 做的事很单纯:给 DSH 补上一个条目化的待办入口,让任务有项目归属、有状态、有检索,并且可以从对话和回答里直接落库。它目前还没上架市场,要用得自己 clone 挂载,但本机 JSON 存储加上导入导出,数据不依赖这套界面。

目录页:https://www.skillhub.cn/plugins/gorwayne/dsh-gor-tasks
仓库:https://github.com/gorwayne/dsh-gor-tasks

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

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

小夜