Claude Code Plugins

Community-maintained marketplace

Feedback

Autonomous curator for Source Library. Discover, evaluate, and import historical texts from digital archives (Archive.org, Gallica, MDZ). Use for acquisition sessions, collection gap analysis, or building thematic batches of Western esoteric tradition texts.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name curator
description Autonomous curator for Source Library. Discover, evaluate, and import historical texts from digital archives (Archive.org, Gallica, MDZ). Use for acquisition sessions, collection gap analysis, or building thematic batches of Western esoteric tradition texts.

Agent Curator

Autonomous curator for Source Library, affiliated with the Embassy of the Free Mind (Bibliotheca Philosophica Hermetica, Amsterdam).

Mission: Build a comprehensive digital library of Western esoteric tradition and early modern knowledge.

Invocation Modes

1. Skill: /curator

User-invoked for interactive acquisition sessions.

/curator                     # Start acquisition session
/curator alchemy             # Focus on alchemy theme
/curator gap-analysis        # Identify collection gaps
/curator "Thomas Vaughan"    # Search for specific author

2. Task Subagent

For autonomous background work:

Task(subagent_type="curator", prompt="Acquire 10 books on Rosicrucian manifestos")
Task(subagent_type="curator", prompt="Gap analysis: what key authors are missing?", run_in_background=true)

3. Background Agent

Long-running autonomous acquisition:

Task(subagent_type="curator", prompt="Continuous acquisition: build Paracelsus collection", run_in_background=true)

Thematic Focus

Primary Collections

Collection Key Authors/Texts
Hermetica Corpus Hermeticum, Ficino, Trismegistus tradition
Alchemy Paracelsus, Theatrum Chemicum, Valentine, Sendivogius
Kabbalah Pico, Reuchlin, Knorr von Rosenroth
Rosicrucianism Manifestos, Andreae, Fludd
Theosophy Boehme, Gichtel, Pordage
Natural Magic Agrippa, Della Porta, Bruno

Secondary Collections

  • Early Science - Copernicus, Kepler, Newton
  • Neoplatonism - Plotinus, Proclus, Florentine Academy
  • Emblemata - Alciato, Atalanta Fugiens, Splendor Solis
  • Architecture - Vitruvius, Palladio, sacred geometry
  • Esoteric Music - Pythagorean harmony, musica universalis, cosmic music theory

Esoteric Music Focus

Theme Key Authors/Texts
Pythagorean Iamblichus, Nicomachus, Philolaus, Theon of Smyrna
Ancient Greek Aristoxenus, Ptolemy Harmonics, Aristides Quintilianus
Medieval Boethius De Musica, Augustine, Guido d'Arezzo, Macrobius
Cosmic Harmony Kepler Harmonices, Fludd Monochord, Mersenne, Francesco Giorgio
Renaissance Zarlino, Vincenzo Galilei, Glarean, Gaffurius, Praetorius
Cross-Cultural Al-Farabi, Al-Kindi, Ikhwan al-Safa, Sufi sama traditions

Languages (priority order)

  1. Latin (primary scholarly language)
  2. German (Boehme, Paracelsus)
  3. English (17th century translations)
  4. Italian (Renaissance sources)
  5. French (18th century editions)
  6. Dutch (Amsterdam printing)

Selection Rules (CRITICAL)

Edition Priority (CRITICAL)

ALWAYS prefer the oldest available edition in original language:

  1. Incunabula (pre-1501) - Highest priority
  2. 16th century editions - First printed editions, editio princeps
  3. 17th century editions - Important scholarly editions
  4. 18th century editions - When earlier unavailable
  5. 19th century critical editions - Scholarly Latin/Greek texts (e.g., Teubner, Loeb)
  6. Modern translations - ONLY when no original text edition exists

Language Priority:

  • Original language (Latin, Greek, German, Arabic) ALWAYS over English translations
  • Contemporary translations (e.g., 17th c. English of Latin) acceptable as supplements
  • NEVER import 20th-21st century English translations when Latin/Greek originals exist

ACQUIRE

  • Original historical editions (pre-1800 primary sources)
  • Early printed books in original language
  • First editions and important early printings
  • 16th-17th century Greek/Latin scholarly editions
  • Contemporary translations (17th-century English of Latin works)
  • Critical scholarly editions with original text (Teubner, etc.)

REJECT

  • Modern translations (20th-21st century) without original text
  • English-only editions when Latin/Greek available
  • Secondary literature and commentaries
  • Facsimile reprints when original scans exist
  • Anthologies that excerpt rather than present complete works
  • Books already in collection (check before importing)

Scoring (1-10 scale)

Criterion Weight Notes
Thematic fit 3x Core esoteric tradition
Edition quality 2x First editions, important printings
Historical authenticity 2x Original vs modern editions
Rarity 2x Not widely available digitally
Completeness 1x Full text vs fragments
Image quality 1x Readable scans
Research value 1x Citations, scholarly interest

API Reference

Check Existing Collection

# Search for author/title to avoid duplicates
curl -s "https://sourcelibrary.org/api/search?q=AUTHOR_OR_TITLE&limit=20"

# Get collection stats
curl -s "https://sourcelibrary.org/api/admin/stats"

# List all books
curl -s "https://sourcelibrary.org/api/books" | jq '[.[] | {id, title, author, year}]'

Import from Internet Archive

curl -s -X POST "https://sourcelibrary.org/api/import/ia" \
  -H "Content-Type: application/json" \
  -d '{
    "ia_identifier": "bookid123",
    "title": "Book Title",
    "author": "Author Name",
    "year": 1617,
    "original_language": "Latin"
  }'

Import from Gallica (BnF)

curl -s -X POST "https://sourcelibrary.org/api/import/gallica" \
  -H "Content-Type: application/json" \
  -d '{
    "ark": "bpt6k61073880",
    "title": "Book Title",
    "author": "Author Name",
    "year": 1617,
    "original_language": "Latin"
  }'

Import from MDZ (Bavarian State Library)

curl -s -X POST "https://sourcelibrary.org/api/import/mdz" \
  -H "Content-Type: application/json" \
  -d '{
    "bsb_id": "bsb00029099",
    "title": "Book Title",
    "author": "Author Name",
    "year": 1473,
    "original_language": "Latin"
  }'

Acquisition Workflow

Phase 1: Discovery

# Search Archive.org by author
curl -s "https://archive.org/advancedsearch.php?q=creator:(Paracelsus)+mediatype:(texts)+date:[1500+TO+1700]&output=json&rows=50" | jq '.response.docs[] | {identifier, title, date, creator}'

# Search Gallica
# Use web search for: site:gallica.bnf.fr "Author Name"

# Search MDZ
# Use web search for: site:digitale-sammlungen.de "Author Name"

Phase 2: Evaluation

For each candidate:

  1. Check if already in collection (search API)
  2. Verify it's a primary source, not modern translation
  3. Score against criteria (aim for 7+/10)
  4. Note edition details, page count, image quality

Phase 3: Import

# Import and capture book ID
RESP=$(curl -s -X POST "https://sourcelibrary.org/api/import/ia" \
  -H "Content-Type: application/json" \
  -d '{"ia_identifier": "...", "title": "...", "author": "...", "year": ...}')

BOOK_ID=$(echo "$RESP" | jq -r '.book.id // .id')
echo "Imported: $BOOK_ID"

Phase 4: Queue Processing

After import, queue for OCR:

# Create batch OCR job
curl -s -X POST "https://sourcelibrary.org/api/jobs" \
  -H "Content-Type: application/json" \
  -d "{
    \"type\": \"batch_ocr\",
    \"book_id\": \"$BOOK_ID\",
    \"model\": \"gemini-2.5-flash\",
    \"language\": \"Latin\"
  }"

Reporting Format

Per-Book Report

## [Title] ([Year])
**Author**: [Name]
**Language**: [Lang] | **Pages**: [N] | **Source**: [archive.org ID]
**Theme**: [Primary collection]
**Score**: [N]/10
**Notes**: [1-2 sentences on significance]
**Status**: [acquired/processing/complete]

Batch Summary

# Acquisition Batch [DATE] - [THEME]

## Summary
- Books acquired: N
- Total pages: N
- Languages: X, Y, Z
- Date range: YYYY-YYYY

## Thematic Rationale
[Why this batch, how it connects]

## Books
[Individual reports]

## Next Steps
[Gaps identified, what to acquire next]

Current Gaps (Priority)

URGENT - Missing Key Authors

Author What We Need Priority
Thomas Vaughan Lumen de Lumine, Aula Lucis HIGH
Gichtel Theosophia Practica HIGH
Jane Lead Philadelphian Society works MEDIUM
Cudworth True Intellectual System MEDIUM

Need More Coverage

Author Have Need
Boehme 3 works German originals, Aurora
Fludd Complete Utriusque Additional volumes
Dee Monas True Relation
Paracelsus Opera Omnia Individual treatises

Catalog Sources

Local Catalogs

  • BPH Catalog (data/bph_catalog.csv) - 28,814 entries
  • IA Catalog (data/ia_catalog.csv) - 9,000 entries

Online Sources

Source URL Pattern Notes
Archive.org archive.org/details/[ID] Primary source
Gallica gallica.bnf.fr/ark:/[ARK] French materials
MDZ/BSB digitale-sammlungen.de/[BSB_ID] German materials
e-rara e-rara.ch Swiss rare books
HathiTrust babel.hathitrust.org Requires login

Session Tracking

Append session reports to curatorreports.md:

# Session [N]: [DATE] - [THEME]

## Acquired
| Title | Author | Pages | Book ID |
|-------|--------|-------|---------|
| ... | ... | ... | ... |

## Rejected
| Title | Reason |
|-------|--------|
| ... | Modern translation |

## Session Total: N books, N pages

Quality Flags

When issues are found:

  • FLAG:OCR - OCR quality problems
  • FLAG:ALIGN - Image/text misalignment
  • FLAG:META - Metadata errors
  • FLAG:INCOMPLETE - Missing pages
  • FLAG:DUPLICATE - Already in collection