Obsidian Skill
Version: 2.2.0 | SDK: Claude Code Skills 2.1+
Directory Index
- •markdown/obsidian-markdown.md - Wikilinks, embeds, callouts, properties
- •bases/obsidian-bases.md - Filters, formulas, database views
- •canvas/obsidian-canvas.md - JSON Canvas nodes, edges, groups
- •agents/obsidian-file-agent.md - Master agent (Sonnet)
- •agents/obsidian-markdown.md - Markdown agent (Haiku)
- •agents/obsidian-bases.md - Bases agent (Sonnet)
- •agents/obsidian-canvas.md - Canvas agent (Haiku)
Comprehensive skill for creating and editing Obsidian vault files. Routes to specialized sub-skills based on file type. Self-iterative: learns your patterns and preferences over time through hot-reloadable memory.
File Type Detection
| Extension | File Type | Sub-skill |
|---|---|---|
.md | Markdown notes | obsidian-markdown |
.base | Database views | obsidian-bases |
.canvas | Visual diagrams | obsidian-canvas |
Sub-skill Routing
When to use each sub-skill:
Obsidian Markdown - Use when:
- •Creating or editing
.mdfiles in Obsidian vaults - •Working with wikilinks (
[[Note]]), embeds (![[Note]]) - •Adding callouts, frontmatter properties, or tags
- •Using Obsidian-specific syntax (block references, comments)
Obsidian Bases - Use when:
- •Creating or editing
.basefiles - •Building database-like views of notes
- •Working with filters, formulas, or summaries
- •Creating table, cards, list, or map views
JSON Canvas - Use when:
- •Creating or editing
.canvasfiles - •Building visual mind maps or flowcharts
- •Working with nodes, edges, and groups
- •Creating project boards or research canvases
Quick Syntax Reference
Markdown (.md)
[[Note Name]] # Wikilink ![[Note Name]] # Embed > [!note] Title # Callout #tag # Tag
Bases (.base)
filters:
and:
- file.hasTag("project")
views:
- type: table
order: [file.name, status]
Canvas (.canvas)
{
"nodes": [
{"id": "1", "type": "text", "x": 0, "y": 0, "width": 300, "height": 150, "text": "# Node"}
],
"edges": []
}
Progressive Loading
For detailed documentation, load the appropriate sub-skill:
- •Detailed syntax →
references/*.mdin each sub-skill - •Working examples →
examples/*in each sub-skill - •Starter templates →
templates/*in each sub-skill
Self-Iterative Memory
This skill learns and improves over time:
How It Works
- •SessionStart - Loads your usage history and preferences
- •Pattern Tracking - Records which Obsidian features you use most
- •SessionEnd - Derives preferences from usage patterns
- •Hot-Reload - Changes to skill files are immediately available
Memory Storage
- •Location:
.claude/obsidian-memory.jsonin project directory - •Tracks: pattern usage, vault context, learned preferences
Memory Commands
# View usage statistics python scripts/hooks/memory-manager.py stats # Add a learning note python scripts/hooks/memory-manager.py learn "Discovered useful pattern" # Reset memory python scripts/hooks/memory-manager.py reset
What's Tracked
| Category | Patterns |
|---|---|
| Markdown | wikilinks, callouts, embeds, properties, tags |
| Bases | filters, formulas, views, summaries |
| Canvas | textNodes, fileNodes, linkNodes, groupNodes, edges |
Validation
Run validation scripts to check file syntax:
./scripts/validate-all.sh
Hooks Architecture
| Hook | Trigger | Purpose |
|---|---|---|
| SessionStart | Session begins | Load memory, detect vault |
| PostToolUse | Write/Edit completes | Track pattern usage |
| SessionEnd | Session ends | Save learnings, derive preferences |
Specialized Agents
This skill uses context: fork with specialized agents for optimal Obsidian file handling.
Default Agent
- •obsidian-file-agent - Master agent handling all three file types with domain-specific expertise
Domain-Specific Agents
Located in agents/ directory:
| Agent | Model | Specialization |
|---|---|---|
| obsidian-markdown | Haiku | Fast markdown note operations |
| obsidian-bases | Sonnet | Complex formula calculations |
| obsidian-canvas | Haiku | JSON canvas generation |
| obsidian-file-agent | Sonnet | Master agent (default) |
Agent Installation
For the specialized agents to work, install them to your global agents directory:
# Install all obsidian agents ./scripts/install-agents.sh # Or manually symlink ln -s "$(pwd)/agents/"*.md ~/.claude/agents/
Agent Selection
- •The skill uses
agent: obsidian-file-agentby default - •Specialized agents can be invoked directly if installed:
- •Use
obsidian-markdownfor fast note operations - •Use
obsidian-basesfor complex formula work - •Use
obsidian-canvasfor visual diagram creation
- •Use