Obsidian best practices
Like everyone else, I'm sharing my agent stuff.
npx -y skills add msewell/agent-stuff --skill obsidian-best-practicesAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Guides setting up, configuring, and organizing Obsidian vaults for software engineers — folder structure, plugins, templates, Git backup, Dataview queries, and AI integrations. Also creates and edits Obsidian vault files following best practices for frontmatter schemas, wikilinks, Templater syntax, Dataview code blocks, and Canvas JSON. Use when setting up a new vault, recommending plugins, creating note templates, writing Dataview queries, configuring Git sync, advising on vault organization, or generating Obsidian-compatible Markdown files.
SKILL.md
5.4 KB, ~1.2k tokens by cl100k_base, as published. Nobody here has run it
Obsidian Best Practices
Quick start — new vault setup
- Create a vault folder (e.g.,
~/vaults/brain). - Create the folder structure:
vault/ ├── _templates/ ├── daily/ ├── meetings/ ├── projects/ ├── references/ ├── archive/ └── attachments/ - Enable core plugins: Daily Notes, Templates, Backlinks, Outgoing Links, Tags, Graph View, Command Palette, Page Preview, Bookmarks, Canvas, Properties View.
- Install Tier 1 community plugins: Dataview, Templater, Obsidian Git, Tasks, Calendar.
- Create
_templates/daily.md,_templates/meeting.md,_templates/project.md,_templates/reference.mdusing the templates in references/templates-and-daily-notes.md. - Configure Daily Notes: date format
YYYY-MM-DD, locationdaily/, template_templates/daily.md, open on startup. - Configure Templater: template folder
_templates, enable folder templates (daily/→_templates/daily.md,meetings/→_templates/meeting.md), trigger on new file creation. - Initialize Git:
git init, create private remote, configure Obsidian Git plugin (auto backup every 10-30 min, auto pull on open, auto push after commit).
Vault organization principles
- Flat by default. Most notes live at the vault root. Folders are for note types (meetings, projects), not topics. Topics are tags.
- Prefix system folders with
_(e.g.,_templates/). - Never nest deeper than one level.
- Archive, don't delete. Move stale notes to
archive/. - For alternative approaches (PARA, Zettelkasten, LYT), see references/vault-organization-and-style.md.
Frontmatter schema
Every note gets this minimum frontmatter:
---
tags:
- type/meeting
- project/auth-redesign
created: 2026-02-26
---
Rules:
- Flat YAML only — Obsidian doesn't support nested properties.
- Namespaced tags:
type/,project/,lang/,topic/. Pluralize leaf values. createdandupdatedinYYYY-MM-DDformat.statuson actionable notes:active,paused,completed,archived.- Quote wikilinks in YAML:
related: "[[Other Note]]".
Creating Obsidian-compatible Markdown
When creating or editing .md files for an Obsidian vault:
- Use wikilinks:
[[Note Title]], not[Note Title](Note%20Title.md). - Use aliases for readability:
[[Authentication Middleware|auth middleware]]. - Use block references for precision:
[[Architecture Doc#^decision-rationale]]. - Use
##for top-level sections (reserve#for the note title). - Use callouts for emphasis:
> [!warning] This API is deprecated in v3 > Use the new endpoint instead. - Use Templater syntax (
<% tp.date.now("YYYY-MM-DD") %>) in template files only. - Use inline fields for Dataview:
Status:: In Progress.
Writing Dataview queries
Use dataview code blocks. Common patterns:
Table from tagged notes:
```dataview
TABLE status, priority, deadline
FROM #type/project
WHERE status = "active"
SORT priority ASC
```
Task aggregation:
```dataview
TASK
WHERE due >= date(today) AND due <= date(today) + dur(7 days)
WHERE !completed
SORT due ASC
```
Recent notes list:
```dataview
LIST
WHERE updated >= date(today) - dur(30 days)
SORT updated DESC
LIMIT 20
```
For DataviewJS, inline fields, and advanced patterns, see references/dataview-git-and-workflows.md.
Canvas files
Canvas files (.canvas) use the JSON Canvas spec:
- Nodes:
text,file,link, orgroup. - Edges connect nodes with optional labels and colors.
- Coordinates can be negative — the canvas extends infinitely.
- Color-code by category: blue for people, yellow for events, green for decisions, red for blockers.
Reference material
Consult these for detailed guidance:
- Vault structure, style guide, MOCs, linking strategies: references/vault-organization-and-style.md
- Core and community plugins, keyboard shortcuts: references/plugins-and-configuration.md
- Templates, frontmatter conventions, daily/weekly notes: references/templates-and-daily-notes.md
- Dataview queries, Git backup, knowledge capture pipeline: references/dataview-git-and-workflows.md
- AI plugins, MCP servers, agent skills, Canvas: references/ai-integrations-and-canvas.md
- Curated external links and resources: references/resources-and-links.md