本地优先的随手记录:划选 DSH 对话原话存成带来源(模型、会话)的引用,或从侧栏随手记便签;记录只存本机 JSON 文件,可选同步到自建数据服务。
安装
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:Thomas-zz/dsh-luanji
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
一句话: 在 DSH 里和 AI 对话时,随手把一句话、一个念头、一张图留下来。先记住,不必先起标题、选分类。
In one line: a local-first quick-capture plugin for DeepSeek Harness. Select a sentence, save it with your own thought, find it later — no titles, no tags, no friction.

它是什么
乱记长在你和 AI 碰撞想法的地方:左侧面板一行「乱记」,点一下弹记录便签;划选对话里的原话,直接存成一条带出处的引用。所有内容默认只在本机一个 JSON 文件里,随时导出走人;想接自己的云端数据服务时,再手动配置。
- 本地优先:默认不联网、不需要账号,数据在
~/.dsh/luanji/notes.json。 - 划选即记:选中一句话,DSH 原生浮动条上直接「记录 / 引用并记录 / 引用文本」。
- 原文与想法分开存:引用保留来源(模型、对话、文本锚点),自己的想法单独编辑;展示时引用在上、想法在下。
- 会回来:原句在对话里以淡底 + 下划线标记,刷新/回到对话仍能恢复;记录可「回到对话」。
- 可选云端:配置自己的「乱记兼容」数据服务后,可手动从云端拉取 / 推送到云端(见 docs/cloud-sync.md)。
界面一览
划选对话里的原话,浮动条上直接「记录 / 引用并记录 / 引用文本」:

引用便签:原文在上、想法在下,来源(模型 · 会话)跟着走:

点侧栏「乱记」行,就近弹出速记便签,先记住、不必先起标题:

管理面板:搜索、编辑、导入导出,明暗两套主题:

入口与操作
| 入口 | 操作 |
|---|---|
| 左侧面板「乱记」 | 点整行 → 就近弹出记录便签;点行尾小按钮 → 进入乱记面板 |
| 划选对话原文 | 原生浮动条:记录 直接存;引用并记录 先写想法;引用文本 放回输入框(DSH 原行为) |
| 乱记面板 | 直接记录、图片、搜索、编辑/删除、导入导出、云端同步 |
| 快捷键 | 作用 |
|---|---|
⌘ / Ctrl + Shift + L |
打开记录便签 |
⌘ / Ctrl + Enter |
保存当前输入 |
Esc |
收起便签,保留草稿 |
⌘ / Ctrl + K |
在面板聚焦搜索 |
便签、面板、引用分别保留草稿;输入停止约 400 ms 后写入本机。一条记录最多 6 张图片(PNG/JPEG/WebP/GIF,单文件 ≤ 20 MB,保存前缩到最长边 1600,最多 20,000 字)。
安装
环境:DeepSeek Harness(DSH)桌面端 / web profile。插件是 Host + Client 两半的 bundle,Host 需要
webServer等平台服务。
方式一:命令行(推荐)
git clone https://github.com/Thomas-zz/dsh-luanji.git
# macOS 桌面端的 dsh CLI 在 app 内:
DSH="/Applications/DeepSeek Harness.app/Contents/Resources/runtime/cli/bin/dsh"
# 安装到你的 profile(link 方式,改代码即生效)
"$DSH" plugin --profile desktop add "$PWD/dsh-luanji"
然后重启 DSH 桌面端(Host 改动需要重启;client.js 改动保存后热更新)。
方式二:插件管理器
设置 → 插件 → 从本地目录安装 dsh-luanji,并确认 profile 的 dsh.profile.bundles 包含该 bundle。
数据文件
~/.dsh/luanji/notes.json # 记录 + 引用 + 草稿
~/.dsh/luanji/notes.json.bak # 上一次写入前的备份
~/.dsh/luanji/cloud-sync.json # 可选云端同步的时间/结果(不存凭据)
卸载:设置 → 插件里禁用/移除,或 "$DSH" plugin --profile <profile> remove dsh-luanji。
本地 + 云端(可选)
默认完全本地。想接自己的数据服务时,在 profile 的 cordis.patch.yml 里:
- id: dsh-luanji
name: '@dsh-external/dsh-luanji'
config:
cloud:
url: https://zjuan.club
token: '<你的长期 token>' # 或 cookie / headers
timeoutMs: 15000
配置后面板里会出现「云端 · host」和「从云端拉取 / 推到云端」两个按钮;命令行也可以用 node scripts/sync-now.mjs。端点契约、认证方式、合并规则(同 id 按 updated_at、引用不上云、删除不同步、图片标记映射)见 docs/cloud-sync.md。
数据与兼容
- v2 格式把
records(自己的内容)和quotes(原始引用 + 来源)分开,用quoteId关联;另有drafts。 - 写入先写临时文件、
fsync,再原子替换;读取损坏文件时保留原文件并报错,不会用空记录覆盖。 - 导入支持旧版文字记录与 v2 导出;导出 JSON 含图片。
- 搜索覆盖正文、引用原文、模型名和对话名,是文字/模糊匹配,不是语义搜索。
开发与验证
npm test # 32 tests:store / routes / cloud
node --check client.js
node test/dev-server.mjs 8129 # 隔离开发页(不碰真实笔记目录)
主要文件:client.js 交互与主题;host/store.js 记录数据;host/cloud.js 可选云端同步;host/routes.js 本机 API;host/search.js 搜索;host/tool.js agent 工具;test/ 测试与隔离开发页。
许可
链接
同类插件
vectorize-io/hindsight#coding-agents★ 60140
Hindsight:会学习的 Agent 长期记忆系统,自动召回/保存、知识页、深度反思与按仓库隔离的记忆银行。
volcengine/OpenViking#examples/dsh-memory-plugin★ 41884
面向 DeepSeek Harness 的 OpenViking 记忆与上下文插件:pre-step 自动召回与画像注入、会话捕获、`viking://` URI 防护,以及对接 OpenViking 服务端的 recall/write 记忆工具。
MemTensor/MemOS#memos-local-plugin★ 12339
DeepSeek Harness 本地记忆插件:分层 L1/L2/L3 记忆,自动沉淀与手动 memos_* 检索工具并存,内置记忆浏览器。
agentscope-ai/ReMe#dsh★ 3779
将 DeepSeek Harness 接入 ReMe 本地优先、自进化的个人知识库:自动把已完成的主 Agent 对话沉淀为用户掌控的 Markdown 记忆,通过 reme_search 结合 BM25、可选向量检索和 wikilink 展开搜索对话与资料,并按日整理长期记忆。
zilliztech/memsearch#MemSearch★ 2849
供 DSH 与其他编程 Agent 共享的 Markdown 记忆,支持自动捕获、步骤前上下文注入、搜索召回,以及通过审阅面板实现 memory-to-skill 自进化。
vshulcz/deja-vu#extensions/dsh★ 1472
读取本机上其他四十二个编程智能体已经写下的会话文件(Claude Code、Codex、Cursor、VS Code Copilot Chat、opencode、OpenClaw、Hermes、Kimi、Cline、Zed 等),包括安装之前的历史:提供 deja_recall、deja_session、deja_blame、deja_fix、deja_how、deja_remember 六个工具与 /deja 命令,并可选地把召回结果加入运行时上下文。本地 BM25 索引,不用大模型,不用向量嵌入,不联网(dsh plugin --profile web add dsh-deja)。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。