Agent skill

Obsidian StudyVault Builder

by bevibing in bevibing/tutor-skills

Converts PDFs, text, web pages or a codebase into an Obsidian vault of study notes, practice questions, or a developer onboarding guide.

MITAuto-check: notesKnowledge Management

Install Obsidian StudyVault Builder

skills CLI
$ npx skills add bevibing/tutor-skills --skill tutor-setup -a claude-code

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

GitHub CLI
$ gh skill install bevibing/tutor-skills tutor-setup --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/bevibing/tutor-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/tutor-setup .claude/skills/tutor-setup && 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
tutor-setup
GitHub stars
1.3k
Token cost
~1.9k tokens
SKILL.md length
820 words
Files
5 (incl. references)
Skills in repo
2
Repo updated
First seen
Licence
MIT

At a glance

Converts PDFs, text, web pages or a codebase into an Obsidian vault of study notes, practice questions, or a developer onboarding guide.

  • Works in 5 steps: Check for project markers in CWD → If any marker found → Codebase Mode → If no marker found → Document Mode → …
  • Turning a pile of PDFs or articles into study notes with practice questions
  • SKILL.md covers CWD Boundary Rule (ALL MODES), Mode Detection, Document Mode and Codebase Mode, plus 1 more section
  • Calls brew and apt-get

What it does

This skill turns a set of knowledge sources into a structured Obsidian vault. It first looks at the working directory for project markers such as package.json, pyproject.toml or a Makefile, and if it finds one it switches into Codebase Mode to build an onboarding vault for a new developer; otherwise it runs Document Mode, which works from PDFs, plain text, Markdown, HTML or EPUB files already sitting in that directory.

In Document Mode it converts each PDF to text with `pdftotext` rather than reading the PDF directly, reads the cover page, table of contents and sample pages of every source so it does not guess topics from filenames alone, maps each file to the actual topics and page ranges it covers, and only then builds a topic hierarchy and study notes with practice questions from templates. In Codebase Mode it follows a separate workflow and template set meant for onboarding a new developer instead.

It only reads and writes inside the current working directory and its subdirectories, asking you to copy in files from elsewhere first, and it relies on `pdftotext` (via poppler) being installed for PDF extraction.

When your agent uses it

  • Turning a pile of PDFs or articles into study notes with practice questions
  • Onboarding a new developer into an unfamiliar codebase
  • Building an Obsidian vault from a folder of source documents

Example prompts

  • “Turn the PDFs in this folder into an Obsidian study vault with quiz questions.”
  • “Build a developer onboarding vault for this codebase.”
  • “Make study notes from these lecture PDFs and the syllabus webpage.”

Requirements

  • pdftotext (poppler) for PDF sources
  • Network access for URL sources
  • Pre-approved tools (allowed-tools): Read, Write, Edit, Glob, Grep, Bash, WebFetch

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Check for project markers in CWD
  2. If any marker found → Codebase Mode
  3. If no marker found → Document Mode
  4. Tie-break: If .git/ is the sole indicator and no source code files (*.ts, *.py, *.java, *.go, *.rs, etc.) exist, default to Document Mode.
  5. Announce detected mode and ask user to confirm or override.

What it can do on your machine

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

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Write
    • Edit
    • Glob
    • Grep
    • Bash
    • WebFetch

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • brew
    • apt-get

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

  • Network

    No URLs in SKILL.md.

    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 StudyVault Builder loads about 1.9k tokens when it runs, and up to ~6.9k if it reads all its reference files. Until then it costs about 74 tokens; SKILL.md has 820 words of instructions outside code blocks.

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

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: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Read, Write, Edit, Glob, Grep, Bash, WebFetch

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); files beside SKILL.md are not scanned.

SKILL.md

The full file from bevibing/tutor-skills at commit 397110c, republished under its MIT licence (© bevibing). 820 words, ~1,858 tokens.

Download SKILL.mdSave it as .claude/skills/tutor-setup/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.
name
tutor-setup
description
Transforms knowledge sources into an Obsidian StudyVault. Two modes: (1) Document Mode — PDF/text/web sources → study notes with practice questions. (2) Codebase Mode — source code project → onboarding vault for new developers. Mode is auto-detected based on project markers in CWD.
allowed-tools
Read, Write, Edit, Glob, Grep, Bash, WebFetch
argument-hint
[source-path-or-url]

Tutor Setup — Knowledge to Obsidian StudyVault

CWD Boundary Rule (ALL MODES)

NEVER access files outside the current working directory (CWD). All source scanning, reading, and vault output MUST stay within CWD and its subdirectories. If the user provides an external path, ask them to copy the files into CWD first.

Mode Detection

On invocation, detect mode automatically:

  1. Check for project markers in CWD:
    • package.json, pom.xml, build.gradle, Cargo.toml, go.mod, Makefile, *.sln, pyproject.toml, setup.py, Gemfile
  2. If any marker found → Codebase Mode
  3. If no marker found → Document Mode
  4. Tie-break: If .git/ is the sole indicator and no source code files (*.ts, *.py, *.java, *.go, *.rs, etc.) exist, default to Document Mode.
  5. Announce detected mode and ask user to confirm or override.

Document Mode

Transforms knowledge sources (PDF, text, web, epub) into study notes. Templates: templates.md

Phase D1: Source Discovery & Extraction
  1. Auto-scan CWD for **/*.pdf, **/*.txt, **/*.md, **/*.html, **/*.epub (exclude node_modules/, .git/, dist/, build/, StudyVault/). Present for user confirmation.
  2. Extract text (MANDATORY tools):
    • PDF → pdftotext CLI ONLY (run via Bash tool). NEVER use the Read tool directly on PDF files — it renders pages as images and wastes 10-50x more tokens. Convert to .txt first, then Read the .txt file.
      bash
      pdftotext "source.pdf" "/tmp/source.txt"
    • If pdftotext is not installed, install it first: brew install poppler (macOS) or apt-get install poppler-utils (Linux).
    • URL → WebFetch
    • Other formats (.md, .txt, .html) → Read directly.
  3. Read extracted .txt files — understand scope, structure, depth. Work exclusively from the converted text, never from the raw PDF.
  4. Source Content Mapping (MANDATORY for multi-file sources):
    • Read cover page + TOC + 3+ sample pages from middle/end for EVERY source file
    • NEVER assume content from filename — file numbering often ≠ chapter numbering
    • Build verified mapping: { source_file → actual_topics → page_ranges }
    • Flag non-academic files and missing sources
    • Present mapping to user for verification before proceeding
Phase D2: Content Analysis
  1. Identify topic hierarchy — sections, chapters, domain divisions.
  2. Separate concept content vs practice questions.
  3. Map dependencies between topics.
  4. Identify key patterns — comparisons, decision trees, formulas.
  5. Full topic checklist (MANDATORY) — every topic/subtopic listed. Drives all subsequent phases.

Equal Depth Rule: Even a briefly mentioned subtopic MUST get a full dedicated note supplemented with textbook-level knowledge.

  1. Classification completeness: When source enumerates categories ("3 types of X"), every member gets a dedicated note. Scan for: "types of", "N가지", "categories", "there are N".
  2. Source-to-note cross-verification (MANDATORY): Record which source file(s) and page range(s) cover each topic. Flag untraceable topics as "source not available".
Phase D3: Tag Standard

Define tag vocabulary before creating notes:

  • Format: English, lowercase, kebab-case (e.g., #data-hazard)
  • Hierarchy: top-level → domain → detail → technique → note-type
  • Registry: Only registered tags allowed. Detail tags co-attach parent domain tag.
Phase D4: Vault Structure

Create StudyVault/ with numbered folders per templates.md. Group 3-5 related concepts per file.

Phase D5: Dashboard Creation

Create 00-Dashboard/: MOC, Quick Reference, Exam Traps. See templates.md.

  • MOC: Topic Map + Practice Notes + Study Tools + Tag Index (with rules) + Weak Areas (with links) + Non-core Topic Policy
  • Quick Reference: every heading includes → [[Concept Note]] link; all key formulas
  • Exam Traps: per-topic trap points in fold callouts, linked to concept notes
Show full SKILL.md (304 more words)Show less
Phase D6: Concept Notes

Per templates.md. Key rules:

  • YAML frontmatter: source_pdf, part, keywords (MANDATORY)
  • source_pdf MUST match verified Phase D1 mapping — never guess from filename
  • If unavailable: source_pdf: 원문 미보유
  • [[wiki-links]], callouts ([!tip], [!important], [!warning]), comparison tables > prose
  • ASCII diagrams for processes/flows/sequences
  • Simplification-with-exceptions: general statements must note edge cases
Phase D7: Practice Questions

Per templates.md. Key rules:

  • Every topic folder MUST have a practice file (8+ questions)
  • Active recall: answers use > [!answer]- 정답 보기 fold callout
  • Patterns use > [!hint]- / > [!summary]- fold callouts
  • Question type diversity: ≥60% recall, ≥20% application, ≥2 analysis per file
  • ## Related Concepts with [[wiki-links]]
Phase D8: Interlinking
  1. ## Related Notes on every concept note
  2. MOC links to every concept + practice note
  3. Cross-link concept ↔ practice; siblings reference each other
  4. Quick Reference sections → [[Concept Note]] links
  5. Weak Areas → relevant note + Exam Traps; Exam Traps → concept notes
Phase D9: Self-Review (MANDATORY)

Verify against quality-checklist.md Document Mode section. Fix and re-verify until all checks pass.


Codebase Mode

Generates a new-developer onboarding StudyVault from a source code project. Full workflow: codebase-workflow.md Templates: codebase-templates.md

Phase Summary
PhaseNameKey Action
C1Project ExplorationScan files, detect tech stack, read entry points, map directory layout
C2Architecture AnalysisIdentify patterns, trace request flow, map module boundaries and data flow
C3Tag StandardDefine #arch-*, #module-*, #pattern-*, #api-* tag registry
C4Vault StructureCreate StudyVault/ with Dashboard, Architecture, per-module, DevOps, Exercises folders
C5DashboardMOC (Module Map + API Surface + Getting Started + Onboarding Path) + Quick Reference
C6Module NotesPer-module notes: Purpose, Key Files, Public Interface, Internal Flow, Dependencies
C7Onboarding ExercisesCode reading, configuration, debugging, extension exercises (5+ per major module)
C8InterlinkingCross-link modules, architecture ↔ implementations, exercises ↔ modules
C9Self-ReviewVerify against quality-checklist.md Codebase Mode section

See codebase-workflow.md for detailed per-phase instructions.


Language

  • Match source material language (Korean → Korean notes, etc.)
  • Tags/keywords: ALWAYS English

© bevibing, 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 4 other files (references) in skills/tutor-setup of bevibing/tutor-skills.

  • SKILL.md
  • references/codebase-templates.md
  • references/codebase-workflow.md
  • references/quality-checklist.md
  • references/templates.md

Open the folder on GitHubat commit 397110c

Compare with similar skills

Obsidian StudyVault Builder 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 StudyVault Builder compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Obsidian StudyVault Builder this skillbevibing/tutor-skills1.3k—~1.9kAutomated safety check: NotesMIT
Second BrainNicholasSpisak/second-brain7361 repos~1.5kAutomated safety check: NotesNone
Obsidian Canvas BoardsAgriciDaniel/claude-obsidian15k—~1.4kAutomated safety check: PassMIT
Obsidian CLI Read TransportAgriciDaniel/claude-obsidian15k1 repos~762Automated safety check: PassMIT
Swarmvaultswarmclawai/swarmvault708—~6.1kAutomated safety check: PassMIT
Cascading Goal Trackerballred/obsidian-claude-pkm1.9k—~1.5kAutomated safety check: PassMIT

Similar skills

  • Second Brain

    NicholasSpisak/second-brain

    Set up a new Obsidian knowledge base with the LLM Wiki pattern.

    736 GitHub starsUsed in 1 repo~1.5k tokens
    Knowledge ManagementAuto-check: notes
  • Obsidian Canvas Boards

    AgriciDaniel/claude-obsidian

    Creates, inspects and updates Obsidian JSON Canvas boards in a vault, with text, file, link, group and edge nodes, using safe recoverable edits.

    15k GitHub stars~1.4k tokensUpdated 27 days ago
    Knowledge ManagementAuto-check passed
  • Obsidian CLI Read Transport

    AgriciDaniel/claude-obsidian

    Detects and uses the official Obsidian command-line interface for read-only vault access, falling back to direct file reads, while all mutations stay on a separate transaction core.

    15k GitHub starsUsed in 1 repo~762 tokens
    Knowledge ManagementAuto-check passed
  • Swarmvault

    swarmclawai/swarmvault

    Use SwarmVault when the user needs a local-first knowledge vault that writes durable markdown, graph, search, dashboard, review, chat-session, context-pack, task-ledger, static AI export, retrieval…

    708 GitHub stars~6.1k tokensUpdated 3 mo ago
    Knowledge ManagementAuto-check passed
  • Cascading Goal Tracker

    ballred/obsidian-claude-pkm

    Tracks three-year, yearly, monthly, and weekly goals in linked Markdown files, calculating completion percentages and flagging stalled goals.

    1.9k GitHub stars~1.5k tokensUpdated 7 mo ago
    Knowledge ManagementAuto-check passed
  • Karpathy Wiki

    SherwinQ/karpathy-wiki

    A skill your agent uses when building or maintaining a personal knowledge base with LLM assistance.

    113 GitHub stars~967 tokensUpdated 5 mo ago
    Knowledge ManagementAuto-check passed

More from bevibing/tutor-skills

  • StudyVault Quiz Tutor

    bevibing/tutor-skills

    Quizzes you on the notes in an Obsidian StudyVault, tracks proficiency per concept and drills weak areas in four-question rounds.

    1.3k GitHub stars~1.4k tokensUpdated 7 mo ago
    Auto-check passed

Works with

Questions about Obsidian StudyVault Builder

What does Obsidian StudyVault Builder do?

Converts PDFs, text, web pages or a codebase into an Obsidian vault of study notes, practice questions, or a developer onboarding guide. This skill turns a set of knowledge sources into a structured Obsidian vault.toml or a Makefile, and if it finds one it switches into Codebase Mode to build an onboarding vault for a new developer; otherwise it runs Document Mode, which works from PDFs, plain text, Markdown, HTML or EPUB files already sitting in that directory.

When should I use Obsidian StudyVault Builder?

Obsidian StudyVault Builder fits situations like: turning a pile of PDFs or articles into study notes with practice questions; onboarding a new developer into an unfamiliar codebase; building an Obsidian vault from a folder of source documents.

How do I install Obsidian StudyVault Builder in Claude Code?

Run `npx skills add bevibing/tutor-skills --skill tutor-setup -a claude-code`. Or copy the skill folder (skills/tutor-setup in bevibing/tutor-skills) into .claude/skills/tutor-setup in your project. Claude Code loads it when a task matches its description.

How do I install Obsidian StudyVault Builder in Codex?

Run `npx skills add bevibing/tutor-skills --skill tutor-setup -a codex`. Or copy the skill folder (skills/tutor-setup in bevibing/tutor-skills) into .agents/skills/tutor-setup in your project. Codex loads it when a task matches its description.

Can I use Obsidian StudyVault Builder 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 bevibing/tutor-skills --skill tutor-setup -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/tutor-setup, .gemini/skills/tutor-setup, .github/skills/tutor-setup and .opencode/skills/tutor-setup in your project.

What does Obsidian StudyVault Builder need to run?

Going by SKILL.md and its folder, Obsidian StudyVault Builder needs the command-line tools its instructions call (brew and apt-get). Our summary lists: pdftotext (poppler) for PDF sources; Network access for URL sources. Its frontmatter pre-approves these tools: Read, Write, Edit, Glob, Grep, Bash, WebFetch.

Does Obsidian StudyVault Builder access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Obsidian StudyVault Builder safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Obsidian StudyVault Builder use?

Obsidian StudyVault Builder 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 StudyVault Builder use?

About 1.9k tokens (SKILL.md is roughly 7.4k 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.1k tokens, read only when the agent opens those files.

What are the alternatives to Obsidian StudyVault Builder?

Skills that share tags, products or a category with Obsidian StudyVault Builder: Second Brain (NicholasSpisak/second-brain, 736 stars), Obsidian Canvas Boards (AgriciDaniel/claude-obsidian, 15k stars), Obsidian CLI Read Transport (AgriciDaniel/claude-obsidian, 15k stars) and Swarmvault (swarmclawai/swarmvault, 708 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Obsidian StudyVault Builder?

bevibing (a GitHub organization) maintains it in bevibing/tutor-skills, which has 1,333 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on February 28, 2026.

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