dsh-zotero-workspace:在 DSH 右侧栏里读 Zotero 文献并一键带入对话

前言

用 DeepSeek Harness(DSH)写论文笔记或做文献综述时,常见做法是开 Zotero 查条目、再切回对话贴标题或路径。Zotero 本地 API 或 zotero MCP 能取正文,但浏览集合、预览 PDF、把引用写进当前草稿往往仍要来回切换窗口。

下面介绍社区客户端插件 dsh-zotero-workspace(维护者 hudsonhou):在 DSH 右侧栏注册原生 Tab,只读连接本机 Zotero(127.0.0.1:23119),用集合树和条目列表选文献,侧栏打开渲染版 PDF 或解析后的 Markdown,并一键把引用行写入当前会话草稿。插件不写入文库、不碰 SQLite、不依赖 MCP,与现有 zotero MCP 可并存。

这是什么

dsh-zotero-workspace 是 DSH 右侧栏的 Zotero 文献工作台。仓库:GitHub — hudsonhou/dsh-zotero-workspace;社区目录:SkillHub 插件页。分类为客户端插件,当前版本 0.1.0,许可证 MIT。插件以当前 DSH 进程权限运行,安装前请自行阅读源码与许可证。

核心功能

Zotero 页与检索

右侧栏新增「Zotero 文献工作台」页:集合树、条目列表、详情;支持在 Zotero 服务端按标题、摘要、全文检索,带总数与分页。

可拖动分区与持久化

集合树、文献列表、详情三块边界可拖动调整,双击边界恢复默认;布局按用户持久化。

侧栏阅读

选中条目可在 DSH 内打开渲染版 PDF 或 text/markdown 附件(解析后的 Markdown),走 DSH 原生文件预览。若已安装 dsh-better-sidebar,打开 PDF/Markdown 会优先复用其 openFile 预览,否则回退到 DSH 原生 Session 文件地址。

带入对话

一键向当前草稿写入一行纯文本,形如:

[Zotero] 标题 — 作者 (年份) | itemKey=… | PDF: … | MD: …

模型可对路径执行 read,也可配合 zotero MCP 按 itemKey 取正文。

只读本地 API

仅调用 Zotero 本地 API,不写文库。Host 侧提供只读 HTTP 路由(health、tree、items、tags、item、file、mdtext 等),带回环栅栏、仅 GET。

安装与启用

前提

  1. Zotero 桌面版运行中,且在 设置 → 高级 中勾选 允许此计算机上的其他应用程序与 Zotero 通信。
  2. 条目宜挂 PDF 附件;解析后的 Markdown 建议以 text/markdown 附件挂回条目(例如 PDF 解析流程产出的 MD)。

自测本地 API:

curl --noproxy "*" http://127.0.0.1:23119/api/

应返回 Nothing to see here.,响应头含 Zotero-API-Version: 3。

从 GitHub Release 安装(推荐)

桌面 profile:

cd ~/.dsh && dsh plugin --profile desktop add "github:hudsonhou/dsh-zotero-workspace#v0.1.0"

Web profile 将 --profile desktop 换成 --profile web。安装后重启 DSH(客户端 bundle 在启动时装配),右侧栏应出现「Zotero 文献工作台」。

卸载:

cd ~/.dsh && dsh plugin --profile desktop remove dsh-zotero-workspace

或在插件页停用。package.json 声明 DSH 引擎 >=0.2.2-rc.1 <0.3.0-0。

配置

默认可在 cordis.patch.yml 中由插件行提供。需要覆盖时,在 profile 的 cordis.patch.yml 里按 id zotero-workspace 写 config:

- id: zotero-workspace
  config:
    zoteroBaseUrl: http://127.0.0.1:23119
    storageRoot: ''      # 空 = ~/Zotero/storage
    pageSize: 50
    requestTimeoutMs: 8000

典型用法

  1. 启动 Zotero 与 DSH,打开右侧栏「Zotero 文献工作台」。
  2. 在集合树中选分类,在列表中点条目;必要时用检索缩小范围。
  3. 在详情中打开 PDF 或 Markdown 预览阅读。
  4. 需要让模型引用该文献时,使用「带入对话」,在草稿中得到含 itemKey 与绝对路径的引用行,再在对话中让模型读文件或配合 MCP。

与本插件并存时,可继续安装 dsh-better-sidebar;本插件注册的是 DSH 原生右侧栏 Tab。在 better-sidebar 设置里通过「添加 Tab 插件」发现本插件需等上游目录 PR 合并发版;此前用上方 Release 命令安装即可。上游 PR:DSH-better-sidebar #1140。

适用场景与注意

适合:本机维护 Zotero 库、在 DSH 里写综述或复现实验、希望不离开对话即可浏览集合并预览 PDF/MD 的开发者或研究者。

v0.1 已知限制(以 README 为准):

  • 无标签面板、标注浏览、整分类引用、摘录(/tags 接口已就绪,计划 v0.2)。
  • 一个条目默认打开第一个 PDF 与第一个 Markdown 附件;PDF 与 MD 各开一个预览 tab,无并排分屏。
  • 引用为纯文本,非结构化 chip。
  • 修改 client.js 后需重载页面(dsh-unlag 刷新)或重启 DSH。

故障排查要点:

  • 面板显示「Zotero 未连接」:确认 Zotero 运行、本地 API 已开启,并用上述 curl 自测。
  • Host 加载状态:读 ~/.dsh/zotero-workspace/status.json。
  • Host 健康检查:curl --noproxy "*" http://127.0.0.1:<GUI端口>/dsh-zotero-workspace/api/health。
  • Tab 未出现:确认插件 dsh-zotero-workspace 已启用并已重启 DSH。

DSH 生态强调「一切皆插件」;SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系。

结尾

dsh-zotero-workspace 把 Zotero 集合浏览、PDF/Markdown 侧栏阅读和引用写入草稿收进 DSH 右侧栏,只读本地 API,便于在对话中直接接着读文献。安装与配置以仓库 README 为准。

  • 目录页:https://www.skillhub.cn/plugins/hudsonhou/dsh-zotero-workspace
  • 源码与说明:https://github.com/hudsonhou/dsh-zotero-workspace
羽毛球分组比赛记分
小程序二维码

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

小夜