@firetruck666/dsh-task-board

中文文档
1.4.62发布于 2026/11/10MITTypeScriptES Module零依赖构建来源已验证近 30 天下载 4537

Kanban board and task-list panels for the DSH web GUI: tasks run for real through DSH sessions and write their status back, with schedules, session rules and auto-cruise. Data lives on the host, so desktop and phone see one board.

原始使用文档
文档目录22 节
  1. 目录
  2. 环境要求
  3. 安装
  4. 桌面应用
  5. Web 端
  6. 三种来源
  7. 安装之后
  8. 先试着走一遍
  9. 不需要手动配置任何东西
  10. 更新
  11. 主要能力
  12. 三页一个工作台
  13. 任务看板
  14. 任务清单
  15. 自动化、多端与 AI 入口
  16. 数据保存在哪里
  17. 从源码构建
  18. 设计系统预览页
  19. 贡献指南
  20. 常见问题
  21. 命名约定
  22. 许可证

任务看板(dsh-task-board)

English | 中文

npm license Node

DeepSeek Harness 的任务看板插件。它在 Web 界面的侧边栏加一个「任务看板」入口,用五列看板管理任务;任务交给 DSH 自己的会话真实执行,状态自动回写到卡片上。

插件不修改 DSH 源码,卸载后界面恢复原状。看板数据保存在 DSH 主进程(host)一侧,电脑和手机打开同一个部署看到的是同一块板,改动经 SSE 实时同步;窄屏自动进入紧凑布局。

目录

环境要求

  • DeepSeek Harness 0.2.2-alpha.2 或更高。这是最低支持版本(本插件就是按这一版构建和测试的),不是「当前版本」:低于它的没验证过,上限不设——插件跟着 DSH 更新,升级 DSH 之后装最新版即可。加载失败时先按「常见问题」里的说明处理。
  • Web 端(命令行起的 dsh web)另需 Node.js ^22.19.0 或 >= 24.0.0,以及 pnpm 10 或更高。
  • 桌面应用不需要你另装 Node 和 pnpm:它自带这两样,包操作走它自己的运行时。

安装

先认一件事,它决定了后面所有命令:桌面端和 Web 端是两份独立的安装。

两边各有自己的 profile(~/.dsh/profiles/<名字>)。插件装在哪个 profile 里,就只有那个端 能看见它:在 Web 端装过,桌面端不会跟着有,反过来也一样。两个端的界面长得一样、安装动作也 长得一样,但各装各的。

你在用什么它用哪个 profile谁管它
桌面应用(DSH Desktop)desktop应用自己(自带运行时)
dsh web(命令行起的 Web GUI)web你,或用它的那个 profile 名

装法只有一条规则:给正在用的那个端的 profile 装。下面的命令里把 <profile> 换成上表里 对应那个词就行。

桌面应用

用应用自己的插件页——不用碰终端。

侧边栏「插件」→「添加插件」→ 填包名 @firetruck666/dsh-task-board → 选安装源 → 安装。

终端也能装,但前提是用对那个 dsh:桌面应用那份 profile 只认它自己的命令行。用 npm 装出来的 dsh 会被直接拒掉:

error: profile "desktop" is managed exclusively by the Electron application

要用终端的话,先让应用把自带的 dsh 装到系统里:菜单里的**「管理 dsh 命令…」**(就在「检查更新…」 下面)点一次即可,Windows 加到当前用户的 PATH,macOS 装到 /usr/local/bin/dsh。然后用它:

dsh plugin --profile desktop add @firetruck666/dsh-task-board

两个前提,否则命令会失败:应用至少打开过一次(profile 要由它自己创建),并且已经完全退出 (它没退出时文件被占用)。

Web 端

dsh plugin --profile web add @firetruck666/dsh-task-board

三种来源

上面两条命令都只是「往哪个 profile 装」,装什么由包名决定。包名有三种写法,选一种。

从 npm 安装

dsh plugin --profile <profile> add @firetruck666/dsh-task-board

适合日常使用。拿到的是最近一次正式发布的版本。

从 GitHub 安装

dsh plugin --profile <profile> add github:FiretrUCK666/dsh-task-board

拿到的是仓库 main 分支的最新代码。它和 npm 装出来的一样是可直接使用的安装包,不是开发环境(没有测试、没有构建工具,改不了代码)。适合想第一时间用上还没发版改动的人;稳定性取决于仓库当时的状态。

本地开发安装

把仓库下载到本地后,在这个仓库目录里执行:

pnpm install
pnpm build
dsh plugin --profile <profile> add .

这条路径用于改代码。详见下面的「从源码构建」。

本地安装是指向工作目录的链接(不是复制),所以挂载一次即可:改完代码只需 pnpm build 再重启 dsh web,不必重跑上面的安装命令。改 client 半区刷新页面即可,改 host 半区才需要重启——见「常见问题」里的「改了代码没生效」。

三种来源的区别

前两种是安装:拿到的都是可以直接使用的包,只包含发布清单里的文件(运行代码、源码、挂载声明、说明文档),差别只在版本新旧。第三种是开发:拿到的是完整仓库,能改代码、能运行测试。

从 npm从 GitHub本地
用途安装使用安装使用开发
拿到什么最近一次发布版main 最新代码你本地改动
版本特点稳定最新,可能不稳定你自己决定
更新依据npm 上的版本号仓库默认分支安装的即本地目录,无需更新

安装之后

把那个端重启一次:Web 端停掉正在运行的 dsh web 再启动它;桌面应用完全退出再打开。 只刷新页面不够——插件的 host 半区在服务端进程里加载,不重启不会加载。重启后侧边栏就会出现 「任务看板」入口。

入口和 DSH 自带的「插件」面板并排:点它,看板占用中间主区域;再点一次同一个入口、或点侧边栏里的任意会话,即可回到对话。

这个插件的开关在两处,各管各的:侧边栏「插件」→ 往下拉到「已安装」,那一行右边的开关是总开关; 或点开「任务看板」进它自己的页面,右上角那个开关做的是同一件事。关掉 = 整个插件不加载 (侧边栏入口、看板、总览、清单、后台接口一起停)。页面里「包含的组件」下面还有四行, 每行一个开关,管各自那一半(看板 / 总览 / 清单 / AI 接口)——详见「常见问题」。

先试着走一遍

装完重启之后,花两分钟就能看明白它在干什么:

  1. 点侧边栏的「任务看板」→ 按 +新建一条,随手记一件真要做的事(只填标题也行)。
  2. 在左栏点开这一条,右边的「运行配置」里选好工作区与 Agent,按 问 AI——它就地变成一张卡, 会话开始干活。
  3. 回看板:那张卡在「进行中」;跑完它自己落到「待审核」,板顶那行数字开始报数。
  4. 点开卡片读完结果,按「通过」。

不需要手动配置任何东西

装完就能用,不用改配置文件、不用手写任何声明。而且不要去改 cordis.patch.yml——插件那一行住在插件包里,安装命令只负责把这个包登记进 profile,两者一配合就装配好了;手工再补一行会造成同一个插件出现两条。

环节谁做的
把插件登记进本机 profile安装命令(往 dsh.profile.bundles 加一个包名)
插件那一行(id、包名)插件包里的 cordis.patch.yml,由 package.json 的 dsh.bundle.patch 指向,装配时自动生效
界面入口、看板舞台插件自己注册到 DSH 的官方扩展点,启动时自动完成
数据存哪自动使用 ~/.dsh/storages/dsh_task_board/ 目录,第一次运行时创建
插件显示的名字、说明、图标包里的 locale/ 与 icon.svg,DSH 直接读取
那个开关的位置插件管理页的开关写 profile 里这一行的 disabled(关掉时才会写上)

唯一必须你做的一步是重启那个端(host 半区在服务端进程里,不重启不会加载)。三种安装方式(npm、GitHub、本地)在这件事上完全一样,两个端也一样。

这个插件没有设置项,也不需要设置面板:看板的行为(任务、定时、巡航、规则)全在看板界面上直接编辑,而开与关就是上面那个开关。

卸载:

dsh plugin --profile <profile> remove @firetruck666/dsh-task-board

同样需要重启那个端。卸载不会删除你的任务数据。

更新

看板 Header 右侧有常驻的「检查更新」按钮。点一下,它回答三件事:你正在运行的是哪一份 (哪个 profile、装在哪、怎么装的)、有没有新版、该怎么更新。

它读的是正在运行的那一份自己的位置与清单,不是某个写死的名字。所以同一台机器上 Web 端 装的是本地检出、桌面端装的是 npm 时,两边各说各的,不会互相认错;最新版也是由 host 读 的——它知道这份 profile 用的哪个源(官方源、镜像源还是内网源),不会因为浏览器连不上 registry.npmjs.org 就告诉你「检查失败」。读不到时它直说读不到,不会说成「已是最新」。

安装方式「一键更新」做什么
从 npm 安装先卸载,再装 npm 上的最新版
从 GitHub 安装先卸载,再按仓库默认分支的当前代码重装
本地开发安装在仓库目录里 git pull --ff-only,再按仓库自己声明的包管理器重建 lib/

「先卸载再安装」是 DSH 自己的更新方式(HMR 开着时不允许直接覆盖已安装的包),所以按下它, 插件会短暂消失几秒。装完可能需要重启那个端;若安装失败,插件会保持未安装,按「安装」一节 里对应你那个端的做法装回来即可。任务数据在任何一步都不受影响:它住在 ~/.dsh/storages/dsh_task_board/,不在插件包里。

跑完发现版本没变时,对话框直说「没有变化」,不写成「已更新到」——那是这一次没装上新版, 不是失败。常见原因两个:安装器自己的供应链保护期(刚发布的版本会被包管理器暂时挡在解析 之外,实测发布后十几分钟内去装,拿到的还是上一版,等它过了保护期再按一次即可);以及这份 profile 里记下的版本范围把它钉住了——对话框里「安装声明」那一行就是它,卸载后重新安装会重新 解析。想知道一台机器上到底装的是哪一份、哪一版,看这三行就够了:运行中的这一份、位置、安装声明。

对话框里同时给出等价的终端命令(桌面端除外,原因见下),命令里的 profile 名就是你正在运行的那一份:

dsh plugin --profile <profile> add @firetruck666/dsh-task-board@latest
dsh plugin --profile <profile> add github:FiretrUCK666/dsh-task-board

本地开发安装则是:

git pull --ff-only && pnpm run build

桌面端:那份 profile 由应用托管,上面这条命令在它身上不成立——npm 装出来的 dsh 会拒绝 desktop 这个 profile 名,所以桌面端的对话框不给终端命令,只指向应用自己的插件页。在「插件」页里 卸载后重新添加即可更新(用应用菜单装的那个 dsh 也可以,见「安装」一节)。

装了插件市场的话,也可以在它的「已安装」标签页里点「更新」。

主要能力

三页一个工作台

侧栏有总览、任务看板、任务清单三个入口,它们共用顶上一行导航,所以你在哪一页、 另外两页各有多少东西在等你,一眼就看得见。

  • 总览:等你处理、跑完没看、今天到期、已逾期四个数字,一条流水线(五栏各几张、最旧几天 没动),最近七天的产出,以及最近发生了什么。点数字就跳到那一页。
  • 可以互通,也可以互不相干:看板卡片上「挂 N 条清单」跳到清单并只看这张卡的条目;清单一行 的卡片芯片跳回看板并打开那张卡。不点它们的时候,两页各干各的,互不影响。
  • 每一页都能单独关掉:插件详情页里一页一个开关,关掉的那页不会出现在导航里。

任务看板

五列,从左到右就是一件事的一生:待规划 → 待办 → 进行中 → 待审核 → 已完成。卡片拖着换列, 同一列里也能上下拖,指定先后。

  • 执行是真的。 详情里点「执行」,DSH 会话真的开始干活;跑完自动落到「待审核」。跑过几次、 上次成没成,卡片上写着;正在跑的卡有黄边。
  • 等你的东西会自己冒出来。 板顶一行数字:几个会话挂起等你回答、几张卡等你裁决。点开是 通知中心,动态页按日分组,说清最近发生了什么。
  • AI 在评论区里问你,你就在卡片上答。 计划待审也一样——「同意执行」直接作答,「要求修改」 把它退回输入框,不必开一趟会话。每张卡的评论区就是它的 DSH 会话:排队发、插话发都行, 图片和文件直接拖进去。
  • 引用一句话再接着问。 在会话内容里选中一段文字,旁边会浮出「引用文本」;按下它就把它 以引用行的形式放进输入框,接着写你要说的话。引用进去的是普通文字,发出去在对话里就是一段 引用块——和 DSH 会话里引用的一句话是同一种东西。
  • 会话区按「一轮」折叠:你一句话,它一段话。 中间的过程(调了哪些工具、想了一下、 注入了哪些上下文)收进一个可展开的行里,跑完只剩最后那段话。想看细节就点开那一行。 折多少、什么时候折、折起来还留哪几条回复,都跟着「设置 · 通用设置」里那三项走——不在 这里再开一套开关。
  • 侧栏里的会话或工作区,拖到某一列就成一张卡。
  • 复核页是一次执行的完整记录,直接「通过 / 打回」。
  • 多选之后改色、执行、删除一次做完。详情能存成模板,运行配置能存预设、设默认。

任务清单

有些事还没到能开工的程度,先写下来。

  • 「+新建一条」:标题在最上面,下面依次是正文、步骤、上下文备注。左列写内容,右列定属性 ——优先级、状态、标签、三个日期、挂到哪张卡。
  • 挂不挂卡由你:不挂(先放着,以后再说)、挂到已有的卡(那张卡里的内容一个字都不动)、 或新建一张卡——选新建,你会先看到这张卡要用什么跑(工作区 / Agent / 模型 / 思考程度 / 权限),它带着你看到的那一份出生,之后在卡上或这一行的详情里改。
  • 一行自己的状态是五档(待规划 / 待办 / 进行中 / 待审核 / 已完成),词与色都用看板那一套。 没挂卡时五档随你选;挂着卡时跟着那张卡走,但你自己按下的「已完成」压过卡片——一件做完 的事,不会因为卡还在跑就变回没做完。按那一枚状态芯片会跳到看板并打开它挂着的卡。
  • 「问 AI」是这一页唯一交给 AI 的一按,没挂卡的条目也能按:那张卡已经有对话就接着说进 那条对话,还没有就开一轮——由卡自己决定,你不用挑。送过去的是这一条自己的内容 (标题、标签、正文、步骤、备注,以及正文带的图片与文件),不是卡上的执行 Prompt,所以卡 自己的 Prompt 是空的也照样问得出去。
  • 筛选全在左栏:日历、按日期(日期已过 / 日期未到 / 没定日期)、按多久没动、优先级、状态、 日程、已删除。每一项都带数字,0 也写。
  • 删除有撤销;删掉的都在左栏底部「已删除」,30 天内能找回,也能彻底删除。
  • 三个日期各自独立:开始、计划、截止。只有错过截止才变红,那一行写「超期 N 天」; 计划滑了是黄的,写「落后 N 天」——承诺失守和计划推迟是两回事。
  • 三件容易漏掉的设计:日期框认人话——@明天、10月15日、2026-10-15、+3、周三 都行,读不懂时它教你怎么写,而你写下的日期一个字都不动;正文与备注的框高度是你自己拉的, 抓住整条下沿往上往下拖,拉完记住;窄屏上五列变成横向滑动,功能一个不少。

自动化、多端与 AI 入口

  • 定时跑与跑完接着跑:按时间表启动任务,或一张卡跑完自动接下一轮。
  • 给会话发指令:按时间表把一句话发进某个会话,指令可以带图片和文件,规则那一行会写明 带了几个。
  • 自动巡航:板头一颗开关,设好同时最多几件、哪些时段能跑,剩下的它自己排。
  • 数据在 host 上,电脑和手机看到的是同一块板,改动实时同步;断网也能用,连上后自动对齐。
  • 四条斜杠指令:/task 把你写的话交给当前会话的模型,由它判断进看板还是进清单; /task-continue 把看板和清单里没做完的一起列出来,问你先做哪一条;/task-status 只报 现状不动手;/task-cleanup 收拾两边——能恢复的直接删,不可撤销的一定先问你。
  • AI 读得全,才写得起。 它能把一张卡读到运行配置、排期、会话规则、挂了哪些会话这一层, 所以「给这张卡加一条规则」不需要你从屏幕上抄一个会话给它。默认只读个大概(板上有哪些卡), 要细节它会自己往下读。
  • 它说的「已受理」不是「做完了」。 回执会分清三件事:真的写进去了 / 引擎收到了还没跑完 / 排队等引擎上线。还有一种情况它会直说「没有执行」——当前这台浏览器那一版做不了这个动作。
  • 卡片上那串会话圆点,点得开。 有未读时打开那条会话,没有未读时打开这张卡的会话列表; 手机上一样点得开。
  • 键盘:A 新建 · J/K 移动 · X 多选 · 1–4 优先级 · E 改标题 · ⌘Z 撤销 · Esc 一层一层收。

数据保存在哪里

  • 看板真相:~/.dsh/storages/dsh_task_board/ 目录。documents/ 下每种数据一个文件:board.json 是任务台账、巡航、定时预设、运行配置预设与删除墓碑;items.json 是任务清单。人可读、原子写入,可以直接整目录备份;删除这个目录等于清空看板与清单。
  • 浏览器 localStorage 保存离线镜像和本地状态。两份承载数据的镜像是 dsh.taskBoard.v1(看板)与 dsh.taskBoard.items.v1(任务清单)—— 两份都要备,只备一份等于清单那份丢了。其余的键 (cruise / presets / runPresets / templates / drafts / preSync)是这个浏览器自己的状态或 一次性备份,不是另一份真相。键名以 src/client/ 里实际写下的为准;这里列的是哪些值得你 操心,不是全部键的清单。
  • 第一次连接时如果本地数据与 host 有分歧,本地副本备份到 dsh.taskBoard.preSync.v1,host 为准。
  • host 没有挂载存储后端时,看板自动退回纯 localStorage 模式。

从源码构建

前置:Node.js 22 或 24、pnpm、能访问官方 npm 源(类型和运行时 API 全部来自 @deepseek-ai/*,不需要 DSH 源码 checkout)。

git clone https://github.com/FiretrUCK666/dsh-task-board.git
cd dsh-task-board
pnpm install
pnpm build       # 产出 lib/index.js 和 lib/client.js
pnpm typecheck   # 类型检查
pnpm test        # 单元与契约测试
pnpm verify      # 独立插件静态门禁

lib/ 是构建产物,但它随仓库一起提交。原因是从 GitHub 或 npm 安装时只会复制文件,不会执行构建,仓库里没有 lib/ 的话装完就启动不了。改完源码要重新构建,并把 lib/ 和源码放在同一次提交里(CI 会检查两者是否一致)。

仓库根目录的 AGENTS.md 记录了项目的约定、架构索引与发布流程,是 AI 助手在这个仓库里工作时用的依据。

设计系统预览页

改界面时有一个现成的页面可以对照:设 DSH_TASK_BOARD_DESIGN_PREVIEW=1 再启动,侧边栏会多出一行 「设计系统」,里面把设计变量、字阶、全部按钮与 chip 档位、五个状态、全部图标、数据调色板、反馈 文法、断点表一次摆出来,并且每个标本都是真组件本身——面板上长什么样,这一页就是什么样。

DSH_TASK_BOARD_DESIGN_PREVIEW=1 pnpm dsh web   # 或在你自己的启动方式上加这个环境变量

它只在设了这个变量时注册,不设就完全不注册——不出现在侧边栏、不出现在插件页的开关里, 普通用户碰不到它。(它的代码在插件产物里,因为它与两个面板共用同一份浏览器 bundle; 让它在界面上消失靠的是两道闸:宿主只在设了这个变量时才宣告这一面,浏览器读不到宣告时不注册。)

贡献指南

欢迎提 Issue 与 Pull Request。动手前先读 CONTRIBUTING.md:开发环境、提交 PR 前要跑的检查、硬性规范都在里面。报告加载失败类问题时,附上三个信息:DeepSeek Harness 版本、本插件版本、报错原文。

常见问题

插件页面上的五个开关是什么。 侧边栏「插件」→ 已安装 → 点「任务看板」→「包含的组件」列出五行,每行一个开关:

那一行关掉之后
任务看板侧栏面板列表里没有「任务看板」,看板面板不再出现
总览侧栏面板列表里没有「总览」,工作台的第一页不再出现(看板与清单照常)
任务清单侧栏面板列表里没有「任务清单」,清单面板不再出现
AI 接口所有会话的 AI 都看不到本插件的工具、斜杠命令与系统提示——它们从未被注册,不是被拒绝
任务看板(插件本体)整个插件不加载,上面四行随之无意义

「AI 接口」这一行是装配层的开关:关掉它,插件的那几个模块根本不加载,所以没有任何一次运行 时判断可以漏掉。三个界面各自要开关,是因为它们是三个面板;而一个 npm 包只有一份浏览器产物, 所以这些行由宿主侧的模块宣告,浏览器开机时读一次。

看板上的状态词都什么意思。 它们读的是同一份推导,所以同一张卡在任何一处都是同一个答案:

你看到的词它在说什么什么时候消失
待你决断(失败时写「失败待决断」)卡在「待审核」列,有跑完但那个会话你还没看过的结果打开那个会话的评论区,或点「通过 / 打回」
等你处理 N 项N 个会话正挂起等你回答(审批 / 计划确认 / 提问)就在板内那张卡上回答——同意执行、要求修改、或者选中它给的选项;不去会话也可以
待审核 M 张M 张卡在「待审核」列且那个会话你还没看过同「待你决断」
新 N / 新留言这张卡有还没看过的新内容点开卡片即消失
待处理 NN 个会话在等你(N > 1 时)逐个回答完
N 次执行这张卡跑过几轮(历史,不是催你)不会自己消失
失败 · 已暂停自动化因上次失败而暂停在详情里重新启用

「待你决断」和「新 N」是两件事:「新」是「这张卡你没打开过」,「待你决断」是「那个会话你没 看过、也还没裁决」。取消不算「待你决断」——取消是中止,它只出现在评论线程和动态里。

装完刷新页面看不到入口。 host 半区在服务端进程里加载,必须重启 dsh web,只刷新页面不够。

入口在哪、开关在哪。 看板与清单是侧边栏里的两个面板图标,与 DSH 自带的「插件」面板并排。 这个插件的开关就在插件自己的页面上:侧边栏「插件」→ 已安装 → 点「任务看板」, 五行分别是看板、总览、清单、AI 接口与宿主半区,每行一个开关,关掉哪行哪一半就不注册。 如果你看不到入口,说明这一端还在跑旧的前端资源——刷新页面即可。

升级 DeepSeek Harness 之后插件加载失败(页面提示 Failed to load plugins)。 DeepSeek Harness 的内部接口会随版本变化,本插件需要跟着改。先做这两步:

  1. 把本插件更新到最新版,然后重启 dsh web:

    dsh plugin --profile web add @firetruck666/dsh-task-board@latest
    
  2. 仍然失败,说明本插件还没跟上你用的那个 DSH 版本。请到 Issues 提交,附上三个信息:你的 DeepSeek Harness 版本、本插件版本(在插件页的「已安装」列表里看——不是设置页,本插件没有设置项)、页面上那段报错原文。有这三样就能直接定位。

看板能打开,但多设备不同步、任务清单也一直是空的。 这是 host 半区没加载成功的表现,也是升级 DSH 之后最容易被忽略的一种:看板本身仍在页面上正常工作,但数据只留在这一个浏览器里,另一台设备看到的不是同一块板,定时与巡航也不会真正触发。任务清单在这种情况下会明说「暂时读不到 host 上的清单,正在用本机的副本」,不会假装自己一条都没有。处理方式与上一条相同——更新插件、重启 dsh web。

打开右侧栏之后看板变了样子。 这是正常的响应式行为,不是故障。DSH 的右侧栏默认占视口约 45%、最少 300px,中栏硬保 400px,所以打开它之后中间那块板本身变窄了:看板的响应式看的是自己盒子的宽度(不是窗口宽度),板盒一旦窄过它的紧凑档阈值,五列就会变成横向滑动的列轨、并出现五等分的列导航标签。把右侧栏收回去就恢复。这条规则本意就是「板盒多宽就摆多宽」,侧栏开合、分屏、手机上都成立。

改了代码没生效。 改 host 半区(src/index.ts、src/host/)需要重启 dsh web;改 client 半区刷新页面即可。两种情况都要先 pnpm build。

手机上打开位置不对,或反复开合侧栏会跳位。 这是修复过的问题。如果仍然出现,先确认服务端进程是重启过的新版本:插件在板头会显示「服务端未重启 · 点此了解」,点开可以看到当前连接的服务端进程的启动时间。如果时间明显是旧的,说明这个地址连到了另一个没重启的实例。

两端同时开着会不会重复执行定时任务。 不会。定时、巡航、接续这类行为由 host 租约仲裁,同一时刻只有一个界面在执行,另一台设备切到前台后会接管并补上期间漏掉的状态。

任务数据在哪,换电脑会丢吗。 在 ~/.dsh/storages/dsh_task_board/ 目录。换电脑时把整个目录拷过去即可;浏览器里的 localStorage 只是离线镜像。

找不到任务清单的入口。 清单是侧栏面板列表里紧跟「任务看板」的第二行——把左栏展开就能看到两行图标,点第二行打开清单, 再点一下回到会话。侧栏收成一条窄图标带时,两行挨着排在一起。

如果那一行根本没有:多半是这一端还在跑旧的前端资源,刷新页面即可;还不行就去看插件页上 「任务清单」那个开关是不是被关了(见上面「五个开关」)。清单关掉不影响看板。

切到看板面板时清单不见了。 那不是坏了,是主舞台一次只显示一个面板——它本来就是这么设计的,不是两个能同屏的东西。 想回清单,点侧栏里清单那一行;想回对话,点「返回对话」或再点一次当前那一行。

dsh plugin 报错找不到 pnpm。 先安装 pnpm(npm install -g pnpm),再重新执行安装命令。

命名约定

用途值
插件 iddsh-task-board
npm 包名@firetruck666/dsh-task-board
权限预设路由/api/dsh-task-board/permissions
看板数据路由/api/dsh-task-board/board(含 /items、/surfaces、/lease、/command、/events)
其余 host 路由/api/dsh-task-board/session-state、/update、/client-report、/attachments(收字节与按 ref 读回)
host 存储单元dsh_task_board(documents/ 下每种数据一个文件)
看板舞台 slotmain(key: dsh-task-board)
任务清单舞台 slotmain(key: dsh-task-board-items,与看板同一个座位、不同键)
总览舞台 slotmain(key: dsh-task-board-home)
设计预览舞台 slotmain(key: dsh-task-board-design,只在开发环境注册)
侧栏入口 slotsidebar.panellist(id 与各自的 main 键一致)
localStorage 键dsh.taskBoard.v1 等

插件 id 和包名是两件事:id 决定加载器行、浏览器资源路径、路由、存储单元和上面那几个扩展点;包名只是 pnpm 安装时的标识。包名带作用域不会改变 id。

本插件没有设置项,所以也没有设置路由和设置面板:插件市场里那条开关写的是 profile 行的 disabled(关掉时才写上),插件本身不声明任何设置字段。

许可证

MIT,见 LICENSE 文件。

版本与发布记录

@firetruck666/dsh-task-board 共发布 55 个版本,首次发布于 2026/09/10;过去 12 个月发布了 55 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
1.4.62latest2026/11/105 天前
1.4.532026/11/095 天前
1.4.432026/11/059 天前
1.4.302026/11/0510 天前
1.4.02026/11/0213 天前
1.3.442026/11/0213 天前

关于 @firetruck666/dsh-task-board 的常见问题

@firetruck666/dsh-task-board 是什么?

Kanban board and task-list panels for the DSH web GUI: tasks run for real through DSH sessions and write their status back, with schedules, session rules and auto-cruise. Data lives on the host, so desktop and phone see one board.

如何安装 @firetruck666/dsh-task-board?

在项目目录运行 npm install @firetruck666/dsh-task-board,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(^18.2.0)、@deepseek-ai/dsh-host-webserver(>=0.2.2-alpha.2)、@deepseek-ai/dsh-client-connection(>=0.2.2-alpha.2)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@firetruck666/dsh-task-board 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@firetruck666/dsh-task-board 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@firetruck666/dsh-task-board 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js ^22.19.0 || >=24.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@firetruck666/dsh-task-board 可以商用吗?

@firetruck666/dsh-task-board 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@firetruck666/dsh-task-board 的下载量有多少?

根据 npm 官方下载统计,@firetruck666/dsh-task-board 在 2026/10/15 – 2026/11/13 这 30 天内被下载 4,537 次,日均约 151 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@firetruck666/dsh-task-board 还在维护吗?

最新版本 1.4.62 发布于 2026/11/10(5 天前);至今共发布 55 个版本,其中过去 12 个月发布了 55 个;首次发布于 2026/09/10。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。