English 中文
A Codex Skill for your local Zotero library: search → analyze → review → one-click Word + PDF + PPT deliverables.
It reads clean data from the Zotero local API, produces review documents (Word + PDF) formatted to standard Chinese and English academic journal conventions, crops real figures from the paper PDFs, and assembles an illustrated PPT with “Figure from reference [n]” captions. Every output is auto-validated (re-open check + garble scan + PowerPoint open with PDF preview export).
search lists matching items (key / year / title) from your Zotero libraryfetch), auto-cleans dirty titles, skips stale items; never uses export-bibtex text (special characters get garbled)texts dumps the first two pages + last page of each PDF, so you can read abstract / intro / conclusion before writing[@ZoteroKey] citations in work/review_content.json → one command generates Word + PDF
figs crops embedded raster figures by their bounding boxes (not whole-page screenshots) → work/ppt_images/ppt builds on a PowerPoint-generated skeleton, driven by a JSON config (cover / toc / pic / text / refs slide types), any slide count"lang": "en" in the config to generate English deliverables (Abstract / Keywords / References labels and PPT captions switch to English)work/)Run from the project root (the first run copies the pipeline scripts and skeleton into work/):
# 1. One-time setup
python <skill>/scripts/zotero_docs.py setup
# 2. Search the local Zotero library (read-only)
python work/zotero_docs.py search "anthocyanin"
# 3. Fetch clean data (comma-separated keys)
python work/zotero_docs.py fetch KEY1,KEY2,...
# 4. (Optional) dump first/last pages of each PDF to read before writing
python work/zotero_docs.py texts KEY1,KEY2,...
# 5. Write work/review_content.json (sections + [@KEY] citations), then generate the review
python work/zotero_docs.py review work/review_content.json
# 6. Crop real figures from the paper PDFs
python work/zotero_docs.py figs KEY1,KEY2,...
# 7. Write work/deck_config.json, then build the PPT
python work/zotero_docs.py ppt work/deck_config.json
Outputs land in outputs/: <name>.docx, <name>.pdf, <name>.pptx.
zotero-literature-docs/
├── SKILL.md # Skill definition (entry point for Codex)
├── agents/openai.yaml # trigger & behavior config
├── references/method.md # full method, dependencies and pitfalls (Chinese)
├── references/method.en.md # full method, dependencies and pitfalls (English)
├── scripts/ # pipeline scripts (unified CLI: zotero_docs.py)
│ ├── zotero_docs.py # setup/status/search/fetch/texts/review/figs/ppt
│ ├── fetch_items.py # data fetch & cleaning
│ ├── make_review_docs.py # review Word + PDF generation
│ ├── extract_figures.py # real figure cropping from PDFs
│ ├── build_pptx.py / assemble_pptx.py # PPT generation & assembly
│ └── deck_config.example.json # deck config example
└── assets/_skeleton.pptx # PowerPoint-generated blank skeleton
zotero-literature-docs directory to ~/.codex/skills/ and restart Codexexport-bibtex textITALIC_WORDS / PLANT_GENERA in scripts/make_review_docs.pyWithWindow=$true--whole-page only when a paper has no embedded raster figures and the user explicitly agrees"lang": "en" in review_content.json and deck_config.jsonMIT License — see LICENSE.
If you encounter any issues or have suggestions, please open an Issue at https://github.com/notelab-sys/zotero-literature-docs/issues. We will review and respond in time.