前言¶
在 DSH 里和 agent 连续协作时,上下文会随对话变长;换会话、隔几天再打开同一工作区,往往要重新梳理「做到哪了、还缺什么、哪些结论已经试过不必再试」。有人把状态散在聊天记录里,有人另开文档,但和当前工作区、当前 harness 会话的衔接并不固定。
DeepSeek Harness 的生态按「一切皆插件」组织;社区插件目录在 SkillHub 上独立维护,与 DeepSeek / 幻方无官方从属关系。下面介绍维护者 zpda88888a88888-debug 发布的 dsh-progress-secretary(SkillHub 分类:记忆):它把「当前工作区的进度」维护成工作区内一份重写式笔记本,并提供两个手动操作——记录进度与汇报进度。它不替代文件快照、回滚或会话分叉;那些分别交给检查点类插件或 DSH 自带能力。
这是什么¶
dsh-progress-secretary(README 中称「工作进度小秘书」)是一个 DSH 插件,用于在工作区内维护 .dsh/progress.md 形式的进度笔记本,并通过 /note、/brief(或 Web 输入框旁「记录进度」「汇报进度」按钮)触发 agent 重写笔记本或把笔记本内容以报告形式写进会话。笔记本只描述「此刻还活着的状态」,不堆历史;写入由 agent 完成,插件对笔记本 只读。
核心功能¶
两个操作¶
| 操作 | 命令 | Web 按钮 |
|---|---|---|
| 记录进度 | /note |
记录进度 |
| 汇报进度 | /brief |
汇报进度 |
/note:请 agent 把这段时间的对话与工作 重写 到 .dsh/progress.md。用户通常只看到一条回执;本轮结束后笔记本即为最新。不拍快照,快照不归本插件管。
/brief:从笔记本回读内容,以 Markdown 报告 形式出现在 聊天框 的卡片里(由平台渲染,而非在输入框里打印源码)。报告追加进 会话日志(派生历史),不会进入收件箱,避免只读背景的会话把笔记本里的「待办」误当成新指令。
命令结果与失败语义(摘自 README):处理成功或处理函数报错,信息在聊天框卡片上;仅当命令未被受理(不存在、被拒、派发报错)时,回执才出现在输入框按钮旁并保留到下一次操作。
职责边界¶
| 关注点 | 归属 |
|---|---|
| 进度笔记本与上述两个操作 | 本插件 |
| 工作区文件快照与回滚 | 不是本插件 — 需另装检查点类插件 |
| 会话分叉 | DSH 自带(侧栏会话右键 → 分叉会话) |
侧栏里的「归档会话」是把会话从侧栏收起;本插件的「记录进度」是重写笔记本,二者无关。本插件因此文档中不使用「归档」命名。
笔记本结构¶
默认路径:.dsh/progress.md(一个工作区一份)。建议纳入 git;版本历史由 git 保留,插件不额外备份。
推荐小节(解析器认 ## 标题,标题前内容可忽略):
# 工作进度
## 进行中
## 待办
## 生效约束
## 已验证事实
## 产出物索引
## 叙事
各节写什么、条数上限等写作约束见仓库 README;上限是给人删稿用的,插件不会因超标报错。放不下的设计决策、变更史、长笔记等应放到 CHANGELOG.md、NOTES.md 等,不占笔记本上下文。
可选配置¶
全部可选,默认值如下:
| Key | 默认 | 含义 |
|---|---|---|
notebook |
.dsh/progress.md |
笔记本路径 |
noteCommand |
note |
记录命令名(注册为 /note) |
briefCommand |
brief |
汇报命令名(注册为 /brief) |
命令名须匹配 /^[a-z][a-z0-9_-]*$/;中文仅作按钮标签。客户端侧命令名表与 host 配置不一致时,按钮可能触发不存在的命令,表现为输入框可见的准入失败。
权限与风险(安装前宜知晓)¶
插件以当前 DSH 进程权限运行;安装第三方插件前仍应自行查看源码与 MIT 许可证。
| 权限 | 说明 |
|---|---|
| 文件 | 只读 工作区内配置的笔记本路径,不写文件、不读工作区外 |
| 网络 | 无 |
| 命令 | 仅注册 /note、/brief,不执行外部进程、不调用其他插件命令 |
笔记本会进入模型上下文(/note 注入指令,/brief 追加日志)。勿把密钥、令牌、个人隐私写入 .dsh/progress.md。
安装与启用¶
前置依赖:无。 不依赖其他插件。
从 GitHub 安装(须使用 web profile):
dsh plugin --profile web add github:zpda88888a88888-debug/dsh-progress-secretary
需要可复现时,可固定到 40 位 commit:
dsh plugin --profile web add 'github:zpda88888a88888-debug/dsh-progress-secretary#<40-位-commit>'
然后重启该 profile:
dsh --profile web
装完后输入框应出现「记录进度」「汇报进度」,命令表中有 /note 与 /brief。仓库 package.json 当前版本为 0.7.4;声明兼容的 DSH 发行见仓库 README「兼容范围」(如 0.1.5-rc.3、0.1.7-rc.1、0.1.7-rc.2 等)。Node.js 要求:^22.19.0 || >=24.0.0。仅支持 web profile(dsh.client.platform = "web")。
典型用法¶
- 在一轮协作中推进任务后,点 记录进度 或输入
/note,让 agent 按笔记本结构重写.dsh/progress.md(进行中、待办、约束、已验证事实等写全量,空节写「(无)」)。 - 重新打开工作区或新开会话需要快速对齐状态时,点 汇报进度 或输入
/brief,在聊天框阅读排版后的报告。 - 需要文件级回滚时,使用你单独安装的检查点插件界面;需要分叉探索时,用 DSH 侧栏「分叉会话」。
开发本插件时,README 建议用目录软链安装以便改源码后重启即可,例如:
dsh plugin --profile web add /path/to/dsh-progress-secretary # -> link:/path/to/...
适用场景与注意¶
适合:在同一 DSH 工作区内长期与 agent 协作、希望有一份与工作区绑定的「当前状态」摘要,并用手动触发记录与汇报的场景。
不适合或需另配能力:本插件 没有预览面板、不提供回滚、不包装快照;笔记本备份策略取决于你是否用 git 或检查点插件如何配置(本插件不读检查点插件配置)。
安装前请阅读 GitHub 仓库 的 README、spec.md / spec-ui.md 与权限表;社区目录页:SkillHub · dsh-progress-secretary。
结尾¶
dsh-progress-secretary 把进度维护收敛成工作区内一份重写式笔记本和两个明确操作,与快照、分叉等能力刻意划界,减少重复造轮子。若你的痛点是「回到工作区时快速对齐现在进行到哪」,可按上文命令安装 web profile 后从 /note 与 /brief 用起。
- 目录页:https://www.skillhub.cn/plugins/zpda88888a88888-debug/dsh-progress-secretary
- GitHub:https://github.com/zpda88888a88888-debug/dsh-progress-secretary