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 ""`
`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.