🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

会话清单 manny333/dsh-checklists

DeepSeek Harness
manny33314 天前有提交已提供中文文档扫描:未发现敏感能力

让智能体自动记录并跟踪任务进度,无需反复提醒

30/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/21 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add manny333/dsh-checklists
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:需留意
是什么
dsh 原生插件 · browser
装得上吗
实装验证未通过(unknown),装前请到仓库确认最近更新与 issue
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 14 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
⚠︎ 实装验证未通过(unknown · 2026/10/22) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

发起外部网络请求
查看扫描证据(共 5 处,展示前 5 条)
  • 发起网络请求
    client/index.js:153
    fetch(url, { cache: 'no-store' }).catch(() => {})
  • 发起网络请求
    client/index.js:173
    const response = await fetch(`${STATE_ROUTE}?session=${encodeURIComponent(sessionId)}`, {
  • 发起网络请求
    client/index.js:214
    const response = await fetch(ITEM_ROUTE, {
  • 发起网络请求
    client/index.js:716
    fetch(`/dsh-checklist/workspace?session=${encodeURIComponent(sessionId)}`, { cache: 'no-store' })
  • 发起网络请求
    client/index.js:734
    fetch(`/dsh-checklist/state?session=${encodeURIComponent(targetSessionId)}`, { cache: 'no-store' })
扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-host-webserver@deepseek-ai/dsh-system-prompt@deepseek-ai/dsh-tools
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

DeepSeek Harness 的会话级清单:智能体把工作按树状跟踪,模型始终能看到一份紧凑摘要,只读侧边栏标签页同步展示。

README

由 DeepSeek 最新模型翻译生成
dsh-checklists DeepSeek Harness 的会话级清单。清单归智能体所有,模型每轮都能看到,侧边栏还有一个只读标签页同步显示。 这个插件要解决的不是「有没有清单」,而是每个会话都得把清单再口述一遍。现在清单只建一次,每轮注入模型上下文,随工作推进更新——不用再提醒。 工作原理 1. 智能体创建清单(checklist_create),可以从模板创建。 2. 每次组装提示词时,把每份清单的紧凑摘要注入进去,模型随时知道还剩什么没做。 3. 智能体做完一项就勾掉(checklist_check)。 4. 侧边栏标签页显示同一棵树,只读,每两秒刷新一次。 智能体忘了勾,你在聊天里说一声,它就会补上。
展开完整文档(README 剩余 1 节)
dsh-checklists

DeepSeek Harness 的会话级清单。清单归智能体所有,模型每轮都能看到,侧边栏还有一个只读标签页同步显示。

这个插件要解决的不是「有没有清单」,而是每个会话都得把清单再口述一遍。现在清单只建一次,每轮注入模型上下文,随工作推进更新——不用再提醒。

工作原理

1. 智能体创建清单(checklist_create),可以从模板创建。
2. 每次组装提示词时,把每份清单的紧凑摘要注入进去,模型随时知道还剩什么没做。
3. 智能体做完一项就勾掉(checklist_check)。
4. 侧边栏标签页显示同一棵树,只读,每两秒刷新一次。

智能体忘了勾,你在聊天里说一声,它就会补上。

工具

| 工具 | 作用 |
| checklist_create | 创建清单,从零开始或套用模板(release、feature、debug、review) |
| checklist_add | 往已有清单追加条目,可指定挂在某个条目下 |
| checklist_check | 把一个或多个条目设为 todo · doing · done · blocked |
| checklist_next | 返回下一个可执行的叶子条目、它的路径,以及还剩多少 |
| checklist_edit | 修改条目文字(不改状态) |
| checklist_list | 返回带 id 和状态的完整树,摘要被截断时用 |
| checklist_delete | 删除清单(按 id 或精确标题) |
| checklist_remove_item | 删除一个条目及其下所有嵌套条目 |
| checklist_rename | 重命名清单;同一会话内标题保持唯一 |
| checklist_template_save | 把清单存成模板,供以后的会话复用 |

条目就是普通字符串。每层缩进两个前导空格:

["Deploy to staging", " Smoke tests", " Rollback plan"]

安装

dsh plugin --profile web add dsh-checklists

从本地构建或 tarball 安装:

npm install
npm run build
npm pack
dsh plugin --profile dev add ./dsh-checklists-0.4.0.tgz
dsh --profile dev --dump-config # the tool-checklist row should appear

先装进测试配置档。web 和 headless 是两个不同的配置档,桌面应用的 desktop 配置档也是。

配置

在配置档的 cordis.patch.yml 里,覆盖插件条目的默认值:

- id: tool-checklist
name: dsh-checklists
config:
maxDigestLines: 12 # lines of the injected digest
maxItemsPerList: 200 # per-list item cap
pruneDays: 14 # prune untouched sessions after N days (0 = never)
storageRoot: "D:/data/dsh-checklists"
templates:
my-flow: ["Step 1", " Sub-step", "Step 2"]

数据

$DSH_HOME/storages/dsh-checklist/
├─ sessions/<sessionId>.json one document per session
└─ templates.json templates shared across sessions
写入是原子操作(临时文件 + rename),并按会话串行化。文档损坏时降级为空列表,而不是让这一轮失败。

包名是 dsh-checklists,但存储目录保留 dsh-checklist 前缀。这个路径是数据,不是身份标识:改名会让所有已保存的清单变成孤儿。

侧边栏标签页

Checklist sidebar tab

打开右侧边栏,点开 guide(+),选择 Checklist。

| 操作 | 方式 |
| 折叠 | 点击列表标题,或点击任意有子项的条目上的 ▾ |
| 自动折叠 | 出现新列表时,其他列表折叠,新列表展开 |
| 隐藏已完成 | 「Hide done」按钮,仅在有已完成项时显示 |
| 复制为 markdown | 「Copy」——粘贴到 PR 或 issue 里 |
| 编辑条目文本 | 双击文本;Enter 保存,Esc 取消 |

条目的状态只能由智能体修改:标签页无法勾选任何内容。唯一的写入路径是编辑文本,通过 POST /dsh-checklist/item 携带 expectedText 完成。如果条目在标签页读取之后发生了变化,宿主返回 409,而不是覆盖智能体的编辑。

HTTP 路由

| 路由 | 方法 | 用途 |
| /dsh-checklist/state | GET | 单个会话的状态(只读,no-store) |
| /dsh-checklist/item | POST | 编辑条目文本,带冲突保护 |
| /dsh-checklist/client-probe | GET | 客户端加载诊断 |

语言

面板跟随 harness 的 locale:locale 以 es 开头时用西班牙语,其余情况用英语。locale 服务不可用时回退到英语,而不是报错。

发给模型的文本——工具描述、渲染结果、摘要——是英语,不翻译:这些是提示词材料,不是界面文案。

设计说明

- 单一写入方。 智能体写状态;侧边栏写文本。没有乐观状态,不会出现两个标签页不一致。
- 摘要预算。 每个清单平分行数预算。把整个预算都给第一个列表,会让其余列表饿死:两个列表时第二个只显示一行,第三个干脆不出现。
- 待办优先。 截断永远不会藏起未完成的工作。
- 客户端插件通过 window.__ModuleLoader__ 加载,且只 require('react')。 不需要打包器,但静态 inject 一个永远不 resolve 的服务会让插件静默卡住——apply 永远不执行,界面上什么也不出现。标签页类型必须懒注册(ctx.inject([...]))。

验证

npm run typecheck
npm run test # vitest
npm run smoke # same checks, in-process, no child processes

npm run smoke 的存在是因为有些沙箱用 EPERM 拒绝 spawn,这时 Vitest 无法启动 worker。它针对编译后的 lib/ 覆盖模型、摘要、存储、公开状态和两个 HTTP 路由(23 项检查)。

已知限制

- 不支持重排序,不支持拖拽。
- 没有编辑历史(谁在什么时候标记了什么)。
- 仅支持文本:面板里没有「从面板添加检查项」这类操作入口。
- 文档格式是 version: 1;任何改动都必须做迁移。
- 标签页挂载期间每 2 s 轮询一次——这是有意为之,该路由是只读的。

License

MIT
预览分享卡片长什么样 ↓manny333/dsh-checklists
分享 · DeepSeek Harness Hub
manny333/dsh-checklists

让智能体自动记录并跟踪任务进度,无需反复提醒

这是你的仓库?认领条目

回到顶部