dsh-plugin-taskflow:DSH 常驻任务清单与分段小结

前言

在 DeepSeek Harness(DSH)里跑长会话时,内置 todo 往往只是一行式展示,composer 上方的面板也难一眼看清「当前做到哪、上一轮干了什么」。Agent 明明调用了 todo_write,清单却不够醒目;回合结束后的上下文又散落在 transcript 里,回看成本高。

dsh-plugin-taskflow 面向 Web GUI,用任务清单 UI、逐项小结和每回合压缩摘要补这两块空白。下面按安装、界面行为、配置与排错说明如何启用。

这是什么

dsh-plugin-taskflow 由维护者 wk-xjd 发布,分类为工作流,在 SkillHub 目录 与 GitHub 可查到。简介概括为:液态玻璃风格任务列表、每项任务一句模型小结、每个 assistant 回合结束自动压成「一行标题 + 要点」。

本包同时是 DSH bundle:dsh plugin add 会写入 profile 的 dsh.profile.bundles 并加载 cordis.patch.yml,一般无需手工改 patch。许可证为 MIT;package.json 当前版本为 0.1.2,运行环境要求 Node ≥ 22。插件在当前 DSH 进程权限下工作,安装前建议自行核对源码与许可证。

核心功能

对话内清单卡片

每次 agent 调用 todo_write 时,插件遮蔽内置的一行式 todo 行,改成 Claude 风格清单卡片,例如「7 个任务 · 完成 6 · 待办 1」,逐项用 ✔ / ◐ / □ 标示状态,渲染在对应工具调用处。

composer 上方常驻任务列表

替换输入框上方自带的 todo 面板(同一 todo 槽位)。有任务时清单常驻显示,宽度与输入卡片对齐,并随侧栏、窗口尺寸变化。视觉为液态玻璃背景;执行中的行带彩虹描边与呼吸圆点;进度环为 SVG,列表最高约 190px,超出可滚动。

行为要点:

  • 任务完成时,宿主用当前模型为该任务写一句小结(≤60 字,依据该段工具调用与涉及文件)。
  • 仅有小结的项可点击,浮窗展示小结、起止时间、用时、期间动作与文件;无小结项显示「小结生成中…」或「无小结」。
  • 点击进度环打开右侧栏「任务流」,查看全部分段小结。
  • 回合结束仍标记为 in_progress 的任务会显示暂停态;若子 agent 仍在跑,则单独显示「子 agent 执行中」并继续计时。
  • 无任务时退化为单行胶囊,显示最近一段小结标题(≤20 字)。

分段小结(每回合)

每个 assistant 回合结束时,宿主按会话路由发起一次短请求,将本回合压缩为「一行标题 + 1–3 条要点」。结果用于胶囊标题、侧栏与插件 HTTP 路由;数据防抖写入 ~/.dsh/taskflow/<session>.json。

模型侧规范(可选)

默认向系统提示注册「任务清单规范」:先拆 todo、中文动词开头、单条约 35 词、同时仅一项 in_progress 等。另可选「复杂任务:并行拆解」,与多 subagent 并行场景配合。均可通过配置关闭。

斜杠命令 /taskflow 可立即整理最近一个尚未生成小结的回合。

安装与启用

官方 README 给出的安装方式如下(--profile web 按你的 profile 调整):

# 从 npm 安装
dsh plugin --profile web add dsh-plugin-taskflow

# 若包管理器因「新版本发布冷却期」装到了旧版,显式指定:
dsh plugin --profile web add dsh-plugin-taskflow@0.1.1

# 或直接从 GitHub 源码安装
dsh plugin --profile web add github:wk-xjd/dsh-plugin-taskflow

安装后刷新页面(桌面端可在开发者工具执行 location.reload(),或重启 App)。浏览器半部(client/client.js)改完后刷新即可;宿主半部(lib/index.js)需重启 App。本地开发可用仓库内的 install.mjs 同步到 ~/.dsh/plugins,其中 node install.mjs --rotate 用于宿主热更路径。

典型用法

位置 你会看到
对话里每次 todo_write 清单卡片与完成/待办统计
composer 上方 常驻清单与当前进度
点有小结的项 任务详情浮窗
点进度环 右侧栏全部段落小结
无任务时 单行「最新小结标题」,点开侧栏

需要手动补摘要时,在对话里输入 /taskflow。

排错时可对本地 DSH HTTP 端口探活(端口以你环境为准):

curl -s http://127.0.0.1:<port>/taskflow/health
curl -s http://127.0.0.1:<port>/taskflow/diagnostics
curl -s "http://127.0.0.1:<port>/taskflow/diagnostics?llm=1"

配置

在 patch 行的 config: 下设置,字段均可选。示例结构与 README 一致:

- insert:
    - id: dsh-plugin-taskflow
      name: '.../lib/index.js'
      config:
        enabled: true
        minToolCalls: 1
        minAssistantChars: 240
        maxOutputTokens: 320
        provider: ''
        model: ''
        includeSubagents: false

常用项含义(完整表见 GitHub README):

字段 默认 含义
enabled true false 时不调模型,仅用规则摘要
minToolCalls 1 工具调用数达到阈值才总结
minAssistantChars 240 或助手文本达到该长度
provider / model 空 空则跟随会话路由
includeSubagents false 默认不为子 agent 会话单独生成小结
taskListPolicy true 是否注入任务清单规范
parallelPolicy true 是否注入并行拆解规范

无可用 LLM 或调用失败时,宿主退回规则摘要(工具数、文件、命令等),界面会标「规则摘要」。

适用场景与注意

适合在 DSH Web 里做多步 agent 任务:需要常驻看清 todo 进度、希望每项收工有一句可点开的回顾、又要在回合之间用短 digest 减少翻 transcript。

注意:

  • 小结与分段 digest 会额外调用模型,有 token 与并发上限(如 maxConcurrent 默认 2、timeoutMs 默认 45000)。
  • 子 agent、中断或失败回合等有默认跳过策略;子 agent 小结默认关闭,避免刷屏与成本。
  • DSH 生态是「一切皆插件」;社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系。

结尾

dsh-plugin-taskflow 把任务清单从「一行 todo」拉到 composer 上方的液态玻璃面板,并在任务级与回合级两层做摘要,配合 /taskflow 与 HTTP 诊断路由便于自查。

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

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

小夜