Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Zotero utility plugin for keyboard shortcuts and batch editing
.claude/skills/brycewang-stanford-zutilo-guide/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 20% | 0% |
| case-04 | ✗→✓ | ▲ Improved | -25% | 0% |
| case-07 | ✗→✓ | ▲ Improved | -50% | 0% |
| case-08 | ✗→✓ | ▲ Improved | -64% | 0% |
| case-10 | ✗→✓ | ▲ Improved | -78% | 0% |
Zutilo is a Zotero utility plugin that adds keyboard shortcuts, batch editing capabilities, and clipboard operations for efficient library management. It enables power-user workflows — copying/pasting tags between items, batch-editing fields, assigning keyboard shortcuts to any Zotero action, and quick item manipulation. Essential for researchers managing large collections who need speed and efficiency.
bash# Download .xpi from GitHub releases # Zotero 7: Tools → Add-ons → Install Add-on From File
markdown### Tag Management - **Copy tags** from selected item(s) - **Paste tags** to selected item(s) - **Remove tags** from selected item(s) by clipboard - Supports multiple items simultaneously ### Field Operations - Copy creator (author) information - Paste creators to other items - Copy item fields to clipboard - Batch copy/paste between items ### Related Items - Copy related item links - Paste related items in bulk - Quick-link items as related
markdown### Configurable Shortcuts Zutilo lets you assign keyboard shortcuts to: - Copy/paste tags - Copy/paste related items - Edit item info - Open attachment - Show/hide panes - Merge duplicates - Any Zotero menu action ### Common Shortcuts Setup Ctrl+Shift+C → Copy tags Ctrl+Shift+V → Paste tags Ctrl+Shift+R → Copy related items Alt+E → Edit item Alt+O → Open first attachment
markdown### Batch Tag Editing 1. Select multiple items (Ctrl+Click or Shift+Click) 2. Zutilo → Paste Tags (applies to all selected) 3. Or: Zutilo → Remove Tags (removes from all selected) ### Batch Field Editing - Modify item type for multiple items - Batch-update a field value - Copy field from one item, paste to many ### Item Manipulation - Merge items (combine metadata) - Relate items in batch - Move items between collections
markdown### Preferences (Edit → Preferences → Zutilo) **Shortcut Configuration:** - Each Zutilo function can have a keyboard shortcut - Shortcuts: single key, Ctrl+key, or Ctrl+Shift+key - Avoid conflicts with existing Zotero shortcuts **Context Menu:** - Show/hide Zutilo items in right-click menu - Configure which operations appear - Group by category (tags, fields, related) **Behavior:** - Tag paste mode: append (default) or replace - Clipboard format: plain text or JSON - Confirm before batch operations: on/off
markdown### Organize by Reading Status 1. Create tag set: #to-read, #reading, #done 2. Select papers to read → Ctrl+Shift+V (paste #to-read) 3. As you finish → Copy #done tag → Select item → Paste ### Bulk Relate Papers 1. Select all papers on a topic 2. Zutilo → Relate Selected Items 3. All items now linked as related in Zotero ### Migrate Tags 1. Select items with old tag 2. Copy tags → modify in text editor → Paste new tags 3. Remove old tags in batch
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→pass | 13,767 | 28,966 | +110% | 1 | 1 | 0% | 2,819 | 3,392 | +20% | 0 | 0 | — |
case-02 | fail→fail | 23,998 | 17,309 | -28% | 1 | 1 | 0% | 3,702 | 3,896 | +5% | 0 | 0 | — |
case-03 | fail→fail | 23,992 | 15,908 | -34% | 1 | 1 | 0% | 3,561 | 3,779 | +6% | 0 | 0 | — |
case-04 | fail→pass | 16,024 | 7,701 | -52% | 1 | 1 | 0% | 2,701 | 2,033 | -25% | 0 | 0 | — |
case-05 | fail→fail | 8,865 | 8,834 | -0% | 1 | 1 | 0% | 1,660 | 2,550 | +54% | 0 | 0 | — |
case-06 | fail→fail | 6,673 | 7,185 | +8% | 1 | 1 | 0% | 1,201 | 2,067 | +72% | 0 | 0 | — |
case-07 | fail→pass | 15,520 | 2,190 | -86% | 1 | 1 | 0% | 2,309 | 1,162 | -50% | 0 | 0 | — |
case-08 | fail→pass | 19,943 | 8,162 | -59% | 1 | 1 | 0% | 3,440 | 1,233 | -64% | 0 | 0 | — |
case-09 | pass→pass | 7,869 | 4,396 | -44% | 1 | 1 | 0% | 1,118 | 1,631 | +46% | 0 | 0 | — |
case-10 | fail→pass | 37,316 | 2,663 | -93% | 1 | 1 | 0% | 5,690 | 1,231 | -78% | 0 | 0 | — |
case-11 | pass→pass | 8,399 | 4,335 | -48% | 1 | 1 | 0% | 1,696 | 1,476 | -13% | 0 | 0 | — |
case-12 | fail→pass | 11,936 | 10,109 | -15% | 1 | 1 | 0% | 2,094 | 2,353 | +12% | 0 | 0 | — |
case-13 | pass→pass | 12,929 | 11,502 | -11% | 1 | 1 | 0% | 2,059 | 2,636 | +28% | 0 | 0 | — |
case-14 | pass→pass | 16,846 | 13,665 | -19% | 1 | 1 | 0% | 2,552 | 3,078 | +21% | 0 | 0 | — |
case-15 | pass→pass | 14,696 | 2,972 | -80% | 1 | 1 | 0% | 2,176 | 1,410 | -35% | 0 | 0 | — |
case-16 | pass→pass | 11,788 | 12,429 | +5% | 1 | 1 | 0% | 2,205 | 2,669 | +21% | 0 | 0 | — |
case-17 | fail→pass | 8,352 | 5,460 | -35% | 1 | 1 | 0% | 1,277 | 1,755 | +37% | 0 | 0 | — |
case-18 | pass→fail | 15,554 | 16,866 | +8% | 1 | 1 | 0% | 3,057 | 3,248 | +6% | 0 | 0 | — |
case-19 | pass→pass | 11,660 | 6,854 | -41% | 1 | 1 | 0% | 1,721 | 2,304 | +34% | 0 | 0 | — |
case-20 | pass→pass | 13,979 | 14,408 | +3% | 1 | 1 | 0% | 2,608 | 3,611 | +38% | 0 | 0 | — |
case-21 | pass→pass | 21,916 | 11,288 | -48% | 1 | 1 | 0% | 2,191 | 2,847 | +30% | 0 | 0 | — |
case-22 | pass→pass | 8,139 | 12,257 | +51% | 1 | 1 | 0% | 1,436 | 2,576 | +79% | 0 | 0 | — |
case-23 | pass→pass | 20,058 | 15,098 | -25% | 1 | 1 | 0% | 4,047 | 4,023 | -1% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted. The headline lift of +26 percentage points is the difference between those two pass rates over the 23 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.