DS Kanban:人、Bot 与普通 DSH 会话共用的本地看板

前言

在 DeepSeek Harness 里,人可以在界面里推进任务,模型会话可以通过工具读写状态,可选的 DS Bot 也会参与同一套工作流。若任务只记在对话里或各自维护一份列表,负责人、下一步和完成摘要很难对齐,多会话协作时还容易互相覆盖。

DS Kanban(yulong-me/ds-kanban)是社区维护的工作流类 DSH 插件,把看板数据放在本地 SQLite 中,让人、DS Bot 与普通 DSH 会话读写同一份任务卡,并保留创建者、负责人、实际操作者与来源会话。当前 0.3.0-beta.1 为 M1 测试版,面向单个 DSH 安装者及其本地会话;普通会话无需安装 DS Bot。项目只参考 Kan 的功能需求,未引入 Kan 的源码或界面。

这是什么

维护者 yulong-me,仓库 github.com/yulong-me/ds-kanban,社区目录页 skillhub.cn/plugins/yulong-me/ds-kanban。插件简介为:Human, DS Bot and ordinary-session collaborative kanban plugin for DeepSeek Harness——即面向 DSH 的人机协作看板。

数据默认落在 ~/.dsh/kanban(若设置了 DSH_HOME,配置与数据在该目录下)。API 依赖 DSH 的所有者认证,不宜将插件单独挂到无认证的 HTTP 服务上使用。

核心功能

下面介绍 README 中已列出的能力;检查清单、标签、搜索、附件、讨论、提醒、任务执行调度与多用户远程服务不在此版本范围内。

看板与任务

  • 多看板,自定义列、列排序、归档和恢复。
  • 任务字段:标题、目标、负责人、下一步、等待对象、完成摘要;支持编辑、移动、排序、归档和恢复。
  • 明确完成才改变进度;暂停、退出、空闲、重启不会自动完成;指派负责人不启动执行。

身份与权限

人、Bot、普通会话读写同一份数据。看板级角色包括查看者、协作者、管理员:查看者只读;协作者可维护别人创建的卡;管理员还可管理列、看板和成员。会话身份由 DSH 提供,工具参数不能冒充身份。安装者保留管理权;新建看板的人或会话为管理员。

数据与并发

  • SQLite 事务保存、版本冲突检查、请求去重、旧版迁移、在线备份和导出。
  • 五个工具:kanban_list、kanban_create、kanban_update、kanban_move、kanban_manage。修改时需带 baseRevision 与唯一 requestId;同一网络重试须复用原请求,冲突后读取最新内容再提交。
  • 转到完成列须提交 completion;转到等待列须填 waitingFor 与 waitingReason;从完成列重开须填 nextStep。归档卡仍占用所在列,避免删列时丢掉历史任务。

兼容要求

已验证环境:DeepSeek Harness 0.2.1-rc.5,Node 22.23.2,macOS arm64。Node 要求 >=22.13.0,使用内置 node:sqlite。DS Bot 为可选插件,已联调 0.1.4。peerDependencies 含 @deepseek-ai/cordis 与 @deepseek-ai/dsh-tools(与上述 DSH 版本线一致)。

安装与启用

测试版从 Releases 下载预构建 ds-kanban-0.3.0-beta.1.tgz,并核对同页 SHA256。下列命令将本地 tgz 加入 profile(Web 使用时把 desktop 改为 web):

dsh plugin --profile desktop add /absolute/path/ds-kanban-0.3.0-beta.1.tgz

安装器会识别包内 bundle 声明并启用插件。重启 DSH 后,在左侧打开「看板」。若采用 link: 开发安装或旧配置导致入口未出现,可检查 ~/.dsh/profiles/desktop/package.json 的 dsh.profile.bundles 是否包含 "ds-kanban",保留已有项并避免重复添加。

首次体验建议用独立的 DSH_HOME,避免直接升级日常数据;该目录不会自动复制常用 profile 的模型凭证。

典型用法

让人或 Bot 会话参与同一看板

  1. 让目标会话调用 kanban_list。它会登记真实身份,未授权时返回空看板。
  2. 在界面「成员」中选中该会话或 Bot,添加为「协作者」。
  3. 再让其读取看板、创建或修改任务;界面轮询会显示结果。

Bot 的不同对话分段及群会话共用同一 Bot 身份,变更记录另保留来源会话 ID。授权给 Bot 即该 Bot 相关会话共享此权限;撤销成员后,旧成功请求重放也不能再返回该看板内容。

备份与切换数据目录

包内 scripts/data.mjs 亦可通过 ds-kanban-data 调用。示例使用绝对路径,避免依赖 PATH:

node /path/to/ds-kanban/scripts/data.mjs backup --home "$HOME/.dsh/kanban" --out /path/to/backup.sqlite
node /path/to/ds-kanban/scripts/data.mjs export --home "$HOME/.dsh/kanban" --out /path/to/export.json
node /path/to/ds-kanban/scripts/data.mjs restore --from /path/to/backup.sqlite --to /path/to/restored-kanban

备份支持运行中的数据库;输出文件必须不存在。恢复只创建全新目录,拒绝覆盖现用数据库。切换恢复副本前应先备份、导出当前数据并退出 DSH,在 profile 的 cordis.patch.yml 中合并:

- id: kanban
  config:
    home: /absolute/path/to/restored-kanban

重启后核对卡片再决定是否使用恢复副本。此版本没有两份数据的自动合并功能。

从 v1 board.json 升级

升级前退出旧版宿主并保留完整 ~/.dsh/kanban 目录副本。首次打开时插件将 v1 board.json 导入 kanban-v2.sqlite:原始文件不修改,历史卡进入「历史看板 · 旧版导入」;不默认把历史来源会话授权为成员,需管理员重新授权。损坏或 ID 异常会中止迁移,原文件保持不变。

适用场景与注意

适合在单机 DSH 安装下,用看板统一跟踪「谁负责、下一步是什么、是否在等待、完成摘要是什么」,并让人与多个模型会话在同一份数据上协作,而不是各写各的 todo 列表。

插件以当前 DSH 进程权限运行,安装前应阅读源码与 MIT License,自行评估是否满足环境与安全要求。回退到 0.2.4 不会读取 SQLite;回退前须备份、导出 v2 数据,不要把旧界面缺卡误认为删除成功。

DeepSeek Harness 生态强调「一切皆插件」;社区目录 skillhub.cn 为独立站点,与 DeepSeek / 幻方无官方从属关系,本文介绍的是社区插件而非官方应用商店条目。

结尾

DS Kanban 把本地看板、会话级权限与乐观并发控制接到 DSH 工具链上,让人、DS Bot 与普通会话在同一张卡上协作。若要安装细节、迁移与验收说明,以仓库 README 与 VALIDATION.md 为准。

  • 目录页:https://www.skillhub.cn/plugins/yulong-me/ds-kanban
  • GitHub:https://github.com/yulong-me/ds-kanban
羽毛球分组比赛记分
小程序二维码

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

小夜