Analysis updated 2026-05-18
Automatically classify and tag hundreds of unread Zotero papers into the right folders without reviewing each one manually.
Generate AI-written research summaries for every PDF in your Zotero library and save them as structured Obsidian notes.
Build a connected Obsidian knowledge graph from your Zotero library where concepts auto-link across papers.
Keep your Obsidian vault in sync with new Zotero additions by running the full pipeline with a single command.
| edualvarado/obstero | 0-bingwu-0/live-interpreter | 0xkaz/llm-governance-dashboard | |
|---|---|---|---|
| Stars | 2 | 2 | 2 |
| Language | Python | Python | Python |
| Setup difficulty | moderate | moderate | hard |
| Complexity | 3/5 | 2/5 | 4/5 |
| Audience | researcher | general | ops devops |
Figures from each repo's GitHub metadata at analysis time.
Requires a Zotero API key, an Anthropic API key, and generating two personal config JSON files before the first run.
Obstero is a set of Python scripts that connects two research tools: Zotero, a reference manager that stores papers and PDFs, and Obsidian, a note-taking app that links notes together in a graph. The pipeline takes what is in your Zotero library and turns it into a structured, interlinked collection of Obsidian notes, with Claude doing the AI work in the middle. The process runs in three stages. The first stage classifies unclassified Zotero items: it sends each paper's metadata to Claude, which decides what folder the item belongs in and assigns three to five tags. The second stage extracts text from each PDF and asks Claude to write a structured research note covering the paper's core contribution, technical approach, limitations, and potential research or startup angles. That note gets attached to the item in Zotero. The third stage converts the summarized Zotero items into Markdown files in your Obsidian vault, mirroring the same folder structure from Zotero and automatically inserting wiki-style links to concepts you have defined. Safety is built into the default behavior: every stage runs in dry-run mode unless you explicitly pass a --live flag. Each stage also tracks which items it has already processed using internal Zotero tags, so running a stage multiple times never reprocesses the same paper. Setup requires a Zotero account with an API key, an Anthropic API key for Claude, and an existing Obsidian vault folder. You also create two personal configuration files: one that maps your Zotero folder names to their internal IDs, and one that lists the concepts you want auto-linked in Obsidian. Both can be generated automatically by helper scripts included in the project. You can run each stage separately or use an orchestrator script that runs all three in order. If you use Claude Code, the project also includes Claude Code skills that wrap each stage as a named command you can invoke directly from your coding assistant. MIT-licensed.
A three-stage Python pipeline that classifies your Zotero papers with Claude, generates structured research summaries from PDFs, and syncs them as interlinked Markdown notes into your Obsidian vault.
Mainly Python. The stack also includes Python, Zotero API, Claude API.
Use freely for any purpose, including commercial use, as long as you keep the copyright notice.
Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.
Mainly researcher.
This repo across BitVibe Labs
Verify against the repo before relying on details.