elliotjlt/claude-skill-potions/obsidian-vault-init
Claude Code and agent skill by elliotjlt/claude-skill-potions
- community
Checking that the SKILL.md file is still in the repository.
Initialises an Obsidian vault for Claude Code workflows. Sets up folder structure, frontmatter conventions, templates, starter .base views, and a CLAUDE.md that describes the vault so future sessions understand it instantly. Activates on "set up obsidian", "init vault", "new vault", or first contact with an Obsidian project that has no CLAUDE.md.
Install
npx vskill@latest install elliotjlt/claude-skill-potions/obsidian-vault-initSKILL.md
Obsidian Vault Init
<purpose> The cold start problem. You open a fresh vault (or an existing one with no structure) and Claude Code has zero context — what folders exist, what templates to use, what frontmatter properties matter, how notes link together. This skill bootstraps the vault with sensible structure and leaves a map (CLAUDE.md) so every future session starts oriented, not lost. </purpose>
When To Activate
<triggers>
- User says "set up obsidian", "init vault", "new vault", "bootstrap vault"
- User says "make my vault work with Claude Code"
- Vault exists but has no CLAUDE.md and user asks Claude to create/manage notes
- User says "organise my vault" or "structure my vault"
- Beginning of session where vault has no CLAUDE.md
</triggers>
Do NOT trigger for:
- Vaults that already have a CLAUDE.md (read it instead)
- Single note creation (use obsidian-note-create)
- User explicitly says they don't want structure changes
Instructions
Step 1: Detect the Environment
<detect> Before anything, figure out what you're working with:
Check what already exists:
Check which CLI is available:
</detect>
Step 2: Ask About Vault Purpose
<purpose_check> Don't assume. Ask:
Respect existing structure. Build around it, not over it. </purpose_check>
Step 3: Create Folder Structure
<folders> Based on vault purpose, create what's missing:
PKM vault:
Project vault:
Journal vault:
Mixed vault:
Create with:
</folders>
Step 4: Create Templates
<templates> Create a template for each major note type. Templates use Obsidian frontmatter conventions — properties at the top in YAML, then body structure.
General note template (`Templates/Note.md`):
Meeting template (`Templates/Meeting.md`):
Project template (`Templates/Project.md`):
Daily note template (`Templates/Daily.md`):
Note: {{date}} and {{title}} are Templater/core template placeholders. If the user has Templater installed, use <% tp.date.now("YYYY-MM-DD") %> and <% tp.file.title %> instead. </templates>
Step 5: Create Starter Base Views
<bases> Create .base files that give instant value:
All Tasks (`Tasks.base`):
Recent Notes (`Recent.base`):
</bases>
Step 6: Create CLAUDE.md
<claude_md> This is the most important file. Every future Claude session reads this first.
Write CLAUDE.md at vault root:
</claude_md>
Step 7: Verify
<verify> After setup, confirm everything:
Report what was created:
</verify>
Output Format
NEVER
- Overwrite existing vault structure without asking
- Delete existing files or folders
- Create structure without asking about vault purpose first
- Skip the CLAUDE.md (it's the whole point)
- Use hardcoded paths — always detect or ask
- Assume Templater is installed — check first
ALWAYS
- Detect the environment (WSL, CLI availability) before acting
- Respect existing folder structure and conventions
- Create CLAUDE.md with accurate, current vault state
- Use the user's preferred naming conventions if they have them
- Create templates with proper frontmatter matching the property schema
- Report exactly what was created
Example
User: "Set up my obsidian vault for Claude Code. It's at /mnt/c/Users/me/Obsidian/MainVault"
<failed-attempts> What DOESN'T work:
- Creating structure without checking what exists first — overwrites user's work
- Using official Obsidian CLI from WSL — it can't reach the Windows Obsidian process
- Assuming folder names — some users use "Journal" not "Daily", "Assets" not "Attachments"
- Skipping CLAUDE.md — next session starts from scratch again
</failed-attempts>
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/obsidian-vault-init/SKILL.md
Popularity
- Repository stars
- 52
- Repository forks
- 2
- 7-day trend score
- 20
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 29 Mar 2026, 7 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/elliotjlt/claude-skill-potions/obsidian-vault-init)