dsh-zotero: A DSH plugin for browsing and citing your Zotero library in DeepSeek Harness
yuzh2001/dsh-zotero
Browse, search, and cite your Zotero library in the DeepSeek Harness sidebar with double-click and /zotero quick citation.
dsh-zotero lets DeepSeek Harness users browse their local Zotero library without switching windows, and quickly insert citations via double-click or inline search.
dsh plugin --profile web add github:yuzh2001/dsh-zotero- Category
- Data & Knowledge
- Platform
- DSH Plugin
- Author
- yuzh2001
- Distribution
- Plugin
dsh-zotero Key Features
dsh-zotero Repo Summary
dsh-zotero is a Zotero integration plugin for DeepSeek Harness (DSH plugin) that lets you browse, search, and cite your local Zotero library directly in the right sidebar, no API key required. It solves the pain of switching windows to find references while writing prompts, by injecting citations seamlessly into the input box via file tree, inline search, and slash commands. Core features include Zotero file tree, double-click citation, & inline search, /zotero command, model tool resolve_zotero_ref, and Zotero deep links. Maintained by yuzh2001, written in TypeScript, last updated 2026-08.
What core features does dsh-zotero support as a DSH plugin?
- Zotero file tree: Renders your Zotero library in the right sidebar based on dsh-better-sidebar, with collection hierarchy and lazy loading, reading local
zotero.sqlitedirectly. - Double-click citation: Double-click any paper or folder to inject a readable citation
《Paper Title》{%ZoteroItem:key%}into the input box, pure text without DSH chip placeholders. &inline search: Type&in the input box to pop up a custom search layer (real input, auto-focus), search by title/author, select with arrow keys or Enter, and insert citation./zoterocommand: Slash command opens the same search layer, identical interaction.- Model tool: Registers
resolve_zotero_refso the model can resolve title/author/year/abstract for a citation key. - Zotero deep links: Hover over a citation to jump to
zotero://select/items/...and open the original locally.
How to install dsh-zotero?
Before installing, ensure you have DSH (dsh web works), dsh-better-sidebar, Node.js ≥ 20, pnpm ≥ 10, and Zotero desktop. Use the one-liner script (curl for macOS/Linux, PowerShell for Windows) or manually run:
cd ~/.dsh/profiles/web
pnpm approve-builds --all
echo -e "\nminimumReleaseAgeExclude:\n - dsa-zotero-sidebar" >> pnpm-workspace.yaml
npx -y --package @deepseek-ai/dsh dsh plugin --profile web add dsa-zotero-sidebar
After installation, hard refresh the browser (Cmd/Ctrl+Shift+R) to see the Zotero tab. To update, rerun dsh plugin --profile web add dsa-zotero-sidebar or bump the version in package.json and pnpm install.
What DeepSeek Harness versions and platforms are compatible with dsh-zotero?
The plugin is published as npm package [email protected], auto-mounted via dsh.bundle.patch by the official CLI, without modifying DSH source. It depends on dsh-better-sidebar as host, supports macOS, Linux, and Windows. It reads Zotero database from %LOCALAPPDATA%/Zotero/zotero.sqlite (Windows) or ~/Zotero/zotero.sqlite (macOS/Linux), customizable via DSH_ZOTERO_DIR.
How to troubleshoot common issues with dsh-zotero?
- No Zotero tab in sidebar: Install dsh-better-sidebar first.
- Cannot find papers: Check Zotero database path or set
DSH_ZOTERO_DIR. Ignored build scriptserror: Runpnpm approve-builds --all.- Two Zotero tabs appear: Remove old manual mount lines in
cordis.patch.yml.
What does the dsh-zotero install script do?
The one-liner script performs 5 idempotent steps: check upstream dependency, pre-write allowBuilds, pre-write minimumReleaseAgeExclude, execute plugin add command, and clean up old mounts. Safe to rerun.
