zotero-management
>
git clone --depth 1 https://github.com/jxtse/scientific-research-skills /tmp/zotero-management && cp -r /tmp/zotero-management/skills/zotero-management ~/.claude/skills/zotero-managementSKILL.md
# Zotero Library Management Systematic management of an academic literature library via Zotero. ## When to Use - User asks to add a paper to Zotero - User asks to check their reading queue - User wants to organize papers for a project - User asks "what's in my library about X?" - User asks to clean up or reorganize collections ## Library Structure Standard collection hierarchy: ``` 00_Inbox → Newly added, unprocessed papers 10_Active Projects → Papers actively being used in current work 20_Background → General domain knowledge, surveys, textbooks 30_Reading Queue → Papers to read, prioritized 40_Archive → Completed projects, historical reference 90_Meta → Templates, style guides, writing resources ``` ## Tag System Use tags to cross-cut the collection hierarchy: - **Project tags**: `#Inception`, `#AI-Scientist-BioAge`, `#ChemRetro`, `#CAST` - **Status tags**: `#to-read`, `#reading`, `#read`, `#summarized` - **Priority tags**: `#urgent`, `#high`, `#low` - **Type tags**: `#survey`, `#method`, `#benchmark`, `#position-paper` ## API Access Two access modes: | Mode | Endpoint | Capability | |------|----------|------------| | **Local API** | `localhost:23119` | Read-only, fast, requires Zotero running | | **Web API** | `api.zotero.org` | Read-write, works always, needs API key | ```bash # Check if Zotero is running locally curl -s http://localhost:23119/api/users/0/items?limit=1 # Web API (read-write) curl -s -H "Zotero-API-Key: $ZOTERO_API_KEY" \ "https://api.zotero.org/users/$ZOTERO_USER_ID/items?limit=5" ``` ## Workflows ### Adding a Paper 1. **Find metadata**: Get title, authors, year, venue, DOI/arXiv ID 2. **Check for duplicates**: Search existing library by title 3. **Present summary to user**: Don't auto-add — confirm first 4. **Add to Zotero** via Web API with: - Correct item type (journalArticle, conferencePaper, preprint) - All available metadata fields - Collection: `30_Reading Queue` (default) or user-specified - Tags: project tag + `#to-read` 5. **Attach notes**: Source link (social media post, blog, etc.) as a note ### Checking Reading Queue ```bash # Get items in Reading Queue collection curl -s -H "Zotero-API-Key: $ZOTERO_API_KEY" \ "https://api.zotero.org/users/$ZOTERO_USER_ID/collections/<COLLECTION_KEY>/items?limit=50" ``` Present as a prioritized list: ``` 📚 Reading Queue (N papers) 🔴 Urgent: 1. [Paper Title] — added [date], tagged #Inception 🟡 High priority: 2. [Paper Title] — added [date], tagged #AI-Scientist-BioAge ⚪ Normal: 3. ... ``` ### After Reading a Paper 1. Move from `30_Reading Queue` to `10_Active Projects` or `20_Background` 2. Update tag: `#to-read` → `#read` or `#summarized` 3. Add reading notes as a child note item 4. Link to project if relevant ### Project Literature Setup When starting a new project: 1. Create a project tag (e.g., `#NewProject`) 2. Do initial literature search (use literature-search skill) 3. Batch-add relevant papers to `30_Reading Queue` with project tag 4. Prioritize: which papers must be read first? ## Key Principles 1. **Confirm before adding** — always show summary, let user decide 2. **Preserve provenance** — record where you found the paper (social media link, search query) 3. **One source of truth** — Zotero is the canonical library; don't maintain parallel lists 4. **Tags cross-cut collections** — a paper can be in one collection but tagged for multiple projects 5. **Regular maintenance** — periodically review Inbox and Reading Queue for stale items
>
>
Batch download academic paper full-text (PDF/XML) from a list of DOIs. Handles 25 DOI prefixes across 19 publisher families via three layered routes: (1) publisher TDM APIs requiring institutional subscription (Elsevier ScienceDirect, Wiley Online, Springer Nature), (2) Open Access sources (Crossref, Unpaywall, OpenAlex), and (3) a browser-based fallback for paywalled publishers without TDM access (ACS, RSC, IEEE, AIP, IOP, APS, Annual Reviews, T&F, Chinese journals). Browser fallback offers two routes — Route A drives the user's logged-in Chrome via the OpenClaw `browser` tool with `profile="user"` (best for interactive sessions), Route B uses the standalone `auto-paper-harvester` CLI with its built-in Playwright (best for unattended bulk runs). Use when the user wants to harvest, scrape, fetch, or bulk-download papers from a DOI list, savedrecs export, or Excel; or wants to fill missing full-text PDFs for an existing literature collection. Triggers on phrases like "批量下载文献", "下载全文", "harvest papers", "scrape full text", "TDM API", "下载 Elsevier 全文", "Wiley 批量下载", "下载 PDF".
>
>
>