paper-to-zotero

Installation
SKILL.md

Paper to Zotero

From what the user gives to Zotero items with their PDFs, filed and tagged, and nothing left behind. Two entries: import (the steps below; two or more papers, a list, a .bib or search results → read references/batch.md before step 0) and organize existing items (references/organize.md instead of the steps). Script paths are relative to this file's directory: cd there at the start of every shell call. uv run scripts/p2z.py --help lists every script with its purpose; each script's --help is the reference for its flags.

Identity. A paper's handle is its citation key — Zotero's citationKey field, generated by Zotero or Better BibTeX when an item is created, or pinned to the key the user brings. Every script that takes --key <item key> also takes --cite <citation key>; reports lead with the citation key and give the 8-character item key as an aside. When the user supplies a key (from a .bib, a list, or in conversation) it goes into the record's citationKey, so the created item carries it.

Authorization. A request to add a paper is the authorization to write to the library, however politely phrased. A question about what is possible gets an answer, not a write. Changes to existing items are shown as a list first and written after the user confirms; scope the user has set once holds for the whole task.

Instruments

  • opencli-usage skill — web access: discover adapters at run time (opencli list -f json, filter it). Seen in 2026-09: API-type arxiv, openalex, semanticscholar (429 without a key — one 429 means skip it), pubmed (abstract, author keywords, PMID), dblp, openreview, hf paper; browser-type google-scholar, cnki, wanfang. Behind a proxy every call prints a harmless UNDICI-EHPA warning on stderr: send stderr to <work>/scratch/opencli.log, not to /dev/null.
  • opencli-browser skill — the user's real, logged-in Chrome: browser <session> open / state / click / wait / eval / close, web read --url.
  • pdf skill — reading a PDF page when check_pdf.py finds no text layer.
  • papers-cool-search skill (optional) — papers.cool search, category and venue listings as JSON, for step 1.

Read references/publishers.md before the first visit to a publisher site, and references/tagging.md before choosing tags.

Steps

Installs
3
Repository
uxfion/skills
First Seen
5 days ago
paper-to-zotero — uxfion/skills