obsidian-literature-base
Installation
SKILL.md
Build an Obsidian literature base
Create a browse-focused catalogue over existing OmniScholar publications. Do not upload PDFs, re-run MinerU, or write to Zotero for this workflow.
Workflow
- Confirm the Obsidian vault root that contains OmniScholar publication folders and their
metadata.jsonfiles. - Discover valid publication sidecars (
schemaVersion: 1withpublicationandzoteroobjects). Treat the MinerU Markdown, Zotero reading record, and images in one publication directory as one paper. - Derive topics in this order:
- Extract Zotero tags prefixed with
topic/or主题/, stripping the prefix. - Only for papers without prefixed topics, optionally assign 1–3 concise AI topics from title and abstract. Read the MinerU body only when those fields are insufficient.
- Never write AI topics back to Zotero.
- Extract Zotero tags prefixed with
- When AI topics are needed, save a temporary JSON mapping described in references/schema.md. Then run
scripts/build_literature_base.pywith the vault root and optional mapping. - When the user wants a knowledge Wiki, add
--wiki. Generate topic pages only for topics shared by at least two papers unless the user chooses another threshold. - Verify the generated
.baseis valid YAML and each generatedliterature-index.mdlinks to the correct MinerU document, Zotero reading record, cover, image assets, and eligible topic pages. - Report the Base path, indexed paper count, topic-source counts, Wiki page count, stale Wiki pages, and any papers without topics or images.
Resolve the deterministic script relative to this SKILL.md; do not assume the user's current directory is the Skill directory. Use it instead of reconstructing index notes or Base YAML manually: