From academic-research
Verwende diesen Skill wenn der User ein Buch / eine Monografie / einen Sammelband verarbeiten möchte. Trigger: "Buch", "Monografie", "Sammelband", "Bücher verarbeiten", "Sammelband prüfen / pruefen", "Kapitel von ...", ISBN-Pattern (\d{3}-\d{1,5}-\d{1,7}-\d{1,7}-\d), Springer-DOI (10.1007/978-). Löst ISBN/Titel/DOI via DNB + OpenLibrary + DOAB auf und legt CSL-JSON im Vault an. Unterstützt "Monografie / Sammelband" als gleichwertige Buchtypen.
How this skill is triggered — by the user, by Claude, or both
Slash command
/academic-research:book-handlerThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
> **Gemeinsames Preamble laden:** Lies `skills/_common/preamble.md`
Gemeinsames Preamble laden: Lies
skills/_common/preamble.mdund befolge alle dort definierten Blöcke (Vorbedingungen, Keine Fabrikation, Aktivierung, Abgrenzung), bevor du mit diesem Skill-spezifischen Inhalt fortfährst.
Indexiert Bücher und Kapitel analog zu Artikeln. Liefert CSL-JSON mit
type: book | chapter, Herausgeber-Array und Seitenangaben. Prüft
DOAB/OAPEN auf Open-Access-Verfügbarkeit.
Schneidet keine Kapitel aus PDFs (F2.2), berechnet kein Seitenmapping
(F2.3), führt keine OCR durch (F2.4).
Zitationsformatierung: citation-extraction.
Aktiviert sich bei:
\d{3}-\d{1,5}-\d{1,7}-\d{1,7}-\d10.1007/978-python scripts/book_resolve.py --isbn {isbn}
python scripts/book_resolve.py --title "{titel}"
python scripts/book_resolve.py --doi {doi}
Output: CSL-JSON (type=book|chapter). API-Quellen: ${CLAUDE_PLUGIN_ROOT}/skills/book-handler/references/sources.md.
vault.add_paper(
paper_id = "{citekey}",
csl_json = "{csl_json_string}",
isbn = "{isbn}",
editor = "{editor_json}",
chapter = "{kapitel_nr}",
page_first = {seite_von},
page_last = {seite_bis},
container_title = "{sammelband_titel}"
)
Falls pdf_path gesetzt:
python scripts/page_offset.py {pdf_path}
Ergebnis via vault.set_page_offset({citekey}, {offset}) speichern.
Falls book_resolve.py ein URL-Feld liefert (DOAB/OAPEN):
pdf_path im Vault-EintragNach erfolgreichem Vault-Eintrag dem User anbieten:
chunk_pdf.pyfrom pdf import detect_needs_ocr
if detect_needs_ocr(pdf_path):
# User fragen:
# "Scan-PDF erkannt: wenig Text auf Stichproben-Seiten.
# OCR ausführen? (~30 s/Seite, lokal via ocrmypdf) [j/n]"
# Bei Zustimmung:
from ocr import run_ocrmypdf
run_ocrmypdf(pdf_path, pdf_path_ocr)
vault.set_ocr_done(paper_id)
vault.update_pdf_path(paper_id, pdf_path_ocr)
Buch indexiert: {titel} ({year})
- paper_id: {citekey}
- type: {type}
- ISBN: {isbn}
- Vault: vault.get_paper("{citekey}")
[- OA-PDF: {url}]
Gut: User gibt ISBN 978-3-446-46103-1 an.
book-handler führt book_resolve.py --isbn 9783446461031 aus,
erhält CSL-JSON (type=book, title, author, publisher, year),
legt Vault-Eintrag an, bestätigt dem User.
Schlecht: Metadaten ohne API-Aufruf erfinden -- VERBOTEN.
npx claudepluginhub ahlerjam/academic-researchGuides completion of development work by verifying tests, detecting environment, and presenting structured options for merge, PR, or cleanup.
Guides creation and editing of skills using test-driven development with pressure scenarios and subagents to verify agent compliance.
Dispatches multiple subagents concurrently for independent tasks without shared state. Use when facing 2+ unrelated failures or subsystems that can be investigated in parallel.