yanghx-dsh-quick-notes: DSH Desktop Quick Notes, Daily Archiving to Local Markdown

前言

开发智能体时经常需要顺手记几条东西:待办、调试结论、留给下一次会话的线索。手边开着很多窗口,专门为一条笔记切到编辑器不划算;写到对话里又容易被刷走。yanghx-dsh-quick-notes(npm 包名 @yanghx/dsh-quick-notes,GitHub 仓库 YangYhx/yanghx-dsh-quick-notes,维护者 YangYhx)解决的是这一件事:在 DeepSeek Harness(DSH)桌面端按一个快捷键,随手记一笔,内容按天落到本地 Markdown 文件里。

插件属于 DSH 生态里的社区作品,分类标签是「记忆」。目录页收录于独立站点 SkillHub(社区目录,与 DeepSeek 无官方从属关系)。

这是什么

一句话定位:DSH 的笔记插件,提供速记浮层、侧栏面板,把笔记按天归档到本地 Markdown 文件。

解决的问题:

  1. 速记入口要够快,正在输入其他内容时也能触发
  2. 笔记要落在普通文本文件里,不锁在插件私有格式
  3. 能按目录(笔记本)分开放,切换方便

设计取向:所有内容都是本地 .md 文件,插件不做云同步,也不引入额外依赖。宿主半部纯 Node 内置模块,浏览器半部样式只用主题 token。

核心功能

三个入口:

  • 速记浮层:⌘⇧N(Windows / Linux 用 Ctrl+Shift+N),任意页面可用,包括正在输入时
  • 侧栏面板:左侧栏「随手记」图标,可以看时间线、搜索、编辑、删除、切换笔记本、管理笔记本
  • 文件本身:笔记就是磁盘上的 Markdown,可以直接用 Finder 或编辑器打开当天文件

写入规则:

  1. 一天一个文件,文件名 YYYY-MM-DD.md
  2. 每条笔记带时间,新条目用 - HH:MM 内容 的形式追加
  3. 多行内容用两个空格缩进续行,不会被拆成两条

笔记本(保存目录):

  • 每个笔记本 = 一个名字 + 一个目录,面板顶部下拉切换,一次只看一个笔记本
  • 速记浮层和面板速记框永远写入当前选中的笔记本
  • 默认笔记本是 ~/Documents/随手记
  • 设置抽屉里可以添加笔记本(起名字 + 选文件夹)、设为当前、重命名、移除
  • 移除只解除关联,不删除文件;至少要保留一个笔记本
  • 换笔记本不会搬文件,旧目录内容原地不动

安装与启用

插件市场收录后,在桌面端插件市场搜索 quick-notes 或 随手记,一键安装。

也可以直接装包。走包安装需要在 profile 里手动接线:

npm i @yanghx/dsh-quick-notes

接线步骤与卸载相反:

  1. 在 ~/.dsh/profiles/desktop/package.json 的 dsh.profile.bundles 里加入 @yanghx/dsh-quick-notes
  2. 装好后重启 DeepSeek Harness

安装前先看这两点:

{
  "engines": { "node": ">=20" },
  "license": "MIT",
  "version": "0.1.0"
}

这是资料里的原文字段:要求 Node 20 及以上,许可证 MIT,当前版本 0.1.0。插件以当前 DSH 进程的权限运行,装包方式会改动 profile 配置,建议先看一遍源码再装。

典型用法

速记一条:

  1. 任意页面按 ⌘⇧N,浮层弹出
  2. 输入内容,⏎ 保存,⇧⏎ 换行,esc 关闭
  3. 保存后侧栏面板列表立即多一条

浮层弹出时正在输入其他内容也不冲突,这是它相对「切到编辑器写文件」的主要优势。

编辑已有笔记:

  1. 侧栏面板里 hover 一条笔记,出现复制、编辑、删除操作
  2. 编辑是行内改:⌘⏎ 保存,esc 取消
  3. 行内编辑只改正文,原有时间戳保持不变

列表默认每条预览 3 行,超出部分点「展开全文」。

打开底层文件查看当天的完整内容:

# 2026-11-05 星期三

- 10:25 先把方案定下来
- 11:02 多行的一条
  第二行

配置与落盘位置:

  • 配置文件:~/.dsh/quick-notes/config.json,格式 {"vaults": {"名字": "/绝对路径"}, "active": "名字"}
  • 旧的单数形式 {"vault": "/路径"} 会自动迁移成 {"vaults": {"默认": "/路径"}, "active": "默认"}
  • 任一目录不可写时,保存被整体拒绝,配置保持不变

适用场景与注意

适合:

  1. 在 DSH 桌面端高频记短内容的开发、调试场景
  2. 希望笔记直接是本地 Markdown、能被编辑器或 git 管理的用途
  3. 需要按项目或主题分目录存放笔记的人

不适合:

  1. 需要云同步或跨设备一致性的场景,插件不做同步
  2. 需要系统级全局热键的场景。Electron 主进程的 globalShortcut 插件碰不到,本插件的快捷键是应用内快捷键

性能与一致性边界:

  • 默认只加载最近 60 天、最多 400 个文件,更早的点「加载更早」按需翻
  • 写入只在单个进程内保证按日期串行,不做跨进程文件锁。多开进程同时写同一目录,仍可能互相影响

卸载(笔记文件不会被删):

  1. 从 ~/.dsh/profiles/desktop/package.json 的 dsh.profile.bundles 里删掉 @yanghx/dsh-quick-notes
  2. 删掉 ~/.dsh/profiles/desktop/node_modules/@yanghx/dsh-quick-notes
  3. 重启 DeepSeek Harness

开发与验证:源码结构是 index.js(宿主半部,/api/quick-notes 前缀路由 + 文件读写 + 配置,纯 Node 内置模块零依赖)、client.js(浏览器半部,侧栏面板、速记浮层、设置抽屉)、cordis.patch.yml(把宿主半部插进插件树,id quick-notes)。跑宿主端全链路测试:

node dev/smoke.mjs   # 临时目录,不碰真实数据

结尾

这个插件的价值在于把「随手记」和「按天归档到 Markdown」这两件事一贯到底:入口快,落盘是普通文本,目录可换。适合作为 DSH 桌面端的本地记忆层使用。

插件目录页:https://www.skillhub.cn/plugins/YangYhx/yanghx-dsh-quick-notes
GitHub:https://github.com/YangYhx/yanghx-dsh-quick-notes
npm:https://www.npmjs.com/package/@yanghx/dsh-quick-notes

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

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

Xiaoye