vaultcraft9.37 KB
View saved version →
---
name: vaultcraft
description: "Turn scattered materials (lecture slides, lab scripts, project docs, meeting notes, research papers) into a richly visual, linked Obsidian knowledge vault. Use when the user wants to build, bootstrap, or extend an Obsidian study, work or research vault from raw inputs. Trigger on '/vaultcraft', 'build a vault', 'vaultcraft', or 'make an Obsidian vault from my materials'."
---
# vaultcraft
This skill turns course, work or research materials into a linked Obsidian vault.
It runs the same way in Claude Code, Cowork, claude.ai, ChatGPT and Codex: this file
owns the conversation (banner, intake, confirm), and the files in `references/` hold
the generation pipeline (parsing, note-writing, linking, audit).
Paths in this skill (`references/...`, `templates/...`) are relative to the folder
that holds this `SKILL.md`. Call that folder `SKILL_DIR`.
Do these steps in order. Do not skip the banner or the intake.
## Step 1 — Print the banner (always, first thing)
Print this exactly, inside a fenced code block, before anything else:
```text
██╗ ██╗ █████╗ ██╗ ██╗██╗ ████████╗ ██████╗██████╗ █████╗ ███████╗████████╗
██║ ██║██╔══██╗██║ ██║██║ ╚══██╔══╝██╔════╝██╔══██╗██╔══██╗██╔════╝╚══██╔══╝
██║ ██║███████║██║ ██║██║ ██║ ██║ ██████╔╝███████║█████╗ ██║
╚██╗ ██╔╝██╔══██║██║ ██║██║ ██║ ██║ ██╔══██╗██╔══██║██╔══╝ ██║
╚████╔╝ ██║ ██║╚██████╔╝███████╗██║ ╚██████╗██║ ██║██║ ██║██║ ██║
╚═══╝ ╚═╝ ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝
⛏ an obsidian vault builder — study · work · research ⛏
```
Then one status line, e.g. `→ Bootstrap mode. Starting intake.`
## Step 2 — Quick mode detection
If the user's prompt names a vault path you can read, glob it: `.obsidian/` present +
notes in standard folders → **INCREMENTAL** (only ask what's new). `.vault-progress.md`
present → offer **Resume** (Resume / Start over / Inspect). Otherwise → **BOOTSTRAP**
(full intake). Announce the detected mode.
## Step 3 — Intake
Skip any question the user's prompt already answered. If your host has an interactive
question tool (`AskUserQuestion` in Claude Code and Cowork), use it: ≤4 questions and
≤4 options per call, headers ≤12 chars, Recommended option first with `(Recommended)`,
`multiSelect: true` where multiple answers fit, `preview` for Format/Style. If it has
none (claude.ai chat, ChatGPT, Codex, Cursor), send Batches A and B as ONE numbered plain-text
list with the options and the recommended default on each line, and tell the user they
can reply "defaults" to accept every recommendation.
**Batch A — Vault shape** (4 single-select):
1. `Vault type` — studies (Recommended) · work · research · personal *(reference/teaching → Other)*
2. `Format` — Detailed narrative (Recommended) · Study sheet · Golden template · Reference *(preview a 6-line sample of each)*
3. `Depth` — standard (Recommended) · lean · thorough
4. `Language` — English (Recommended) · Polish · German · Spanish
For `studies`/`teaching`, add a follow-up `Templates` — Yes both (Recommended) · Lecture only · Concept only · No free format.
**Batch B — Style** (3 questions):
1. `Styles` (multiSelect) — defaults by type: studies → ELI5 + Worked example + Historical + Real-world; work → Real-world + Counter-example + Worked example + Devil's advocate; research → Counter-example + Historical + Devil's advocate + Worked example; personal → ELI5 + Real-world + Historical + Visual metaphor.
2. `Flashcards` — None (Recommended) · Key concepts only · Every concept
3. `Urgency` — studies: <1 week · 1–4 weeks (Recommended) · 1–3 months · No rush; work/research: weekly · monthly (Recommended) · quarterly · ongoing.
**Batch C — Free-text** (plain markdown block, never option chips):
```text
1. Course / project name?
2. Specific goal? (e.g. "exam 28 June", "onboarding doc by Q3")
3. Priority topics? (must-know vs nice-to-have, or "extract from materials")
4. Deadline / tPreview of the first 4,000 characters. Read full instructions →
Referenced files: 15 — file references are metadata, not package contents.