Releases: Vncntvx/dsh-zotero
Release list
dsh-zotero v0.2.0
dsh-zotero v0.2.0. Built from commit dc8b1ed, matching dsh-zotero@0.2.0 on npm (gitHead dc8b1ed).
Highlights
- Note bodies are first-class.
zotero_getreturns note body text,zotero_retrieveranks note bodies alongside annotations, andzotero_searchscans note content client-side and synthesizes note titles when Zotero supplies none. New budgets:maxNoteScanRecords(default 200) andmaxNoteBodyChars(default 30000). - Connection failures ask the user instead of failing silently. A tool call that hits
ZOTERO_NOT_RUNNING,ZOTERO_API_DISABLED,ZOTERO_API_VERSION, orZOTERO_TIMEOUTshows a question card with the recommended action first, retries once with the original arguments, then returns the typed error. Headless compositions degrade to the error without asking; a broken question mechanism never masks the original failure. - Config is editable in the web UI. The plugin registers a Zotero card in dsh web (Settings → Plugins → Plugin config) listing all 19 fields. Values are written to
$DSH_HOME/settings.yamlunderzotero:, hot-apply on save without restart, and invalid values are rejected before writing, keeping the plugin on the last valid config. zotero_exportcaps refs per call withmaxExportRefs(default 1000), protecting the request line from the server's HTTP header limit.zotero_retrievereturns real note body passages instead of title-only previews, so evidence from notes cites the actual text.
Performance
- Scope listings are cached and only the requested kinds are normalized per call, cutting repeated
zotero_getandzotero_searchwork.
Install
dsh plugin --profile <name> add dsh-zoteroLocal tarball (npm pack) and GitHub source installs (dsh plugin --profile <name> add github:Vncntvx/dsh-zotero) work as before. See the README "Install" section.
dsh-zotero v0.1.0
dsh-zotero v0.1.0, the first published release.
Built from commit a4a7e4e, matching dsh-zotero@0.1.0 on npm (gitHead a4a7e4e).
Highlights
Agents can search, read, and cite your local Zotero library: find items, review notes and annotations, gather evidence for a question, open the original file, and produce citations.
zotero_searchdiscovers items. Searches by title/creator/year, with aneverythingmode that also covers the full-text index; can be scoped to a collection or a saved search.zotero_getinspects an item. Returns structured core metadata, plus optional lists and previews of notes, annotations, and attachments.zotero_retrievegathers evidence. Returns ranked, budget-bounded passages from annotations, notes, the abstract, and full-text chunks, ordered by term relevance.zotero_attachmentopens the original file. Resolves an item or attachment ref to a verified disk path or link URL; item refs use Zotero's best-attachment choice.zotero_exportproduces citations. Zotero generates citations, CSL bibliographies, andbibtex/biblatex/ris/csljsonnatively.
Tools chain together through reusable zotero://user/0/<kind>/<KEY> refs. On Zotero 10+, the ?server=<id> qualifier binds a ref to the database identity that produced it, so stale refs from another library cannot be misread.
- Read-only by design. V1 has no path to modify library data: items, notes, tags, or collections.
/zotero statusis the single health check. It reports connectivity, API/schema version, and the database identity (Server ID).- The local API (
http://127.0.0.1:23119/api, unauthenticated read) is accessed through a provider. Providers declare capabilities and the service gates every call on them. - Tunables live in Config, with defaults documented in the README table: search caps, evidence and preview character budgets, full-text chunk size, export hard limit, default CSL style.
Install
dsh plugin --profile <name> add dsh-zoteroYou can also install from a local tarball (npm pack) or from GitHub source (dsh plugin --profile <name> add github:Vncntvx/dsh-zotero). See the README "Install" section.
Requirements
- Zotero desktop ≥ 7 with local API version 3, and "Allow other applications on this computer to communicate with Zotero" enabled in settings.
- Full-text evidence depends on Zotero's full-text index.