Obsidian
Obsidian vault = a normal folder on disk.
Vault structure (typical)
- Notes:
*.md (plain text Markdown; edit with any editor)
- Config:
.obsidian/ (workspace + plugin settings; usually don’t touch from scripts)
- Canvases:
*.canvas (JSON)
- Attachments: whatever folder you chose in Obsidian settings (images/PDFs/etc.)
Find the active vault(s)
Obsidian desktop tracks vaults here (source of truth):
~/Library/Application Support/obsidian/obsidian.json
obsidian-cli resolves vaults from that file; vault name is typically the folder name (path suffix).
Fast “what vault is active / where are the notes?”
- If you’ve already set a default:
obsidian-cli print-default --path-only
- Otherwise, read
~/Library/Application Support/obsidian/obsidian.json and use the vault entry with "open": true.
Notes
- Multiple vaults common (iCloud vs
~/Documents, work/personal, etc.). Don’t guess; read config.
- Avoid writing hardcoded vault paths into scripts; prefer reading the config or using
print-default.
obsidian-cli quick start
Pick a default vault (once):
obsidian-cli set-default "<vault-folder-name>"
obsidian-cli print-default / obsidian-cli print-default --path-only
Search
obsidian-cli search "query" (note names)
obsidian-cli search-content "query" (inside notes; shows snippets + lines)
Create
obsidian-cli create "Folder/New note" --content "..." --open
- Requires Obsidian URI handler (
obsidian://…) working (Obsidian installed).
- Avoid creating notes under “hidden” dot-folders (e.g.
.something/...) via URI; Obsidian may refuse.
Move/rename (safe refactor)
obsidian-cli move "old/path/note" "new/path/note"
- Updates
[[wikilinks]] and common Markdown links across the vault (this is the main win vs mv).
Delete
obsidian-cli delete "path/note"
Prefer direct edits when appropriate: open the .md file and change it; Obsidian will pick it up.