让智能体自动记录并跟踪任务进度,无需反复提醒
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
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 14 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
⚠︎ 实装验证未通过(unknown · 2026/10/22) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
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预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
manny333/dsh-checklists
让智能体自动记录并跟踪任务进度,无需反复提醒
相关插件 · 浏览器
智能体插件框架deepseek-ai/deepseek-harness
DeepSeek Harnessdsh是由 DeepSeek AI 开发的开源 agent harness智能体框架。
★ 270,422已汉化DSH
71.9
多设备 Agent 看板YaoApp/yao
✨ 所有 Agent 和工作区集中管理,覆盖你的每一台设备。任务看板追踪进度,桌面端、移动端、浏览器、API…
★ 8,147已汉化DSH
71.2
可扩展侧边栏工作台omdsh-dev/DSH-better-sidebar
DSH 的双工作台:原生右侧栏 + 自绘底部面板,并把 ctx.betterSidebar 服务开放给所有插件
★ 4,761已汉化DSH
71.1
浏览器自动化桥Tencent/BrowserSkill
你的 Agent。你的浏览器。连接,就能协作。
★ 9,967已汉化DSH
71
AI 小说创作工作台EthanYoQ/AI-Novel-Writer
AI 小说作家 / AI Novel Writer
★ 1,591已汉化DSH
70.7
智能体浏览器引擎platonai/Browser4
DeepSeek Harness 集成
★ 1,175已汉化DSH
70.4
这是你的仓库?认领条目