Install
openclaw skills install zotero-writeWrite, tag, annotate, and edit a local Zotero SQLite database. Use when the user wants to: (1) Add tags or labels to papers in their Zotero library, (2) Add notes or annotations to specific papers, (3) Update paper metadata (title, authors, journal, date, DOI, etc.), (4) Create new Zotero items manually. Activates on: 'tag this paper', 'add a note to', 'update the metadata of', 'add this to my Zotero', 'create a new Zotero entry', 'edit Zotero', 'organize my Zotero with tags', any request to modify, annotate, or write to the Zotero database.
openclaw skills install zotero-writeWrite, tag, annotate, and edit a local Zotero SQLite database.
E:\Refer.Hub\zotero.sqlite--backup before any write operation. Backups saved to E:\Refer.Hub\backups/--backup — the script will refusescripts/write_items.py — All write operationspy -3 scripts/write_items.py --backup "E:\Refer.Hub\zotero.sqlite"
This saves a timestamped backup before any write. Always do this first.
First find the item key from zotero-browse skill, then:
py -3 scripts/write_items.py --backup "E:\Refer.Hub\zotero.sqlite" \
--add-tag ZL42EGES "NAFLD" "FGF15" "silymarin"
py -3 scripts/write_items.py --backup "E:\Refer.Hub\zotero.sqlite" \
--add-note ZL42EGES "This paper shows FGF15 is the key mediator of silibinin's anti-NAFLD effect."
# Update title
py -3 scripts/write_items.py --backup "E:\Refer.Hub\zotero.sqlite" \
--set-field ZL42EGES title "New Title Here"
# Update date
py -3 scripts/write_items.py --backup "E:\Refer.Hub\zotero.sqlite" \
--set-field ZL42EGES date "2024"
# Update journal
py -3 scripts/write_items.py --backup "E:\Refer.Hub\zotero.sqlite" \
--set-field ZL42EGES publicationTitle "Journal Name"
# Update DOI
py -3 scripts/write_items.py --backup "E:\Refer.Hub\zotero.sqlite" \
--set-field ZL42EGES DOI "10.1234/example"
py -3 scripts/write_items.py --backup "E:\Refer.Hub\zotero.sqlite" \
--new-item journalArticle \
--title "Example Title" \
--authors "John Doe" "Jane Smith" \
--date "2024" \
--journal "Nature Medicine" \
--doi "10.1038/s41591-024-0001-z"
py -3 scripts/write_items.py --list-fields
py -3 scripts/write_items.py --item-info ZL42EGES
Run --list-fields to see all. Common fields:
| fieldName | Description |
|---|---|
| title | Paper title |
| creators | Authors (use --authors for new items) |
| date | Publication date (YYYY or YYYY-MM-DD) |
| publicationTitle | Journal name |
| DOI | Digital Object Identifier |
| url | Web URL |
| abstractNote | Abstract |
| tags | Tags (use --add-tag instead) |
| volume | Volume number |
| issue | Issue number |
| pages | Page range |
| publisher | Publisher |
| ISBN | ISBN |
| ISSN | ISSN |
| journalAbbreviation | Journal abbreviation |
When creating new items, use one of:
journalArticle (default for papers)bookbookSectionconferencePaperthesisreportwebpagenotezotero-browse skill to find the paper's attachment key--backup firstpy -3 scripts/write_items.py --backup "E:\Refer.Hub\zotero.sqlite" \
--add-tag ZL42EGES "NAFLD" "FGF15" "biomarker"
E:\Refer.Hub\backups/--backup — always use it