Skip to content

v0.4.0

Choose a tag to compare

@oldantique oldantique released this 29 Jul 07:21

zotkit create --arxiv / --doi — one-shot import from an identifier

Two new ways to create items, no JSON file needed. Both are dry-run by default (printing the full fetched record), and --apply executes:

zotkit create --arxiv <id-or-url>

  • Accepts 2401.12345, versioned ids, old-style ids (math/0211159), or any arxiv.org abs/pdf URL.
  • Fetches from the arXiv export API: title, all authors, abstract (stored verbatim — line breaks and LaTeX untouched), date, abs-page URL, DOI (journal DOI when arXiv has one, else the 10.48550/arXiv.* DataCite DOI), as a preprint item with repository/archiveID set.
  • With --apply, the PDF is downloaded and attached automatically through the existing WebDAV / Zotero Storage auto-detection; --no-pdf skips that.

zotkit create --doi <doi-or-url>

  • Fetches from CrossRef (polite pool): full creator list, abstract, date, container title, volume/issue/pages, ISSN/ISBN, with CrossRef types mapped to proper Zotero item types (journal-articlejournalArticle, proceedings-articleconferencePaper, books, chapters, …). Unknown types are an error, never a guess.
  • No PDF download (publisher PDFs are usually paywalled) — the CLI tells you how to zotkit attach one manually.

Shared behavior

  • --collection "Name" and --tags field:ai,status:to-read file the new item directly; tag conventions are enforced as always.
  • Dedup by DOI/title applies as with --file; the three sources are mutually exclusive.
  • Readable errors for network failures, rate limits, unknown ids/DOIs.

Out of scope by design: translation-server / arbitrary-URL scraping — zotkit stays a daemon-free CLI.

Install/upgrade: pipx install zotkit or pipx upgrade zotkit