Obsidian Daily Notes
Interact with Obsidian Daily Notes through the official obsidian command: create or open today's note, append entries, read notes, and search vault content.
Setup
Check that the official CLI is available:
obsidian versionIf the command is unavailable, ask the user to enable Obsidian's CLI:
- Install or update to Obsidian 1.12 or newer.
- Open Settings > General.
- Enable Command line interface and follow the registration prompt.
Target a vault explicitly when needed by placing vault=<name-or-id> before the command:
obsidian vault="Work" dailyObsidian Daily Notes plugin defaults:
- Date format:
YYYY-MM-DD - New file location: Vault root
- Template file location: (none)
Date Handling
Get current date:
date +%Y-%m-%dCross-platform relative dates (GNU first, BSD fallback):
| Reference | Command | ||
|---|---|---|---|
| Today | date +%Y-%m-%d | ||
| Yesterday | `date -d yesterday +%Y-%m-%d 2>/dev/null \ | \ | date -v-1d +%Y-%m-%d` |
| Last Friday | `date -d "last friday" +%Y-%m-%d 2>/dev/null \ | \ | date -v-1w -v+fri +%Y-%m-%d` |
| 3 days ago | `date -d "3 days ago" +%Y-%m-%d 2>/dev/null \ | \ | date -v-3d +%Y-%m-%d` |
| Next Monday | `date -d "next monday" +%Y-%m-%d 2>/dev/null \ | \ | date -v+monday +%Y-%m-%d` |
Commands
Open/Create Today's Note
obsidian dailyOpens today's daily note in Obsidian, creating it from template if it doesn't exist.
Append Entry
obsidian daily:append content="ENTRY_TEXT"Append without adding a newline:
obsidian daily:append content="ENTRY_TEXT" inlineRead Note
Today:
obsidian daily:readSpecific date, using the vault's configured daily-note folder and date format:
obsidian read path="Daily Notes/2025-01-10.md"Relative date (yesterday):
obsidian read path="Daily Notes/$(date -d yesterday +%Y-%m-%d 2>/dev/null || date -v-1d +%Y-%m-%d).md"Search Content
obsidian search query="TERM"Search Notes
Machine-readable search:
obsidian search query="TERM" format=jsonSpecific Vault
Put vault="NAME" before the command:
obsidian vault="Work" read path="Daily Notes/2025-01-10.md"Example Output
- Went to the doctor
- [ ] Buy groceries
- https://github.com/anthropics/skills
- 15:45 This is a log lineUse Cases
Journal entry:
obsidian daily:append content="- Went to the doctor"Task:
obsidian daily:append content="- [ ] Buy groceries"Link:
obsidian daily:append content="- https://github.com/anthropics/skills"Timestamped log:
obsidian daily:append content="- $(date +%H:%M) This is a log line"Read last Friday:
obsidian read path="Daily Notes/$(date -d 'last friday' +%Y-%m-%d 2>/dev/null || date -v-1w -v+fri +%Y-%m-%d).md"Search for "meeting":
obsidian search query="meeting"