havingautism/dsh-notebooks

Project Overview项目介绍

dsh-notebooks is a native plugin built exclusively for DeepSeek Harness (DSH) that brings Codemini-style persistent quick note-taking to the DSH environment. It uses SQLite for persistent storage, exposes custom model tools for the LLM to interact with notes, and adds a dedicated global quick notes workspace that can be opened from the DSH sidebar. To install the plugin, you can run the DSH CLI command dsh plugin --profile web add github:havingautism/dsh-notebooks then start DSH with dsh web to activate it. It shares an SQLite database with the deepresearch plugin by default, using a separate domain to avoid conflicts, and will automatically migrate old notebook data on first run.

Once installed, you can access your notebook collection from the sidebar or by navigating to the #notes route in DSH. You can browse existing notes in grid or list view, with support for searching, filtering, and sorting notes by different criteria. You can create new notes that mix multiple content types, including handwritten text, web links, and plain text or Markdown files. When you add a web link as a source, the plugin will automatically scrape the content and regenerate summaries if the source content changes. You can also @mention a note in chat to ask follow-up questions with the note content injected as context.

For web scraping, the plugin prioritizes using Jina Reader to fetch content, and only falls back to DSH's built-in web fetch tool if Jina Reader fails or returns empty content. It does not enable the web_fetch tool in regular chat, which is disabled by default in DSH to reduce the risk of SSRF attacks. There are several known limitations: browser uploads only support UTF-8 plain text and Markdown, full-text search is not available, and interrupted summary generation tasks will not resume automatically when DSH restarts. By using the web scraping feature, you agree to the terms of service and acknowledge the remaining security risks.

这是一款专为 DeepSeek Harness 开发的原生插件,为 DSH 带来了 Codemini 风格的持久化随手记功能。它采用 SQLite 存储方案,提供配套模型工具、生成的 notebooks 远程命名空间,以及可通过侧边栏打开的全局「随手记」工作区。用户可通过 DSH 命令行直接安装,执行 dsh plugin --profile web add github:havingautism/dsh-notebooks 后启动 DSH 即可使用。

用户可以在 #notes 资料库中以网格或列表视图浏览笔记,支持搜索、筛选和排序操作。可创建混合来源笔记,内容支持手写输入、网页链接、TXT/Markdown 文档,还能自动抓取未读网页,来源变更后会重新生成总结和产物。插件支持在对话中用 @ 引用笔记追问,点击消息气泡的笔记徽章可快速跳转对应笔记页面。

网页抓取默认优先使用 Jina Reader,失败后才回退到内置获取工具,不会开启默认关闭的聊天端 web_fetch 工具以降低 SSRF 安全风险。目前已知限制包括仅支持 UTF-8 纯文本和 Markdown 浏览器上传,不支持全文检索,中断的总结任务不会自动续跑。使用网页抓取功能需同意插件提示的相关安全使用条款。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 2 warnings2 项注意
  • No license declared - all rights reserved by default; ask the author before commercial use or redistribution未声明开源许可证 —— 默认「保留所有权利」,商用或再分发前先问作者
  • Only 3 stars - very few users, little community feedback星标只有 3,几乎没人在用,遇到问题缺少社区反馈
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add github:havingautism/dsh-notebooks

把 havingautism/dsh-notebooks 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

📓 Notebooks

English | 中文

@deepseek-ai/dsh-notebooks 把 Codemini 风格的持久随手记带到 DSH。它提供 SQLite 存储、模型工具、生成的 notebooks Remote namespace,以及侧栏打开的全局「随手记」工作区。

✨ 特性

  • 🗂️ 在 #notes 资料库中用网格或列表浏览支持搜索、筛选和排序的笔记。
  • 📝 创建混合来源笔记:手写内容、网页链接、TXT/Markdown 文档。
  • 🌐 自动抓取未读网页,来源变更后清空总结和 Studio 产物并重新总结。
  • ✅ 精确选择参与综合总结和 Studio 产物的来源。
  • 🧠 由宿主私有 Agent 生成综合总结、Mermaid 思维导图和 Markdown 报告。
  • 💬 对话输入框用笔记本图标打开弹出框,或 @ 引用一篇笔记追问;消息气泡下显示可点击的笔记徽章并跳转到 #notes/<id>。
  • 🗑️ 删除前确认;工作区可查看来源原文并跳转原链接。

🚀 快速开始

安装插件:

dsh plugin --profile web add github:havingautism/dsh-notebooks
dsh web

在左侧边栏底部打开「随手记」,或访问 #notes / #notes/<id>。插件 patch 启用 generation runner。启动时若宿主还没有 sqlite / HTTP fetch,会自行挂上;已经有了则共用。笔记和深度研究共用一份 sqlite(默认 ~/.dsh/storages/dsh.sqlite),各自占用独立 domain(notebooks / deepresearch)。首次启动会把旧的 notebooks.sqlite 迁进这份库。单独安装即可使用,不必先装深度研究或手写 yml。不要再 YAML insert 一遍 storage-sqlite。

网页抓取与安全

DSH 默认 不启用 聊天里的 web_fetch 工具,也不挂载 @deepseek-ai/dsh-web-fetch-http(见 dsh-base cordis.patch.yml 与 Web 默认搜索决策说明)。原因是模型自选 URL 抓取存在 SSRF 等风险。

随手记抓取网页来源时 优先走 Jina Reader(https://r.jina.ai/...)。失败或正文为空时再回退到 ctx.web.fetch;若当时还没有 HTTP fetch provider,插件会自行挂上 @deepseek-ai/dsh-web-fetch-http。已挂过则跳过,因此和 @deepseek-ai/dsh-deepresearch 同时安装不会抢同一个 loader id。聊天里的 web_fetch 仍然保持关闭。

安装或使用网页抓取能力即表示你接受:宿主可对公网 URL 发起 HTTP(S) 请求;provider 有 URL 校验与体积/超时限制,但不能消除所有 SSRF 场景。请在可信环境使用。

模型体验

Native 工具

What the model sees

模型会看到 notebook_list、notebook_write、notebook_add_source、notebook_set_summary、notebook_set_artifact、notebook_save_chat_answer 和 notebook_delete。普通聊天不会为选中的笔记改写系统提示;@ 引用只在该轮用户消息旁注入 recall 上下文。

Token effect

工具可见时承担固定 schema 成本;结果成本与配置上限内匹配的总结和正文量成正比。追问注入只增加当前轮的笔记摘要。

KV Cache 影响

静态 schema 会扩展请求头。已保存内容只通过工具结果或该轮 recall 注入进入请求,因此持久数据变更不会重写已有请求前缀。

已知限制与后续工作

  • 浏览器上传当前只提取 UTF-8 纯文本和 Markdown。PDF、DOCX 需要组合附件提取器,不会用有损的浏览器文本解码来假装支持。
  • 对话气泡没有「保存到随手记」插槽;保存聊天回答走 Remote / notebook_save_chat_answer 工具。
  • 运行中的私有生成 Agent 会随宿主进程停止;笔记本身保持持久化,但不会自动续跑中断的总结或 Studio 任务。
  • 搜索采用有界的内存子串与精确标签匹配,不提供排序型全文检索。
← 上一个 Prev dsh-plugin-weaknet-adaptor 下一个 Next douyin-plugin-dsh-plugin →