Agent skill

Obsidian Paper Vault

by Aperivue in Aperivue/medsci-skills

A skill your agent uses when turning a folder of research PDFs into Obsidian notes, even if Obsidian is not named.

MITAuto-check passedResearch & Science

Install Obsidian Paper Vault

skills CLI
$ npx skills add Aperivue/medsci-skills --skill obsidian-paper-vault -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Aperivue/medsci-skills obsidian-paper-vault --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Aperivue/medsci-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/obsidian-paper-vault .claude/skills/obsidian-paper-vault && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
obsidian-paper-vault
GitHub stars
333
Token cost
~1.6k tokens
SKILL.md length
811 words
Files
13 (incl. scripts, references, assets)
Skills in repo
54
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses when turning a folder of research PDFs into Obsidian notes, even if Obsidian is not named.

  • Works in 5 steps: Resolve the vault layout — ask, do not… → Pre-extract PDF text — always, for any… → Write the notes — subagents in parallel → …
  • Turning a folder of research PDFs into Obsidian notes
  • SKILL.md covers Relationship to /lit-sync, Step 0: Resolve the vault…, Step 1: Pre-extract PDF text —… and Step 2: Write the notes —…, plus 2 more sections
  • Runs Python scripts from its folder; calls python3 and pip

What it does

Obsidian Paper Vault is an agent skill from Aperivue/medsci-skills. Use when turning a folder of research PDFs into Obsidian notes, even if Obsidian is not named. Writes one templated literature note per paper and extracts cross-linked atomic concept notes, never overwriting existing ones. A .bib or Zotero library is /lit-sync.

Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 18 other files, including scripts, reference files and assets (for example `assets/example_concept_note.md`, `assets/example_paper_note.md` and `assets/example_queue.md`).

It sits in Research & Science, covering Citation management, Note-taking and PDF. It works with Obsidian and Zotero. The repository describes itself as: Agent Skills for medical research — literature search, reporting-guideline & citation checks, statistics, publication figures, submission. Works with Claude Code, Codex, Cursor &… The licence is MIT.

When your agent uses it

  • Turning a folder of research PDFs into Obsidian notes
  • Even if Obsidian is not named

Example prompts

  • “/obsidian-paper-vault”

Requirements

  • Python 3

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Resolve the vault layout — ask, do not assume
  2. Pre-extract PDF text — always, for any batch
  3. Write the notes — subagents in parallel
  4. Track progress in a queue file
  5. Extract concept notes once 10+ literature notes exist

What it can do on your machine

Read from SKILL.md and the folder at commit 3b14ae2. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • python3
    • pip

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use pip, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Obsidian Paper Vault loads about 1.6k tokens when it runs, and up to ~7.2k if it reads all its reference files. Until then it costs about 71 tokens; SKILL.md has 811 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~71
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~7.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from Aperivue/medsci-skills at commit 3b14ae2, republished under its MIT licence (© Aperivue). 811 words, ~1,556 tokens.

Download SKILL.mdSave it as .claude/skills/obsidian-paper-vault/SKILL.md (or your agent's skills folder). This skill also uses 12 other files; get the full folder from GitHub.
name
obsidian-paper-vault
description
Use when turning a folder of research PDFs into Obsidian notes, even if Obsidian is not named. Writes one templated literature note per paper and extracts cross-linked atomic concept notes, never overwriting existing ones. A .bib or Zotero library is /lit-sync.
metadata.triggers
obsidian-paper-vault, paper vault, second brain, PDF를 Obsidian 노트로, 논문 요약 노트, 논문 노트 만들어줘, 이 폴더의 PDF 정리해줘, batch process papers, add papers to vault, extract…

Obsidian Paper Vault

Converts a folder of research PDFs into a two-layer Obsidian vault: literature notes (one per paper, templated) and atomic concept notes (synthesized across papers).

Relationship to /lit-sync

Both skills write literature and concept notes into the same vault folders. They enter from opposite ends and must not overwrite each other.

/lit-syncobsidian-paper-vault
InputZotero collection / refs.biba folder of PDFs
Note keycitekeyshort descriptive title
Ownsmanuscript/_src/refs.bibextracted-text cache

Never overwrite an existing note. If a note for the paper already exists (by title, DOI, or citekey), report it and skip. When both skills are in play, /lit-sync notes are the bibliographic spine; this skill's notes are the read-through summaries.

Step 0: Resolve the vault layout — ask, do not assume

Establish three paths before writing anything:

  1. Vault root — from the user, or $OBSIDIAN_VAULT. Never guess a home-directory path.
  2. Literature notes folder — default Literature/. If the vault already has a folder serving this role (02_research/논문/, Papers/, 文献/), honor the existing layout rather than imposing the default.
  3. Concept notes folder — default Concepts/, same honor-what-exists rule.

For a vault whose structure is Korean, see references/locale/ko/note_templates.md — folder names and note headings in Korean, opt-in.

Also confirm PyMuPDF is available: python3 -c "import fitz; print(fitz.__version__)" (install with pip install PyMuPDF). Text extraction caches to ~/.local/cache/paper-vault-texts/ unless the user names another location.

Step 1: Pre-extract PDF text — always, for any batch

bash
python3 "${CLAUDE_SKILL_DIR}/scripts/extract_pdfs.py" <pdf_folder> <text_cache_folder> [max_pages]

Defaults to 12 pages, which covers abstract through discussion for most papers. If notes come out generic, the text file is abstract-only or its OCR is poor: re-extract with more pages or check the source PDF. A PDF with no extractable text (an image-only scan) is reported as FAILED … (needs OCR) and gets no .txt; OCR it or read it interactively, never batch it.

Never hand a PDF path to a subagent. A subagent that cannot open a file does not report failure — it writes the note from training data, and the result is a plausible note with invented numbers. Pass the .txt paths instead. Single-paper interactive work may read the PDF directly (the Read tool handles PDFs); batches may not.

Step 2: Write the notes — subagents in parallel

Split a batch across parallel subagents, a handful of papers each (per-agent note quality drops when one agent carries too many), and group papers thematically per agent so each one can spot recurring concepts.

Give each subagent: its assigned text-file paths with destination filenames, the template from references/templates.md verbatim, the list of concept notes that already exist, and the prohibition on inventing anything. references/subagent-prompt.md holds the full prompt.

Every note, batch or single, follows these rules:

  1. Numbers, authors, and dates come from the extracted text only — never from model knowledge, however familiar the paper, because well-known papers drift between versions and that is exactly where invented values look most plausible.
  2. What the text does not state, the note does not claim. Write "not stated in the extracted text" instead of filling the gap.
  3. Preserve the PDF filename exactly in ![[filename.pdf]]: take the text filename and swap .txt for .pdf, character for character (embeds are sensitive to case, spaces, and punctuation).
  4. Match the frontmatter field names in references/templates.md. Dataview queries break on a renamed field, and they break by returning an empty table, not an error.
  5. Use the existing tag vocabulary (references/tag-vocabulary.md) rather than inventing top-level tags.
  6. Name notes with 3–5 keyword concepts, not the PDF's full title and not paper_001.
Show full SKILL.md (234 more words)Show less

See assets/example_paper_note.md when unsure about literature-note formatting.

Gate — before a batch is accepted: spot-check two notes against their text files (one sample size, one effect estimate). If either value is absent from the text, stop the batch and report it rather than continuing. This gate is the user's call to waive, not the skill's.

Step 3: Track progress in a queue file

Keep PAPER_QUEUE.md in the vault with per-paper status (done / pending / skipped / in progress) so a 200-paper vault survives across sessions. Update it after each batch.

Step 4: Extract concept notes once 10+ literature notes exist

A phrase earns a concept note when it appears in 3+ notes, carries pedagogical value, and is treated differently by different papers. Model names, datasets, and journals are entities, not concepts. See references/concept-extraction.md for the full criteria, the frequency scan, and the seedling/growing/mature lifecycle, and assets/example_concept_note.md for the format.

Roughly one new concept note per 5–7 literature notes is healthy. Faster than that is concept inflation, and it shows up as dozens of stub notes the user never edits.

Gate — before concept notes are presented as done: concept notes ship as 🌱Seedling with the definition marked as a placeholder, and require user review before they count as the reader's own. Say so explicitly when handing them over.

Read references/workflow.md when the user asks how the layers fit together or why the skill will not write certain notes.

© Aperivue, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 12 other files (scripts, references, assets) in skills/obsidian-paper-vault of Aperivue/medsci-skills.

  • SKILL.md
  • assets/example_concept_note.md
  • assets/example_paper_note.md
  • assets/example_queue.md
  • references/concept-extraction.md
  • references/locale/ko/note_templates.md
  • references/subagent-prompt.md
  • references/tag-vocabulary.md
  • references/templates.md
  • references/workflow.md
  • scripts/extract_pdfs.py
  • skill.yml
  • tests/test_extract_pdfs.py

Open the folder on GitHubat commit 3b14ae2

Compare with similar skills

Obsidian Paper Vault next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Obsidian Paper Vault compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Obsidian Paper Vault this skillAperivue/medsci-skills333—~1.6kAutomated safety check: PassMIT
Deeppapernote917Dhj/DeepPaperNote1.2k1 repos~5.9kAutomated safety check: PassMIT
Zotero Obsidian BridgeGalaxy-Dawn/claude-scholar5.7k—~514Automated safety check: PassMIT
Ref Downloaderltczding-gif/ref-downloader139—~5.9kAutomated safety check: PassMIT
Research Vault Literature Retrievalcheneternity/Research-Vault-Literature-Retrieval292—~2.3kAutomated safety check: PassNone
Experiment Detail Comparatoraipoch/medical-research-skills1.9k—~3.3kAutomated safety check: NotesMIT

Similar skills

  • Deeppapernote

    917Dhj/DeepPaperNote

    Generate a high-quality deep-reading note for a single paper and write it into an Obsidian-style vault.

    1.2k GitHub starsUsed in 1 repo~5.9k tokens
    Research & ScienceAuto-check passed
  • Zotero Obsidian Bridge

    Galaxy-Dawn/claude-scholar

    Moves papers from Zotero into an Obsidian project knowledge base as source notes, literature synthesis and writing outputs, with evidence records behind every promoted claim.

    5.7k GitHub stars~514 tokensUpdated 18 days ago
    Research & ScienceAuto-check passed
  • Ref Downloader

    ltczding-gif/ref-downloader

    A skill your agent uses when the user asks to batch-download academic PDFs with ref-downloader — either ALL references of one paper (Mode A: DOI or PDF input), OR a custom batch of papers (Mode B…

    139 GitHub stars~5.9k tokensUpdated 4 mo ago
    Research & ScienceAuto-check passed
  • Research Vault Literature Retrieval

    cheneternity/Research-Vault-Literature-Retrieval

    ResearchVault 文献知识问题的默认检索技能。先从当前 Vault 的 Analytical Notes 定位相关论文,再按需要定向进入对应 Fulltext,必要时回到 Zotero PDF 验证。若用户明确要求基于当前项目文件检索,优先执行严格的项目文件检索后再回答。纯 Skill、代码、Git、文件整理和转换工具调试任务不自动触发文献检索。

    292 GitHub stars~2.3k tokensUpdated 11 days ago
    Research & ScienceAuto-check passed
  • Experiment Detail Comparator

    aipoch/medical-research-skills

    Compare experimental method details between two Zotero PDF papers, identify protocol differences (ratios, dosages, timing, conditions), search supporting literature to explain why they differ, and…

    1.9k GitHub stars~3.3k tokensUpdated 24 days ago
    Research & ScienceAuto-check: notes
  • Annotate Paper

    54yyyu/zotero-mcp

    Read the open paper and write study annotations into its PDF with zotero-cli - a context box on the title, a four-part summary on the abstract, role-coded abstract highlights, one box per figure…

    5.3k GitHub stars~1.5k tokensUpdated 3 days ago
    Research & ScienceAuto-check passed

More from Aperivue/medsci-skills

All 54 skills in this repo
  • Clean Data

    Aperivue/medsci-skills

    A skill your agent uses when a clinical CSV/Excel dataset needs profiling and cleaning before analysis (missing values, outliers, duplicates, type mismatches).

    333 GitHub stars~2k tokensUpdated 5 days ago
    Auto-check passed
  • Design Study

    Aperivue/medsci-skills

    A skill your agent uses when checking a radiology or medical AI study design before drafting or submission.

    333 GitHub stars~3.9k tokensUpdated 5 days ago
    Auto-check passed
  • Fill Icmje Coi

    Aperivue/medsci-skills

    A skill your agent uses when each author needs an ICMJE Conflict of Interest disclosure form (coidisclosure.docx) for submission.

    333 GitHub stars~1.5k tokensUpdated 5 days ago
    Auto-check passed
  • Fill Protocol

    Aperivue/medsci-skills

    A skill your agent uses when an institutional Word form (.doc/.docx IRB protocol, ethics application, grant template) must be filled without breaking its styles, tables, fonts or page layout.

    333 GitHub stars~1.7k tokensUpdated 5 days ago
    Auto-check passed
  • Find Cohort Gap

    Aperivue/medsci-skills

    A skill your agent uses when looking for research topics a longitudinal cohort database can answer (NHIS, UK Biobank, an institutional EMR or registry).

    333 GitHub stars~2.9k tokensUpdated 5 days ago
    Auto-check passed
  • Find Journal

    Aperivue/medsci-skills

    A skill your agent uses when choosing where to submit a manuscript.

    333 GitHub stars~3.4k tokensUpdated 5 days ago
    Auto-check passed

Works with

Questions about Obsidian Paper Vault

What does Obsidian Paper Vault do?

A skill your agent uses when turning a folder of research PDFs into Obsidian notes, even if Obsidian is not named. Obsidian Paper Vault is an agent skill from Aperivue/medsci-skills. Use when turning a folder of research PDFs into Obsidian notes, even if Obsidian is not named.

When should I use Obsidian Paper Vault?

Obsidian Paper Vault fits situations like: turning a folder of research PDFs into Obsidian notes; even if Obsidian is not named.

How do I install Obsidian Paper Vault in Claude Code?

Run `npx skills add Aperivue/medsci-skills --skill obsidian-paper-vault -a claude-code`. Or copy the skill folder (skills/obsidian-paper-vault in Aperivue/medsci-skills) into .claude/skills/obsidian-paper-vault in your project. Claude Code loads it when a task matches its description.

How do I install Obsidian Paper Vault in Codex?

Run `npx skills add Aperivue/medsci-skills --skill obsidian-paper-vault -a codex`. Or copy the skill folder (skills/obsidian-paper-vault in Aperivue/medsci-skills) into .agents/skills/obsidian-paper-vault in your project. Codex loads it when a task matches its description.

Can I use Obsidian Paper Vault in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Aperivue/medsci-skills --skill obsidian-paper-vault -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/obsidian-paper-vault, .gemini/skills/obsidian-paper-vault, .github/skills/obsidian-paper-vault and .opencode/skills/obsidian-paper-vault in your project.

What does Obsidian Paper Vault need to run?

Going by SKILL.md and its folder, Obsidian Paper Vault needs Python for the scripts in its folder and the command-line tools its instructions call (python3 and pip). Our summary lists: Python 3.

Does Obsidian Paper Vault access the network?

SKILL.md contains no URLs. Its commands use pip, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Obsidian Paper Vault safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Obsidian Paper Vault use?

Obsidian Paper Vault is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Obsidian Paper Vault use?

About 1.6k tokens (SKILL.md is roughly 6.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 5.6k tokens, read only when the agent opens those files.

What are the alternatives to Obsidian Paper Vault?

Skills that share tags, products or a category with Obsidian Paper Vault: Deeppapernote (917Dhj/DeepPaperNote, 1.2k stars), Zotero Obsidian Bridge (Galaxy-Dawn/claude-scholar, 5.7k stars), Ref Downloader (ltczding-gif/ref-downloader, 139 stars) and Research Vault Literature Retrieval (cheneternity/Research-Vault-Literature-Retrieval, 292 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Obsidian Paper Vault?

Aperivue (a GitHub organization) maintains it in Aperivue/medsci-skills, which has 333 GitHub stars. The repository holds 54 skills in this directory. The repository was last updated on October 5, 2026.

Source: Aperivue/medsci-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.