tutor-setup
roundtable02/tutor-skills
Transform PDFs, code, or web sources into an interactive Obsidian StudyVault with practice questions and architecture guides.
What is tutor-setup?
Tutor Setup auto-detects whether you're learning from documents (PDFs, text, web) or onboarding to a codebase, then generates a structured Obsidian vault with concept notes, practice questions, and interlinking. Use it to convert any knowledge source into a self-study system with active recall and spaced repetition support.
- Auto-detect Document Mode (PDFs/text/web → study notes) or Codebase Mode (source code → developer onboarding vault)
- Extract and map knowledge sources with verified topic hierarchies and source-to-note traceability
- Generate concept notes with YAML frontmatter, wiki-links, callouts, and ASCII diagrams
- Create practice question sets with active recall fold callouts and question-type diversity (recall, application, analysis)
- Build interactive dashboards with MOCs, Quick References, Exam Traps, and tag indices
- Produce module-focused onboarding vaults for codebases with architecture analysis and exercises
How to install tutor-setup
npx skills add https://github.com/roundtable02/tutor-skills --skill tutor-setup- Obsidian installed (to view the generated StudyVault)
- For PDF extraction: pdftotext CLI (install via `brew install poppler` on macOS or `apt-get install poppler-utils` on Linux)
- Source files (PDFs, code, text, or URLs) accessible or copied into the current working directory
How to use tutor-setup
- 1.Run `npx skills add https://github.com/roundtable02/tutor-skills --skill tutor-setup` to install
- 2.Navigate to a directory containing your knowledge sources (PDFs, code project, text files, or URLs)
- 3.Invoke the skill with `tutor-setup [source-path-or-url]` (or omit argument to scan CWD)
- 4.Confirm the auto-detected mode (Document or Codebase) or override if needed
- 5.Review and verify the source mapping and topic checklist presented by the skill
- 6.Wait for vault generation to complete; open `StudyVault/` in Obsidian to study
Use cases
- Convert a textbook or research paper PDFs into a study vault with practice questions for exam prep
- Generate a new-developer onboarding guide from an existing codebase with architecture notes and code-reading exercises
- Transform web articles and documentation into structured concept notes with cross-linking for self-paced learning
- Create a comprehensive study system from multiple knowledge sources with unified tagging and weak-area tracking
- Build architecture documentation and module guides for team onboarding from source code analysis
- Students preparing for exams or comprehensive learning
- New developers joining a codebase who need structured onboarding
- Educators converting course materials into interactive study systems
- Knowledge workers organizing and studying technical documentation
- Teams documenting architecture and module relationships for knowledge transfer
tutor-setup FAQ
PDF, plain text (.txt), Markdown (.md), HTML (.html), and EPUB. PDFs are converted to text via pdftotext CLI before processing to avoid token waste.
Yes. Codebase Mode detects the tech stack automatically (Node.js, Python, Java, Go, Rust, C#, Ruby, etc.). Generated notes match the source material language; tags are always English.
The skill enforces a CWD boundary for security. Copy external files into your working directory first, then run the skill.
It performs mandatory source-to-note mapping: reads cover, TOC, and sample pages from each file to verify actual content and page ranges, then builds a verified mapping before creating notes.
Yes. The skill announces the detected mode and asks for confirmation; you can override it if needed.
Full instructions (SKILL.md)
Source of truth, from roundtable02/tutor-skills.
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. argument-hint: "[source-path-or-url]" allowed-tools: Read, Write, Edit, Glob, Grep, Bash, WebFetch
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:
- Check for project markers in CWD:
package.json,pom.xml,build.gradle,Cargo.toml,go.mod,Makefile,*.sln,pyproject.toml,setup.py,Gemfile
- If any marker found → Codebase Mode
- If no marker found → Document Mode
- Tie-break: If
.git/is the sole indicator and no source code files (*.ts,*.py,*.java,*.go,*.rs, etc.) exist, default to Document Mode. - 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
- Auto-scan CWD for
**/*.pdf,**/*.txt,**/*.md,**/*.html,**/*.epub(excludenode_modules/,.git/,dist/,build/,StudyVault/). Present for user confirmation. - Extract text (MANDATORY tools):
- PDF →
pdftotextCLI 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.txtfirst, then Read the.txtfile.pdftotext "source.pdf" "/tmp/source.txt" - If
pdftotextis not installed, install it first:brew install poppler(macOS) orapt-get install poppler-utils(Linux). - URL → WebFetch
- Other formats (
.md,.txt,.html) → Read directly.
- PDF →
- Read extracted
.txtfiles — understand scope, structure, depth. Work exclusively from the converted text, never from the raw PDF. - 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
- Identify topic hierarchy — sections, chapters, domain divisions.
- Separate concept content vs practice questions.
- Map dependencies between topics.
- Identify key patterns — comparisons, decision trees, formulas.
- 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.
- 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".
- 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
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 Conceptswith[[wiki-links]]
Phase D8: Interlinking
## Related Noteson every concept note- MOC links to every concept + practice note
- Cross-link concept ↔ practice; siblings reference each other
- Quick Reference sections →
[[Concept Note]]links - 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
| Phase | Name | Key Action |
|---|---|---|
| C1 | Project Exploration | Scan files, detect tech stack, read entry points, map directory layout |
| C2 | Architecture Analysis | Identify patterns, trace request flow, map module boundaries and data flow |
| C3 | Tag Standard | Define #arch-*, #module-*, #pattern-*, #api-* tag registry |
| C4 | Vault Structure | Create StudyVault/ with Dashboard, Architecture, per-module, DevOps, Exercises folders |
| C5 | Dashboard | MOC (Module Map + API Surface + Getting Started + Onboarding Path) + Quick Reference |
| C6 | Module Notes | Per-module notes: Purpose, Key Files, Public Interface, Internal Flow, Dependencies |
| C7 | Onboarding Exercises | Code reading, configuration, debugging, extension exercises (5+ per major module) |
| C8 | Interlinking | Cross-link modules, architecture ↔ implementations, exercises ↔ modules |
| C9 | Self-Review | Verify 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
Related skills
More from roundtable02/tutor-skills and the wider catalog.

tutor
Interactive quiz tutor that tracks concept mastery and identifies knowledge gaps.

app-planner
Plans new macOS apps or analyzes existing projects. Creates comprehensive planning documents covering architecture, features, UI/UX, and tech stack. Use when planning a new macOS app or auditing an existing one.

rsbuild-best-practices
Rsbuild configuration, optimization, and debugging best practices for production projects.

rslib-best-practices
Rslib best practices for config, CLI workflow, output, declaration files, dependency handling, build optimization and toolchain integration. Use when writing, reviewing, or troubleshooting Rslib projects.

file-manager
Agent skill from rtgs2017/nagaagent.
code-simplifier
Review RTK Rust code for idiomatic simplification. Detects over-engineering, unnecessary allocations, verbose patterns. Applies Rust idioms without changing behavior.