Transform PDF Collections into an Interactive AI Knowledge Graph
This guide walks you step-by-step through setting up an OKF (Open Knowledge Format) bundle using Claude Code in your terminal, while using Obsidian as a real-time interactive visual graph browser.
Customize Prompt Variables
Type your specific folder name below to automatically update all prompt templates on this page.
Directory Structure & Obsidian Setup
Set up your vault directory structure. The okf/
folder acts as your centralized knowledge bundle, keeping
generated summaries distinct from your raw PDF files.
Configure Obsidian Settings
- Open Obsidian and select "Open folder as vault" → Choose
MedEd-Vault. - Go to Settings (Cmd/Ctrl + ,) → Files and links.
- Set New link format to Relative path to file.
- Toggle Detect all file extensions to ON so PDFs are visible in your sidebar.
Execute Batch Generation via Claude Code
Open your system terminal, navigate to your vault folder, launch Claude Code, and paste the sequential prompts below.
cd /path/to/MedEd-Vault && claude
Obsidian Visual Graph & Color Rules
Open Graph View in Obsidian (Cmd/Ctrl + G). Click the Gear Icon (Display Settings) to customize your visual view:
Paste this string into the Graph Filters → Search box to eliminate hub starbursts and root file noise:
-[type: index] -file:CLAUDE.md -path:.claude
Click New Group under the Groups tab and enter these exact queries:
line:("type: article")
line:("type: concept")
Pro-Tip: Globally Exclude CLAUDE.md from Obsidian
Go to Settings → Files and links
→ Excluded files → Add CLAUDE.md.
This completely hides the configuration file from your visual
graph and quick switcher while allowing Claude Code in terminal
to read it natively.
Incremental Batch Updates
When you drop new PDFs into
MedEd/, you
don't need to process them manually. Save this workflow file
inside your vault as CLAUDE.md:
Next time you add papers, simply open terminal and type:
update OKF in Claude Code.
Backing Up Your Vault to GitHub
Keep your knowledge graph safe and version-controlled on GitHub.
Create a .gitignore file first to prevent temporary
cache files from cluttering your commit history.