skills/obsidian-claude-integration/SKILL.md
Comprehensive guide for integrating Obsidian vaults as AI-powered second brains with Claude Code. Covers MCP integration, vault manifests, self-evolving patterns, auto-linking, and knowledge graph automation. Use when setting up Claude Code + Obsidian workflows, implementing bidirectional sync, creating CLAUDE.md manifests, or building self-healing knowledge systems.
npx skillsauth add julianobarbosa/claude-code-skills obsidian-claude-integrationInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Transform your Obsidian vault into an AI-powered second brain by integrating it with Claude Code. This skill covers multiple integration patterns from minimal setup to advanced self-evolving systems.
Key Insight: An Obsidian vault is essentially a codebase of markdown files. Claude Code is already excellent at navigating file structures and making surgical edits - no special plugin required.
What integration level do you need?
├── Minimal (just works)?
│ └── Pattern A: Direct Access
│ └── Claude Code reads vault directly (no setup needed)
├── Enhanced discovery?
│ └── Pattern B: Manifest-Based
│ └── Add CLAUDE.md to vault root
├── Real-time bidirectional?
│ └── Pattern C: MCP Plugin
│ └── Install obsidian-claude-code-mcp
├── Self-evolving PKM?
│ └── Pattern D: COG Pattern
│ └── Git + automation + self-healing refs
└── Pre-configured structure?
└── Pattern E: Claudesidian
└── Adopt opinionated vault structure
Claude Code can already read and edit your vault. No configuration needed.
# Claude Code navigates your vault like any codebase
cd /path/to/your/vault
claude
# Example interactions:
# "Read my daily note from today"
# "Find all notes mentioning project X"
# "Add backlinks to people mentioned in this note"
| Task | Claude Code Capability | |------|------------------------| | Read notes | Direct file access | | Edit notes | Surgical markdown edits | | Add backlinks | Find references, insert wikilinks | | Create notes | Write new files with proper frontmatter | | Search content | Grep across all markdown files | | Refactor structure | Move files, update references |
Add a project manifest to help Claude Code understand your vault's structure and conventions.
Create CLAUDE.md at your vault root:
# Obsidian Vault Manifest
## Vault Overview
This is a personal knowledge management vault using [describe your system].
## Folder Structure
- `00 - Inbox/` - Quick capture, unsorted notes
- `01 - Projects/` - Active project notes
- `02 - Areas/` - Ongoing responsibilities
- `03 - Resources/` - Reference materials
- `04 - Archive/` - Completed/inactive content
- `Daily/` - Daily notes (YYYY/MM/DD.md format)
- `Templates/` - Note templates
## Conventions
- Frontmatter: Always include `created`, `updated`, `tags`
- Links: Use `[[wikilinks]]` not markdown links
- Tags: Hierarchical (e.g., `#project/client-name`)
- Dates: ISO 8601 format (YYYY-MM-DD)
## Important Files
- `_index.md` - Main dashboard/MOC
- `project-context.md` - Current project context
## When Creating Notes
1. Always add proper frontmatter
2. Include backlinks to related notes
3. Tag appropriately for discoverability
4. Place in correct folder based on type
## When Editing Notes
1. Update the `updated` timestamp
2. Maintain existing link structure
3. Preserve block references (^block-id)
See: templates/CLAUDE.md for full template.
Real-time bidirectional communication via Model Context Protocol.
# Install the MCP plugin from Obsidian Community Plugins
# Plugin: obsidian-claude-code-mcp
# Repository: github.com/iansinnott/obsidian-claude-code-mcp
| Capability | Description |
|------------|-------------|
| read_note | Read note content with metadata |
| write_note | Create or update notes |
| search | Semantic search across vault |
| list_notes | Browse vault structure |
| get_backlinks | Find notes linking to a file |
| get_outlinks | Find notes a file links to |
| get_tags | List all tags in vault |
Add to your Claude Code settings if not auto-discovered:
{
"mcpServers": {
"obsidian": {
"transport": "websocket",
"url": "ws://localhost:22360"
}
}
}
Git-based self-evolving second brain with auto-organization.
vault/
├── .git/ # Version control
├── CLAUDE.md # AI manifest
├── _meta/
│ ├── patterns.md # Learned patterns
│ ├── conventions.md # Auto-discovered rules
│ └── maintenance-log.md # Self-healing log
├── notes/ # Content
└── daily/ # Journal
# .git/hooks/post-commit
#!/bin/bash
# Trigger Claude Code maintenance after commits
claude --print "Check for broken links and orphan notes in the vault.
Fix any issues and update _meta/maintenance-log.md with actions taken."
# Ask Claude Code to perform maintenance
claude "Analyze my vault for orphan notes and suggest connections"
claude "Find notes without proper frontmatter and fix them"
claude "Update all daily notes with missing navigation links"
Adopt a pre-configured vault structure optimized for AI interaction.
vault/
├── CLAUDE.md # Manifest (required)
├── Inbox/ # Quick capture
├── Projects/ # Active work
├── Knowledge/ # Permanent notes
├── Journal/ # Daily reflection
├── Templates/ # Note templates
└── _meta/ # System files
├── prompts/ # Saved prompts
├── contexts/ # Context files
└── exports/ # Generated outputs
id, created, updated#type/subtypeUser: "Read my journal entry from today and add backlinks to all
people, places, and books mentioned"
Claude Code:
1. Reads today's daily note
2. Extracts entity mentions
3. Searches vault for existing notes
4. Creates new notes if needed
5. Inserts [[wikilinks]] throughout
User: "Find orphan notes and suggest connections"
Claude Code:
1. Identifies notes with no incoming/outgoing links
2. Analyzes content for potential connections
3. Suggests or creates links
4. Updates MOCs (Maps of Content)
User: "Synthesize all my notes on [topic] into a summary note"
Claude Code:
1. Searches for relevant notes
2. Extracts key insights
3. Creates structured summary
4. Links back to source notes
User: "Review today's note and add structure"
Claude Code:
1. Reads raw capture
2. Adds proper frontmatter
3. Identifies tasks → adds checkboxes
4. Identifies mentions → adds links
5. Suggests tags based on content
# Ensure you're in the vault directory
pwd # Should show vault path
# Check file permissions
ls -la *.md
# Verify markdown extension
find . -name "*.md" | head -20
# Check Obsidian is running
pgrep -l Obsidian
# Verify plugin is enabled
# Settings → Community Plugins → obsidian-claude-code-mcp
# Check port availability
lsof -i :22360
# Test WebSocket connection
websocat ws://localhost:22360
# Ask Claude Code to fix
claude "Find all broken wikilinks in the vault and fix them"
# Or use grep to find issues
grep -r "\[\[" --include="*.md" | grep -v "\.obsidian"
| Feature | Direct | Manifest | MCP | COG | Claudesidian | |---------|--------|----------|-----|-----|--------------| | Setup Required | None | Minimal | Plugin | Git + hooks | Structure | | Real-time Sync | No | No | Yes | No | No | | Semantic Search | Basic | Basic | Yes | Basic | Basic | | Self-Healing | No | No | No | Yes | Partial | | Vendor Lock-in | None | None | Low | None | Structure | | Best For | Simple | Organized | Power users | Automation | New vaults |
# 1. Navigate to your vault
cd /path/to/your/obsidian/vault
# 2. Create a minimal manifest
cat > CLAUDE.md << 'EOF'
# Vault Manifest
This is my Obsidian vault. Key conventions:
- Daily notes in `Daily/YYYY/MM/DD.md`
- Use `[[wikilinks]]` for internal links
- Frontmatter with `created`, `updated`, `tags`
EOF
# 3. Start using Claude Code
claude "What notes do I have about [topic]?"
"$VAULT" (with quotes) when constructing paths. A space silently splits the path arg into two..obsidian/ — the vault-root one is visible to humans; the .obsidian/ one survives folder reorganization but is hidden.Bash does not — easy accidental escape via shell commands; document the boundary explicitly per skill.testing
Brief description of what this skill does. Include specific triggers - when should Claude use this skill? Example triggers, file types, or keywords that indicate this skill applies.
tools
Manage and troubleshoot PATH configuration in zsh. Use when adding tools to PATH (bun, nvm, Python venv, cargo, go), diagnosing "command not found" errors, validating PATH entries, or organizing shell configuration in .zshrc and .zshrc.local files.
tools
Zabbix monitoring system automation via API and Python. Use when: (1) Managing hosts, templates, items, triggers, or host groups, (2) Automating monitoring configuration, (3) Sending data via Zabbix trapper/sender, (4) Querying historical data or events, (5) Bulk operations on Zabbix objects, (6) Maintenance window management, (7) User/permission management
development
Operate YouTube Music via natural language. Search songs, artists, albums, playlists, lyrics, charts, recommendations, and control playback. Browse personal library, manage playlists, rate tracks, and inspect account info. Use this skill whenever the user asks about YouTube Music, wants to play music, manage playlists, search by song or artist name, inspect lyrics, or control playback.