Agent skill

Zotero Taxonomy Curator

by ganzoth in ganzoth/zotero-taxonomy-curator

Domain-configurable Zotero-to-Obsidian literature curation and paper close-reading skill.

MITAuto-check passedResearch & Science

Install Zotero Taxonomy Curator

skills CLI
$ npx skills add ganzoth/zotero-taxonomy-curator --skill zotero-taxonomy-curator -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install ganzoth/zotero-taxonomy-curator zotero-taxonomy-curator --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/ganzoth/zotero-taxonomy-curator.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/zotero-taxonomy-curator .claude/skills/zotero-taxonomy-curator && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
zotero-taxonomy-curator
GitHub stars
160
Token cost
~2.3k tokens
SKILL.md length
1,026 words
Files
8 (incl. scripts)
Skills in repo
1
Repo updated
First seen
Licence
MIT

At a glance

Domain-configurable Zotero-to-Obsidian literature curation and paper close-reading skill.

  • Works in 6 steps: Evidence Collector: build an evidence… → Domain Card Builder: describe the user's… → Taxonomy Mapper: map tags → …
  • The user asks to 精读、文献精读、论文精读、生成精读笔记
  • SKILL.md covers Core idea, Source policy, Review, model, and formula rules and Configuration files, plus 4 more sections
  • Runs Python scripts from its folder; calls python

What it does

Zotero Taxonomy Curator is an agent skill from ganzoth/zotero-taxonomy-curator. Domain-configurable Zotero-to-Obsidian literature curation and paper close-reading skill. Use when the user asks to 精读、文献精读、论文精读、生成精读笔记, analyze/read a paper, or process a Zotero item/collection/title/DOI/PDF into a structured Obsidian literature note. It extracts Zotero evidence, writes Chinese close-reading notes, maps original tags to a controlled taxonomy, initializes local config and empty taxonomy, handles review/survey papers with reviewscopetags, writes model and formula sections with LaTeX evidence…

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 9 other files, including scripts (for example `scripts/curator_common.py`, `scripts/extract_zotero_evidence.py` and `scripts/init_curator_project.py`).

It sits in Research & Science, covering Citation management and Literature review. It works with Zotero, Obsidian and LaTeX. The licence is MIT.

When your agent uses it

  • The user asks to 精读、文献精读、论文精读、生成精读笔记
  • Analyze/read a paper
  • Process a Zotero item/collection/title/DOI/PDF into a structured Obsidian literature note

Example prompts

  • “/zotero-taxonomy-curator”

Requirements

  • Python 3

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Evidence Collector: build an evidence packet
  2. Domain Card Builder: describe the user's field
  3. Taxonomy Mapper: map tags
  4. Note Composer: write the literature note
  5. Index Keeper: maintain the literature index
  6. Taxonomy Gatekeeper: validate

What it can do on your machine

Read from SKILL.md and the folder at commit ca30528. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 5 files in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • python

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Zotero Taxonomy Curator loads about 2.3k tokens when it runs. Until then it costs about 151 tokens; SKILL.md has 1,026 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~151
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from ganzoth/zotero-taxonomy-curator at commit ca30528, republished under its MIT licence (© ganzoth). 1,026 words, ~2,296 tokens.

Download SKILL.mdSave it as .claude/skills/zotero-taxonomy-curator/SKILL.md (or your agent's skills folder). This skill also uses 7 other files; get the full folder from GitHub.
name
zotero-taxonomy-curator
description
Domain-configurable Zotero-to-Obsidian literature curation and paper close-reading skill. Use when the user asks to 精读、文献精读、论文精读、生成精读笔记, analyze/read a paper, or process a Zotero item/collection/title/DOI/PDF into a structured Obsidian literature note. It extracts Zotero evidence, writes Chinese close-reading notes, maps original tags to a controlled taxonomy, initializes local config and empty taxonomy, handles review/survey papers with review_scope_tags, writes model and formula sections with LaTeX evidence discipline, and updates literature indexes for any research field.

Zotero Taxonomy Curator

Use this skill when a user wants to turn Zotero items, collections, annotations, manual tags, PDF text, or notes into structured Obsidian literature notes backed by a user-defined taxonomy.

Core idea

This skill is taxonomy-first. It does not treat paper summarization as the final goal. Its goal is to help the user build a reusable literature system:

text
Zotero evidence -> controlled taxonomy -> structured note -> literature index

Source policy

Use sources in this order:

  1. User-provided manuscript notes, Zotero exports, PDFs, annotations, tables, or data files.
  2. Local Zotero database paths from config/local.yaml.
  3. Taxonomy rules from config/taxonomy.yaml.
  4. The bundled note template in templates/literature-note-template.md inside this skill folder, or a project-level override supplied by the user.

Never invent paper conclusions, numerical results, page numbers, formulas, authors, DOI, dataset names, or Zotero keys. If evidence is missing, say so.

Review, model, and formula rules

Review papers

Detect review papers before assigning tags. Review signals include review, survey, systematic literature review, bibliometric, scoping review, taxonomy, classification, meta-analysis, state-of-the-art, or a paper whose main contribution is organizing a field rather than proposing a new model or experiment.

For review papers:

  • set paper_type: review;
  • fill review_type when possible, such as narrative-review, systematic-review, bibliometric-review, scoping-review, taxonomy-review, meta-analysis, tutorial-review, or hybrid-review;
  • keep canonical_tags narrow: use only the review type and its core scope;
  • use review_scope_tags for covered but non-core concepts; these mean "covered by this review", not "proposed by this paper";
  • do not promote every method, constraint, objective, dataset, or application mentioned in a review table to canonical_tags;
  • write the note around review positioning, classification framework, research trajectory, method families, gaps, opportunities, and key reference clusters.
Models and formulas

For modeling, optimization, algorithm, learning, or quantitative papers:

  • separate assumptions, sets, indices, parameters, variables, objective terms, constraints, algorithm steps, and experimental findings;
  • use LaTeX for sets, parameters, variables, objectives, constraints, state transitions, value functions, loss functions, probabilities, and expectations;
  • preserve the paper's notation unless it is inconsistent or undefined;
  • do not invent objective terms, constraints, variables, formulas, solver settings, or proof claims;
  • if a formula is corrupted by PDF extraction, write that the original PDF must be checked instead of reconstructing a formula from guesswork;
  • after each important formula or mechanism, explain what it does, key symbols, where it sits in the method, and why it is reusable.
Literature-review reuse

When extracting material for a future literature review:

  • record only claims supported by local evidence from the note, PDF, annotation, or Zotero metadata;
  • distinguish background claims, research gaps, method comparisons, experiment evidence, and limitations;
  • avoid inflated claims such as "proves", "always", or "best" unless the paper itself and the evidence justify them;
  • do not create citations, DOIs, page numbers, or result values that were not present in the source evidence.

Configuration files

Expected public templates:

  • config/local.example.yaml
  • config/taxonomy.example.yaml
  • project-level templates/literature-note-template.md, if the user wants to override the bundled skill template

Expected private local files:

  • config/local.yaml
  • config/taxonomy.yaml

Do not require hard-coded absolute paths. If config/local.yaml is absent, ask the user to run scripts/init_curator_project.py or create it from config/local.example.yaml.

First-run initialization

When a user has just installed the skill or the current project has no config/local.yaml, initialize the project before extracting papers:

bash
python <skill-dir>/scripts/init_curator_project.py

The initializer creates:

  • config/local.yaml;
  • config/taxonomy.yaml as an empty taxonomy starter;
  • templates/literature-note-template.md;
  • the note output folder, by default notes/literature/;
  • a starter Literature Index.md.

It tries to detect Zotero paths from environment variables, Zotero profile preferences, and common default locations. If detection fails, rerun it with --zotero-sqlite and --zotero-storage, or edit config/local.yaml.

Workflow

1. Evidence Collector: build an evidence packet

For each Zotero item, collect:

  • title, authors, year, journal, DOI, URL;
  • Zotero item key;
  • attachment and PDF key;
  • resolved PDF path when available;
  • Zotero collection paths;
  • original Zotero tags;
  • notes, annotations, and highlights;
  • full-text cache excerpts;
  • PDF page evidence when needed.

At this stage, do not translate, summarize, or write final notes.

If deterministic extraction is needed, run scripts/extract_zotero_evidence.py.

Show full SKILL.md (393 more words)Show less
2. Domain Card Builder: describe the user's field

Before writing the note, identify the user's taxonomy categories. Common categories include:

  • document type;
  • research topic;
  • theory or framework;
  • method family;
  • data and evidence;
  • contribution type.

Domain projects may replace these categories with field-specific ones.

3. Taxonomy Mapper: map tags

Map Zotero tags and evidence-derived concepts to the taxonomy:

  • preserve original Zotero tags and the tag-selection basis in the note body under 标签标记, not as noisy frontmatter fields;
  • map stable concepts to canonical_tags;
  • place uncertain or emerging concepts in candidate_tags;
  • avoid adding fine-grained tags unless they improve retrieval or comparison;
  • keep detailed category definitions in config/taxonomy.yaml rather than duplicating the full taxonomy tree in every note;
  • use aliases in the taxonomy when Zotero tag spelling differs from canonical style.
4. Note Composer: write the literature note

Use the configured template and include:

  • basic information;
  • lightweight tag marking;
  • core summary;
  • problem positioning;
  • review-specific sections when paper_type: review;
  • model or assumptions;
  • solution or analytical method;
  • core formulas or mechanisms when applicable;
  • evidence, data, and experiments;
  • main findings;
  • literature-review reusable points;
  • the user's assessment, reuse value, and follow-up questions.
5. Index Keeper: maintain the literature index

If the user has an index file, update it with:

  • year;
  • wiki link;
  • title;
  • Zotero item key;
  • DOI;
  • main tags;
  • one-sentence positioning.
6. Taxonomy Gatekeeper: validate

Before reporting completion:

  • read the note back from disk;
  • check frontmatter;
  • check that canonical tags exist in the taxonomy;
  • check candidate tags against candidate_terms when applicable;
  • for review papers, check that review_scope_tags is not being used as a substitute for ordinary canonical_tags;
  • check that formulas use LaTeX and that unclear formulas are marked for PDF verification rather than guessed;
  • check for encoding problems;
  • check that local temporary files are not treated as final output.

For deterministic tag checks, run scripts/validate_taxonomy_notes.py.

Taxonomy governance rules

Use the smallest stable tag set that supports the user's research workflow.

Promote a candidate term to canonical only when:

  1. it appears across multiple sources or is established in the field;
  2. it cannot be adequately covered by an existing broader tag;
  3. it improves retrieval, comparison, or review writing;
  4. it has explicit evidence.

Do not promote:

  • one-off acronyms;
  • local operator names;
  • city names unless the field uses them as stable study areas;
  • author names;
  • funding numbers;
  • journal names;
  • isolated background phrases.

Output format

For a single item:

text
Completed
- Zotero item:
- Output note:
- Taxonomy:
- Index update:

Tag decisions
- Canonical:
- Candidate:
- Not mapped:

Risks / missing evidence
- ...

For a collection:

text
Collection summary
- Items scanned:
- Already processed:
- New notes:
- Skipped:
- Failed:

Taxonomy changes
- New candidates:
- New canonical tags:
- Merge suggestions:

© ganzoth, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 7 other files (scripts) in skills/zotero-taxonomy-curator of ganzoth/zotero-taxonomy-curator.

  • SKILL.md
  • scripts/curator_common.py
  • scripts/extract_zotero_evidence.py
  • scripts/init_curator_project.py
  • scripts/list_zotero_collections.py
  • scripts/validate_taxonomy_notes.py
  • templates/empty-taxonomy.yaml
  • templates/literature-note-template.md

Open the folder on GitHubat commit ca30528

Compare with similar skills

Zotero Taxonomy Curator next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Zotero Taxonomy Curator compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Zotero Taxonomy Curator this skillganzoth/zotero-taxonomy-curator160—~2.3kAutomated safety check: PassMIT
Zotero Obsidian BridgeGalaxy-Dawn/claude-scholar5.7k—~514Automated safety check: PassMIT
Lit SyncAperivue/medsci-skills333—~4.6kAutomated safety check: PassMIT
Scholar Lit Reviewjoshzyj/open-scholar-skill168—~14kAutomated safety check: NotesCustom licence
Comm Lit Review Claude SingleAI4Scientist/nano-scientist1284 repos~2.2kAutomated safety check: NotesNone
Obsidian Literature Workflowbrycewang-stanford/Auto-Empirical-Research-Skills4.6k—~976Automated safety check: PassCustom licence

Similar skills

  • Zotero Obsidian Bridge

    Galaxy-Dawn/claude-scholar

    Moves papers from Zotero into an Obsidian project knowledge base as source notes, literature synthesis and writing outputs, with evidence records behind every promoted claim.

    5.7k GitHub stars~514 tokensUpdated 18 days ago
    Research & ScienceAuto-check passed
  • Lit Sync

    Aperivue/medsci-skills

    A skill your agent uses when references in a .bib file (often from /search-lit) should land in Zotero and Obsidian.

    333 GitHub stars~4.6k tokensUpdated 5 days ago
    Research & ScienceAuto-check passed
  • Scholar Lit Review

    joshzyj/open-scholar-skill

    Conduct a systematic literature review that maps the current landscape of a research question.

    168 GitHub stars~14k tokensUpdated 22 days ago
    Research & ScienceAuto-check: notes
  • Comm Lit Review Claude Single

    AI4Scientist/nano-scientist

    Communications-domain literature review with Claude-style knowledge-base-first retrieval.

    128 GitHub starsUsed in 4 repos~2.2k tokens
    Research & ScienceAuto-check: notes
  • Obsidian Literature Workflow

    brycewang-stanford/Auto-Empirical-Research-Skills

    A skill your agent uses when the user keeps paper notes inside an Obsidian project knowledge base and wants filesystem-first literature review, explicit agent-first Zotero ingestion, Papers/ plus…

    4.6k GitHub stars~976 tokensUpdated 5 days ago
    Research & ScienceAuto-check passed
  • Citation Skills

    wentorai/research-plugins

    22 citation management skills. An agent skill from wentorai/research-plugins.

    298 GitHub starsUsed in 1 repo~812 tokens
    Research & ScienceAuto-check passed

Questions about Zotero Taxonomy Curator

What does Zotero Taxonomy Curator do?

Domain-configurable Zotero-to-Obsidian literature curation and paper close-reading skill. Zotero Taxonomy Curator is an agent skill from ganzoth/zotero-taxonomy-curator. Domain-configurable Zotero-to-Obsidian literature curation and paper close-reading skill.

When should I use Zotero Taxonomy Curator?

Zotero Taxonomy Curator fits situations like: the user asks to 精读、文献精读、论文精读、生成精读笔记; analyze/read a paper; process a Zotero item/collection/title/DOI/PDF into a structured Obsidian literature note.

How do I install Zotero Taxonomy Curator in Claude Code?

Run `npx skills add ganzoth/zotero-taxonomy-curator --skill zotero-taxonomy-curator -a claude-code`. Or copy the skill folder (skills/zotero-taxonomy-curator in ganzoth/zotero-taxonomy-curator) into .claude/skills/zotero-taxonomy-curator in your project. Claude Code loads it when a task matches its description.

How do I install Zotero Taxonomy Curator in Codex?

Run `npx skills add ganzoth/zotero-taxonomy-curator --skill zotero-taxonomy-curator -a codex`. Or copy the skill folder (skills/zotero-taxonomy-curator in ganzoth/zotero-taxonomy-curator) into .agents/skills/zotero-taxonomy-curator in your project. Codex loads it when a task matches its description.

Can I use Zotero Taxonomy Curator in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ganzoth/zotero-taxonomy-curator --skill zotero-taxonomy-curator -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/zotero-taxonomy-curator, .gemini/skills/zotero-taxonomy-curator, .github/skills/zotero-taxonomy-curator and .opencode/skills/zotero-taxonomy-curator in your project.

What does Zotero Taxonomy Curator need to run?

Going by SKILL.md and its folder, Zotero Taxonomy Curator needs Python for the scripts in its folder and the command-line tools its instructions call (python). Our summary lists: Python 3.

Does Zotero Taxonomy Curator access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Zotero Taxonomy Curator safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Zotero Taxonomy Curator use?

Zotero Taxonomy Curator is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Zotero Taxonomy Curator use?

About 2.3k tokens (SKILL.md is roughly 9.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Zotero Taxonomy Curator?

Skills that share tags, products or a category with Zotero Taxonomy Curator: Zotero Obsidian Bridge (Galaxy-Dawn/claude-scholar, 5.7k stars), Lit Sync (Aperivue/medsci-skills, 333 stars), Scholar Lit Review (joshzyj/open-scholar-skill, 168 stars) and Comm Lit Review Claude Single (AI4Scientist/nano-scientist, 128 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Zotero Taxonomy Curator?

ganzoth (a GitHub user) maintains it in ganzoth/zotero-taxonomy-curator, which has 160 GitHub stars. The repository was last updated on May 8, 2026.

Source: ganzoth/zotero-taxonomy-curator on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.