Use when working with Obsidian vaults, creating/searching/moving notes, or automating note management with the official obsidian CLI, especially with multiline or shell-unsafe content
Obsidian vault = a normal folder on disk.
obsidian (not obsidian-cli).1.12+ with Settings -> General -> Command line interface enabled.obsidian to PATH; restart the shell after enabling.cwd is inside a vault, that vault is used.vault="<vault name>" as the first argument.obsidian vaults verboseobsidian vault info=pathfile=<name> resolves with wikilink-style matching by file name.path=<path> targets an exact path from the vault root (recommended for automation).| Action | Command |
|--------|---------|
| Show help | obsidian help |
| Help for one command | obsidian help create |
| Open/create daily note | obsidian daily |
| Get daily note path | obsidian daily:path |
| Open note | obsidian open path="Folder/Note.md" |
| Read note | obsidian read path="Folder/Note.md" |
| Create note | obsidian create path="Folder/New note.md" content="..." |
| Append to note | obsidian append path="Folder/New note.md" content="..." |
| Prepend note | obsidian prepend path="Folder/New note.md" content="..." |
| Move/rename note | obsidian move path="old/path.md" to="new/path.md" |
| Delete note | obsidian delete path="Folder/Note.md" |
| Search paths | obsidian search query="query" |
| Search with matching lines | obsidian search:context query="query" |
| Copy output to clipboard | obsidian read path="Folder/Note.md" --copy |
vault="<name>" must be the first argument when used.create, append, and prepend use content=<text>, with open/overwrite as flags.move updates links if Automatically update internal links is enabled in vault settings.open when you want the file focused in the app.vault=... and exact path=... values.When content includes backticks, $(), or a lot of quotes, pass it via a temp file and command substitution.
Temp file + heredoc (preferred):
tmp="$(mktemp)"
cat <<'EOF' > "$tmp"
... note content ...
EOF
obsidian vault="My Vault" create path="Folder/New note.md" content="$(cat "$tmp")"
rm "$tmp"
Inline heredoc (no temp file):
obsidian create path="Folder/New note.md" content="$(cat <<'EOF'
... note content ...
EOF
)"
Direct write to vault path (fallback):
vault_path="$(obsidian vault info=path)"
note="$vault_path/Folder/New note.md"
mkdir -p "${note%/*}"
cat <<'EOF' > "$note"
... note content ...
EOF
Verify with: obsidian read path="Folder/New note.md"
Google Workspace CLI for Gmail, Calendar, Drive, Contacts, Sheets, and Docs.
Manage Apple Notes via the `memo` CLI on macOS (create, view, edit, delete, search, move, and export notes). Use when a user asks OpenClaw to add a note, list notes, search notes, or manage note folders.
Work with Obsidian vaults (plain Markdown notes) and automate via obsidian-cli.
Use when you need to control Slack from OpenClaw via the slack tool, including reacting to messages or pinning/unpinning items in Slack channels or DMs.
Manage Apple Reminders via remindctl CLI (list, add, edit, complete, delete). Supports lists, date filters, and JSON/plain output.
Manage Trello boards, lists, and cards via the Trello REST API.
Category:productivity