返回 Skill 列表
extension
分类: 开发与工程无需 API Key

obsidian-daily

通过obsidian-cli管理Obsidian每日笔记。创建并打开每日笔记,追加条目(日志、记录、任务、链接),按日期阅读过去的笔记,并搜索库内容。处理相对日期如“昨天”、“上个周五”、“3天前”。需要通过Homebrew(Mac/Linux)或Scoop(Windows)安装obsidian-cli。

person作者: jakexiaohubgithub

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 version

If the command is unavailable, ask the user to enable Obsidian's CLI:

  1. Install or update to Obsidian 1.12 or newer.
  2. Open Settings > General.
  3. 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" daily

Obsidian 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-%d

Cross-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 daily

Opens 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" inline

Read Note

Today:

obsidian daily:read

Specific 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=json

Specific 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 line

Use 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"