Documentation

Daily Notes

BlackOps writes your daily notes on your schedule, to your vault paths, from your calendar, queued todos, and open brain tasks.

BlackOps can write your daily notes for you. Set up as many as you want (work, personal, one per project), each with its own schedule and its own place in your vault. You don't need a local script, and your computer doesn't have to be on.

What goes in the note

A default note has these sections, top to bottom:

  • Navigation: links to the previous and next day's notes.
  • Today's Focus: a short AI summary of the day's shape, any conflicts, and the todos that most need attention. It is built only from the note's own data, and you can turn it off.
  • Today's Meetings: a table of the day's events from your calendar, with times in your timezone, a join link when there is one, and tentative or declined flags. Overlapping meetings get a Schedule Conflicts warning.
  • To-dos: everything queued with queue_daily_item for this context. Todos you haven't finished carry forward and show how many days they've been waiting.
  • Waiting on you: open brain tasks from the brains this note is about, past-due first.
  • New in your brains: every note added or changed in those brains since the previous note, grouped by brain and linked. On a Monday, a weekdays-only note covers the weekend.
  • Notes for today and Reminders: note links and text you queued for this day.
  • Daily Log: an empty heading for you to write under.

If one source fails, you still get a note. An unreachable calendar, for example, shows a flagged "Calendar unavailable" box in that section while the rest of the note fills in normally.

Setting up a daily note

Go to Admin → Daily Notes and click New daily note. Give it a name (Work, Personal, Project Apollo) and you land on its settings page. Make as many as you like, one for each part of your life or one per project. Each one is generated separately, on its own schedule, to its own path.

  • Name and context. The name appears in the note's title. The context is the label you queue items with, so "put this in tomorrow's work note" lands in the note whose context is work.
  • Schedule. Pick the days of the week and the time. The note is written once on each of those days, in the timezone you choose. Weekdays only is a common setup for a work note.
  • Calendar. Paste your calendar's private ICS link (see below) and, optionally, your email on that calendar.
  • Where it's written. The file path in your vault, built from date tokens (see below). As you type, the page shows exactly where the next three notes will go.
  • What's in it. The sections and their order. Drag to reorder, switch a section off to hide it, rename headings, and add your own markdown sections.
  • Brains. The brains this note is about. It pulls their open tasks and links whatever changed in them since the last note. Pick none to use every brain.
  • Work Log. A section you fill in during the day, and whether the next morning's note acts on it. See Work Log below.
  • Options. The AI focus summary, and whether items queued with no context also show up.

Notes start switched off. Turn one on from the list or its settings page when it looks right, and use Generate today's note to see a real one straight away.

Path templates

The path is relative to the root of your vault, exactly as Obsidian shows it, and can include these tokens:

TokenExampleTokenExample
{yyyy}2026{dd}04
{yy}26{d}4
{mm}09{weekday}Thursday
{m}9{wkd}Thu
{month}September{week}36 (ISO week)
{mon}Sep{quarter}3
{context}work

For example, 02 - daily/{yyyy}/{mm}-{month}/{yyyy}-{mm}-{dd}.md writes to 02 - daily/2026/09-September/2026-09-04.md, and Projects/Apollo/Log/{yyyy}-W{week}/{yyyy}-{mm}-{dd}.md groups a project log by week. The path has to include the day and year, so each day gets its own file.

BlackOps never overwrites a file it didn't write. If a file you wrote yourself is already at a note's path, the file is left untouched and that day's run is flagged, so it's safe to point a new daily note at a folder you already use.

If your vault connection is limited to one folder (it doesn't have whole-vault access), paths must start with that folder. The settings page tells you which folder when that applies.

Changing a note's path affects new notes only. Notes already written stay where they are, and the previous/next links in new notes point at the new layout.

From a conversation

The same settings are available to an AI assistant through three MCP tools: list_daily_note_configs, set_daily_note_config (create or update by context, with schedule_days as weekday numbers where 0 is Sunday, path_template, and the Work Log settings work_log_enabled, reconcile_enabled, work_log_brain_id and ticket_url_template) and generate_daily_note. Use the admin page for your calendar link rather than pasting it into a chat.

Work Log

Turn on Add a Work Log section and every note gets an empty ## Work Log heading at the end (or wherever you drag the Work Log section in What's in it). During the day, write one line per thing that happened. Start a line with a prefix so BlackOps knows what it is, and indent details under it:

## Work Log

- done: ABC-1234 shipped the export fix
- mtg: Release planning
  - Agreed to freeze on the 14th
  - Dana owns the rollout doc
- note: The Q4 board needs a cleanup before planning
- blocked: ABC-1301 waiting on API keys from infra
PrefixMeansWhat happens the next morning
done:You finished somethingThe matching open to-do or brain task is closed
mtg: or meeting:A meeting and what came out of itThe line and its details are added to the brain note it's about
note:An update, a decision, an ideaAdded to the brain note it's about
blocked:Work is stuck or waitingAdded to the brain note it's about

A line with no prefix still works. BlackOps works out which kind it is, and if it can't tell, it asks you instead of guessing.

Filing it the next morning

Turn on File it the next morning and, before the next note is written, BlackOps reads the previous note's Work Log and acts on each line:

  • It only looks inside this note's own scope: the to-dos queued for this context, the open tasks in this note's brains, and the notes in those brains. It never closes or edits anything else.
  • To keep a note out of it, tag the note no-autofile. Use this for structured notes a routine maintains, such as a ledger or a roster, where an added bullet would be in the wrong place.
  • Each line is matched by a model that picks from that list or says none of them fits. A change is only made when the match is confident.
  • Anything it isn't sure about is left alone and listed under Needs your call in the new note, with the reason. If matching is unavailable that morning, the lines are listed there too, and regenerating today's note tries them again.
  • Each line is acted on once. Regenerating a note never closes a to-do twice or files a meeting twice.

The new note opens with a Processed from block, right after the previous/next links, listing every change and linking each note it touched:

## 🔁 Processed from 2026-10-06

- ✅ Closed todo **Ship the export fix** · "done: ABC-1234 shipped the export fix"
- 📝 Added to [[Work Log/release-planning|Release planning]] · "mtg: Release planning"

**Needs your call**

- "done: tidied up the old branch" · No open todo or task matched confidently

Each line is sent to the matching model together with this note's open to-do and task text and the titles of the notes in its brains.

A daily log in a brain

Pick a brain under Keep a daily log in a brain and every Work Log line also goes into one dated note in that brain (for example 2026-10-06 · Work Work Log), with where each line was filed. A mtg:, note: or blocked: line with no better home is logged there instead of waiting on you. This is a good fit for a work-log brain you already use for status reports.

Ticket links

Set Ticket link to your tracker's URL with {key} where the ticket number goes, for example https://yourcompany.atlassian.net/browse/{key}. Ticket numbers such as ABC-123 then become links in the Processed from block and in everything filed into your brains. The link must start with https://.

Brains: why this runs in BlackOps

A script that builds a daily note from your vault can only guess at what's new, from file dates and folder names. BlackOps knows which brain every note belongs to, when it was created and when it changed, and what each brain is still waiting on you for. So each daily note can answer "what happened in the things I care about since yesterday?" directly:

  • A work note pointed at your project brains lists the meeting notes, decisions and answers added to them since the last working day, plus the tasks those brains are waiting on.
  • A personal note pointed at your home and travel brains does the same for those, without any work noise.

A brain's compiled summary note is skipped (it's regenerated on every compile, so it's not news), and archived notes are left out. Up to 40 notes are listed per day, newest first.

Connecting a calendar

Most calendar apps can give you a private ICS link:

  • Outlook: Settings → Calendar → Shared calendars → Publish a calendar. Copy the ICS link.
  • Google Calendar: Settings → your calendar → Integrate calendar. Copy the Secret address in iCal format.
  • iCloud: Share the calendar as a Public Calendar and copy the webcal:// link.

Paste it into the Calendar section of the note's settings. BlackOps encrypts it when you save it and never shows it again; the page only says the calendar is connected. Use Replace link or Disconnect to change it. Only https:// and webcal:// links are accepted, and BlackOps won't fetch a link that points at a private or internal network address.

The calendar is fetched each time a note is generated. Recurring meetings, skipped occurrences, moved occurrences and cancellations are all handled. Meeting titles and times from that day are sent to the AI model that writes the focus summary. Set ai_focus: false if you'd rather they weren't.

Checking off todos

Every todo is written as a checkbox with a hidden block ID at the end of the line:

- [ ] Send the config doc _(carried 2 days)_ ^di-3f2a…

Tick it in Obsidian and, once your vault syncs, BlackOps marks that item done, so it doesn't carry into tomorrow's note. The block ID is what makes this work, so leave it on the line. Editing the todo's text doesn't matter. You can also mark items done with complete_daily_item.

Checking off only works one way. Unticking a box doesn't reopen the item. To bring a todo back, queue it again.

Who owns the note

The note is a BlackOps note, written to the path you chose. Checkoffs flow back from Obsidian. Other edits you make to the file stay in the vault, but regenerating that day replaces the file, so treat regeneration as a fresh start for that day. The scheduled run generates each day once, and it skips a day you've already generated by hand, so it never overwrites a note you made manually.

Related

  • Daily Notes Playbook: how to use daily notes day to day, what to say to your assistant, moving off a script or plugin, and troubleshooting.
Want this page as machine-readable markdown? GET /docs/features/daily-notes.md