Daily Checkbox Focus
approvedby Geo
Focus the first empty checkbox when opening daily notes. - This plugin has not been manually reviewed by Obsidian staff.
Daily Checkbox Focus
Daily Checkbox Focus is a small Obsidian plugin that moves the editor cursor to a configured empty checkbox when you open a daily note.
It is intended for daily notes where the first empty checkbox in your preferred capture area is the next place you want to type.
What it does
- Detects daily notes by filename:
YYYY-MM-DD.md. - Works no matter which folder contains the daily note, for example
Alfa/WRK/2026-05-19.md. - On open, jumps once to the first truly empty checkbox line in the configured search area:
- [ ]* [ ]+ [ ]
- Inserts one missing empty checkbox in the top capture area when that setting is enabled.
- Places the cursor after the checkbox marker and at least one following space.
- Lets you choose whether to search before the first heading or across the full note after optional frontmatter.
- Provides manual commands for the active Markdown file:
Jump to configured empty checkboxShow configured checkbox target
Checkbox search modes
By default, the plugin searches the top capture area. The top capture area starts at the beginning of the file, after optional YAML frontmatter, and ends before the first Markdown heading:
---
date: 2026-05-20
---
- [ ]
# Work
In this mode, the plugin only searches this area. It never focuses empty checkboxes below the first heading, so sections such as # Work, ## Todo.Family, # Life, or # Hobbies are left alone.
You can change Checkbox search to First on page if you want the plugin to focus the first empty checkbox after optional YAML frontmatter anywhere in the note, including below headings.
How it works
When a Markdown file opens, the plugin checks whether the filename matches YYYY-MM-DD.md. If it does, the plugin briefly retries while Obsidian finishes loading the editor, then moves the cursor to the first empty checkbox line it can safely use in the configured search area.
If there is no matching empty checkbox and Create missing checkbox is enabled, the plugin inserts one empty checkbox immediately before the first heading and keeps one blank line before that heading. If the note has YAML frontmatter and no content before the first heading, the checkbox is inserted after the frontmatter.
The automatic jump runs at most once for each file-open session. If you start typing after opening the note, pending automatic jumps are cancelled so your editing is not interrupted.
The plugin ignores empty checkboxes inside fenced code blocks, including tasks code blocks, and ignores callout or blockquote lines that start with >.
Settings
Checkbox search:Before first headingby default. ChooseFirst on pageto search the full note after optional YAML frontmatter.Create missing checkbox: enabled by default. When enabled, the plugin inserts one empty checkbox before the first heading if no matching empty checkbox exists. When disabled, the plugin only focuses an existing empty checkbox.Focus on open: enabled by default. When disabled, automatic focus on daily-note open is turned off, but the manual command still works.Current target: shows which checkbox would be focused in the current note.
Installation
- Open Obsidian settings.
- Go to
Community plugins. - Choose
Browse. - Search for
Daily Checkbox Focus. - Install and enable the plugin.
Manual installation
You can also install a release manually:
- Download
main.jsandmanifest.jsonfrom the GitHub release. - In your vault, create
.obsidian/plugins/daily-checkbox-focus/. - Put
main.jsandmanifest.jsonin that folder. - Restart Obsidian or reload plugins.
- Enable
Daily Checkbox FocusinCommunity plugins.
Troubleshooting
- Confirm your daily note filename is exactly
YYYY-MM-DD.md, such as2026-05-19.md. - Confirm the target checkbox is inside the configured search area and has no text after it.
- [ ]works;- [ ] somethingis intentionally skipped. - Confirm the checkbox is not inside a fenced code block and is not in a callout or blockquote line.
- Check
Create missing checkboxif you expect the plugin to insert a missing top checkbox. - Run
Show configured checkbox targetfrom the command palette or pressCurrent targetin settings to see the current file path, daily-note match status, search range, session state, detected target, and nearby search-area lines containing[ ]. - Open the developer console if you need the structured debug log.
Privacy and safety
Daily Checkbox Focus does not send data anywhere. It does not use network requests, Node.js APIs, or Electron APIs. It only reads the currently open editor content enough to find or insert the configured checkbox target and move the editor cursor.
Limitations
- Automatic focus only runs for files named
YYYY-MM-DD.md. - The daily note may be in any folder, but the filename must match that date format.
- The plugin may insert one empty checkbox before the first heading when
Create missing checkboxis enabled. - The plugin does not change Tasks plugin settings or depend on the Tasks plugin.
Compatibility
- Minimum Obsidian version:
1.0.0. - Desktop-only: no. The plugin does not use Node.js or Electron APIs, so
isDesktopOnlyisfalse.
Releases
Release tags should match the plugin version exactly. For version 1.2.1, create and push the tag 1.2.1.
For plugin developers
Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.