dsh-notepad:DSH Web 常驻记事本

在 DeepSeek Harness (DSH) 中开发智能体时,开发者经常需要在不同的会话间保持上下文,或临时记录思路。直接在聊天框中记录不仅容易打断流式输出,且难以管理。dsh-notepad 插件通过嵌入 Web GUI,提供了一个常驻的记事本窗口,解决了环境割裂与上下文丢失的问题。

这是一个由 43456-awa 维护的客户端插件,核心价值在于提供“双作用域”的持久化笔记系统,并打通了 Agent 工具链,使其成为智能体可访问的本地知识库。

核心功能

双作用域与持久化

插件提供两种作用域模式:
* 全局页:所有会话共享内容。
* 本会话隔离页:内容仅当前会话可见。
两者可切换或分屏同看。

输入内容自动保存至 ~/.dsh/notepad/notes.md(UTF-8 BOM、原子写、revision 乐观锁)。当保存失败时,系统会自动重试;若刷新页面时检测到未保存内容,支持一键恢复。

同步与历史

采用 SSE 实时推送 + 轮询兜底的机制确保同步可靠性。每次保存前,系统会自动存档 20 份历史快照,可通过 /api/notepad/history 接口检索或回溯。

Agent 工具集成

插件暴露了三个工具接口,Agent 可直接调用:
* notepad_read:读取笔记内容。
* notepad_write:写入笔记内容(支持 append 按行去重、可选时间戳)。
* notepad_search:跨作用域搜索笔记。

界面交互

  • 窗口可拖动到任意位置、可锁定固定、宽度可调,窄屏时自动收起。
  • 支持 Markdown 预览(勾选框可点击)。
  • 纯客户端样式,跟随 DSH 的明暗主题。
  • 快捷键:Ctrl+Enter 立即保存,Esc 收起。

安装与启用

使用官方命令安装:

dsh plugin --profile web add dsh-notepad

安装完成后,重启 dsh web 并刷新页面,记事本面板将出现在界面右侧。

典型用法与开发

常规使用

重启并刷新页面后,即可在右侧面板进行笔记记录。若需卸载,使用:

dsh plugin --profile web remove dsh-notepad

(注:卸载后便签文件默认保留在本地)。

本地开发

若需修改源码,源码必须放置在 ~/.dsh/profiles/ 树内。使用 link: 安装方式可以确保源码路径被正确解析,从而访问 profiles/node_modules 中宿主自带的依赖:

# <yourProfileDir> 为 ~/.dsh/profiles/ 下的实际路径
dsh plugin --profile web add link:<yourProfileDir>/dsh-notepad

注意事项

  1. 源码位置:源码必须放在 ~/.dsh/profiles/ 树内。若放在树外,将无法访问宿主的 profiles/node_modules 中的 @deepseek-ai/* 依赖。
  2. 冲突处理:当并发保存导致版本冲突时,接口将返回 409 状态码。

参考资料

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

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

小夜