Loading...
Loading...
Comprehensive Obsidian vault management. USE WHEN obsidian, vault, note, daily note, PARA, inbox, knowledge capture, dataview, DQL, search vault, .base, bases, wikilink, frontmatter, second brain, markdown syntax, obsidian.nvim, OR obsidian API. Python-powered tools for search, creation, and vault health.
npx skill4agent add julianobarbosa/claude-code-skills obsidian-master-skillreference/obsidian-master-skill/
├── SKILL.md # This file (overview + quick reference)
├── reference/ # Detailed documentation
│ ├── markdown.md # Obsidian Flavored Markdown syntax
│ ├── vault-organization.md # PARA folders, frontmatter, Dataview
│ ├── rest-api.md # Local REST API, URI scheme, plugin API
│ ├── bases.md # .base YAML schema, filters, formulas
│ ├── integration-patterns.md # Claude Code integration patterns
│ └── knowledge-capture.md # ADR, concept, how-to, meeting templates
├── Workflows/ # Step-by-step workflow definitions
│ ├── CreateNote.md # Create notes with templates + PARA placement
│ ├── SearchVault.md # DQL, content search, tag filtering
│ ├── ManageVault.md # Health checks, orphans, broken links
│ ├── CaptureKnowledge.md # Extract insights from conversations
│ ├── CreateBase.md # Build .base database views
│ ├── DailyNote.md # Daily note creation/enhancement
│ ├── ProcessInbox.md # Triage inbox into PARA folders
│ └── SyncDocs.md # Sync external project docs to vault
└── Tools/ # Python CLI tools (click + httpx)
├── SearchVault.py # status, auth, search (dataview|content|jsonlogic)
├── VaultManager.py # health, orphans, broken-links, lifecycle, move, inbox
├── NoteCreator.py # create, daily, capture
└── BaseBuilder.py # create, validate, preview| Intent | Workflow | Tool |
|---|---|---|
| Create a note (any type) | | |
| Search vault (DQL, content, tags) | | |
| Vault health, orphans, broken links | | |
| Extract knowledge from conversation | | |
| Create/edit .base database views | | |
| Daily note create/enhance | | |
| Process inbox notes into PARA | | |
| Sync project docs to vault | | |
| Folder | Purpose | Note Types |
|---|---|---|
| Quick capture, unsorted | Fleeting thoughts |
| Index notes | MOCs, dashboards |
| Active projects | Project docs |
| Ongoing responsibilities | Area overviews |
| Reference materials | Evergreen notes |
| Completed/inactive | Archived projects |
| Zettelkasten notes | Atomic ideas |
| Daily journal (YYYY/MM/YYYYMMDD.md) | Journal entries |
| Book notes | Reading notes |
| Meeting notes | 1-on-1s |
Deep dive:reference/vault-organization.md
---
created: YYYY-MM-DDTHH:mm
updated: YYYY-MM-DDTHH:mm
tags:
- category/subcategory
------
created: YYYY-MM-DDTHH:mm
updated: YYYY-MM-DDTHH:mm
title: YYYYMMDD
type: daily-note
status: true
tags:
- daily
- y/YYYY
- y/YYYY-MM
aliases:
- YYYY-MM-DD
date_formatted: YYYY-MM-DD
cssclasses:
- daily
------
created: YYYY-MM-DDTHH:mm
updated: YYYY-MM-DDTHH:mm
type: project
status: active | paused | complete
priority: high | medium | low
tags:
- project/name
---Deep dive:reference/vault-organization.md
[[Note Name]] # Wikilink
[[Note Name|Display Text]] # Aliased link
[[Note Name#Heading]] # Heading link
[[Note Name#^block-id]] # Block reference
![[Note Name]] # Embed note
![[image.png]] # Embed image
![[image.png|300]] # Embed with widthDeep dive:reference/markdown.md
LIST FROM "06 - Daily" WHERE file.cday = date(today) SORT file.ctime DESCTABLE status, tags FROM "01 - Projects" WHERE status != "completed"TABLE WITHOUT ID file.link AS "Note", file.mtime AS "Modified"
FROM "03 - Resources" SORT file.mtime DESC LIMIT 20LIST FROM "" WHERE length(file.inlinks) = 0 AND length(file.outlinks) = 0Deep dive:reference/vault-organization.md
| Signal in Conversation | Capture Type | Destination |
|---|---|---|
| "We decided to..." | ADR | |
| "What is X?" / "X works by..." | Concept | |
| "How do I..." / "Steps to..." | How-To | |
| "In the meeting..." | Meeting Note | |
| "Track all notes about..." | MOC | |
| Quick insight or todo | Daily Append | |
Deep dive:reference/knowledge-capture.md
> [!note] Title
> Content
> [!tip]+ Expandable (default open)
> [!info]- Collapsed (default closed)noteabstract/summary/tldrinfotodotip/hint/importantsuccess/check/donequestion/help/faqwarning/caution/attentionfailure/fail/missingdanger/errorbugexamplequote/citeDeep dive:reference/markdown.md
# Requires Local REST API plugin enabled in Obsidian
export OBSIDIAN_API_KEY="your-key"
export OBSIDIAN_BASE_URL="https://127.0.0.1:27124"
curl -H "Authorization: Bearer $OBSIDIAN_API_KEY" $OBSIDIAN_BASE_URL/vault/| Endpoint | Method | Purpose |
|---|---|---|
| GET/PUT/DELETE/PATCH | File CRUD |
| POST | Text search |
| POST | Dataview query |
| POST | Complex filtering |
| GET/PUT | Active file |
| POST | Execute command |
Deep dive:reference/rest-api.md
# example.base — table of active projects
filters:
and:
- file.inFolder("01 - Projects")
- 'status == "active"'
views:
- type: table
name: "Active Projects"
order: [file.name, status, priority, due_date]![[example.base]]![[example.base#View Name]]Deep dive:reference/bases.md
clickhttpxpyyamlpathlib| Tool | Commands |
|---|---|
| |
| |
| |
| |
"Create a new project note for API redesign" -> Workflows/CreateNote.md
"Search my vault for notes about Kubernetes" -> Workflows/SearchVault.md
"Find orphan notes and suggest connections" -> Workflows/ManageVault.md
"Save what we just discussed as an ADR" -> Workflows/CaptureKnowledge.md
"Create a base view of all active projects" -> Workflows/CreateBase.md
"Create today's daily note" -> Workflows/DailyNote.md
"Process my inbox" -> Workflows/ProcessInbox.md
"What's the Obsidian markdown syntax for X?" -> reference/markdown.md
"How do I use the REST API?" -> reference/rest-api.md
"How do bases formulas work?" -> reference/bases.mdreference/integration-patterns.md