前言¶
在使用 DeepSeek Harness (DSH) 时,长会话中的任务排队、执行被打断以及会话重启是常见场景。指令发出后,如果 Agent 正在忙,或者用户临时插队,原任务的上下文容易丢失。dsh-memo-notebook 插件旨在解决这一问题,它按工作区记录未完成的任务,自动捕获排队或执行中的用户指令,并将状态持久化到磁盘,支持插队打断与一键按原状态恢复。
核心功能¶
自动捕获与状态流转
插件会自动捕获发给助手的新指令并进入备忘录。任务状态会自动流转:排队 → 进行中 → 已完成(Agent 正常结束自动标记)。支持通过 SSE 实时推送状态变化。
插队与恢复机制
当有新消息插入队列时,旧任务会被标记为「打断」,并记录其 previousStatus(原状态)。用户可以通过「恢复」按钮,将任务按原状态(排队或进行中)重新执行。
任务管理
支持划线完成(保留记录)与一键删除。勾选多条目后,可进行批量完成、删除或恢复操作。
面板交互
面板固定在侧栏之上,支持拖动与位置记忆。提供状态分类筛选(全部 / 排队 / 正在进行 / 提问 / 失败 / 打断 / 已完成)。
数据持久化
数据以 UTF-8 编码同步写入磁盘。默认路径为 ~/.dsh/memo-notebook/state。停止或重启 web 服务不会丢失数据。
安装¶
安装前需确保已安装 DeepSeek Harness (dsh) 并能访问 GitHub。
- 执行安装命令:
dsh plugin add SeanWang114514/dsh-memo-notebook --profile web
- 重启
dsh web以加载 Host 端逻辑。 - 刷新浏览器,右下角会出现 📝 图标。
使用方法¶
UI 操作
点击右下角 📝 图标打开面板。在输入框输入任务并回车即可入队。点击条目左侧圆圈可多选,随后使用顶部工具栏进行批量操作。
API 调用
也可以通过 API 添加任务或恢复任务:
# 添加任务
curl -X POST http://127.0.0.1:3080/api/memo/add -H "Content-Type: application/json" -d '{"text": "帮我写周报"}'
# 恢复任务
curl -X POST http://127.0.0.1:3080/api/memo/resume -H "Content-Type: application/json" -d '{"id": "task-id"}'
配置与存储¶
默认持久化文件位于 ~/.dsh/memo-notebook/state。插件通过同步写入确保数据安全。安装后可通过 dsh --profile web --dump-config 检查 memo-notebook 配置项。
总结¶
dsh-memo-notebook 通过持久化与状态机管理,解决了 DSH Agent 工作流中上下文丢失的问题。开发者可以直接通过插件面板或 API 管理任务,适合需要长时间运行、频繁交互的 Agent 场景。
- GitHub 仓库:https://github.com/SeanWang114514/dsh-memo-notebook
- 维护者:SeanWang114514