Hold yourself accountable by tracking which days you didn't engage with your daily notes.
This plugin scans your daily notes folder and shows you:
- Days Not Engaged: Days where you either didn't create a note or checked very few tasks
- Days Engaged: Days where you actively checked off tasks
- Current Streak: How many consecutive days you've been engaged
- Longest Streak: Your best streak in the time period
- 📊 Weekly, Monthly, and Yearly Views: See your engagement over different time periods
- 🔥 Streak Tracking: Stay motivated with current and longest streaks
- ⚙️ Customizable Threshold: Set your own minimum for what counts as "engaged" (default: 3 checked tasks)
- 🔍 Detailed Breakdown: See exactly which days you missed and why
- 🔄 Auto-Detection: Automatically finds your daily notes folder from Daily Notes or Periodic Notes plugin settings
Not in the Community Plugins store yet. Two ways to install:
- Install the BRAT plugin from Community Plugins and enable it.
- BRAT → Add beta plugin → enter
SattaRIP/obsidian-task-accountability. - Enable "Task Accountability Tracker" in Settings → Community Plugins.
- Download
main.js,manifest.json, andstyles.cssfrom the latest release. - Put them in
.obsidian/plugins/task-accountability/in your vault. - Enable it in Settings → Community Plugins.
Mobile has no hotkeys, so run the cycle from the editing toolbar (the row above the keyboard):
- Mobile → Settings → Toolbar.
- Add the Cycle task state command — its button shows a
[x]glyph so it sits next to (and is distinct from) Obsidian's built-in checkbox-toggle button. - While editing, tap a task line, then tap the
[x]button to rotate through the states.
- Open the tracker: Click the bar chart icon (📊) in the left ribbon, or use the command palette (Ctrl/Cmd+P) and search for "Open task statistics"
- View your stats: Switch between Week, Month, and Year views to see your engagement
- Check the details: Scroll down to see which specific days you missed and why
By default, a day is considered "engaged" if you checked more than 3 tasks in your daily note. You can adjust this threshold in settings.
A day is "not engaged" if:
- You didn't create a daily note file for that day
- You created a note but checked ≤3 tasks (or your custom threshold)
Only required tasks count toward engagement. Optional (!?) and if-necessary (?) tasks are excluded.
Counts only leaf tasks — tasks with no children — to avoid double-counting a parent and its subtasks. Cancelled [-] tasks are ignored entirely.
percentage = done leaves ÷ total leaves × 100
Only top-level tasks contribute here. Each gets a weight based on:
priority = importance² (i:N) ÷ difficulty (d:N) ← default
Both default to 5 if unrated, so an unrated task has priority 5.0. A task rated i:8 d:2 has priority 32.0 — importance is squared so high-importance tasks grow disproportionately faster than low-importance ones, while difficulty still penalizes but can't cancel out a truly important task.
The formula can be changed in Settings → Task Accountability → Priority formula. Enter any math expression using i for importance and d for difficulty. Supports +, -, *, /, ^, and parentheses. Examples:
-
i*i/d— importance-dominant (default) -
i/d— balanced -
i— ignore difficulty entirely -
(i*2)/d— double the influence of importance -
Leaf root: contributes its full priority if done, 2/3 priority if procrastinated
[!] -
Parent root: contributes
priority × (done child-priority ÷ total child-priority)— the parent's rating sets its weight, and its children's own priorities determine what fraction is earned. Finishing a hard/important sub-step fills more of the parent than a trivial one, so thei:/d:you put on sub-tasks actually count.
Each child contributes its own priority p (from its i:/d:, same formula as top-level tasks) as the unit:
| Child type | Empty [ ] |
Done | Not done |
|---|---|---|---|
| Required | — | p / p | 0 / p |
If necessary ? |
excluded | p / p | 0 / p |
Optional !? |
excluded | p/3 / p/3 | 0 / p/3 |
Empty means literally untouched [ ]. Any other state — procrastinated, avoided, deferred — counts as filled in and follows normal state rules.
Optional children that are done contribute 1/3 of their priority to the parent. Optional children that are empty don't affect the score at all.
If-necessary children only count if you actually engaged with them. If left empty, they're treated as unnecessary and excluded.
| State | Meaning | Counts as |
|---|---|---|
[x] |
Done | Done |
[/] |
In progress | Done |
[!] |
Procrastinated | Done (2/3 weight in priority score) |
[~] |
Avoided | Not done |
[>] |
Deferred | Not done |
[-] |
Cancelled | Excluded from everything |
| Symbol | Range | Effect |
|---|---|---|
i:N |
1–10 | Importance — rate 1–10, e.g. i:7 (symbol configurable in settings) |
d:N |
1–10 | Difficulty — rate 1–10, e.g. d:3 (symbol configurable in settings) |
? |
suffix | If necessary — excluded if empty, full credit if filled in |
!? |
suffix | Optional — excluded if empty, 1/3 bonus credit if done |
Any unchecked leaf task with i:7 or higher is flagged in the stats modal, shown as [i:8 d:3] Task name so you can see at a glance which high-importance tasks are still pending and how hard they are.
Access settings via Settings → Task Accountability:
- Daily notes folder: Path to your daily notes (auto-detected from Daily Notes plugin)
- Engagement threshold: Minimum number of checked tasks to count as "engaged" (default: 3)
- Default period: Choose Week, Month, or Year as your default view
- Period type: Rolling (last N days) or Calendar (current week/month/year)
- Importance symbol: Prefix for importance rating in task lines (default:
i:) - Difficulty symbol: Prefix for difficulty rating in task lines (default:
d:) - Priority formula: Math expression combining importance (
i) and difficulty (d) — defaulti*i/d
- Works with Daily Notes (core plugin) or Periodic Notes (community plugin)
- Daily notes must be in markdown format (
.md) - Daily notes must have dates in
YYYY-MM-DDformat in the filename
- [x] Write chapter outline i:8 d:3
- [x] Draft opening scene
- [!] Write dialogue ← procrastinated, still counts as done
- [ ] Add epigraph !? ← optional, left empty — excluded
- [ ] Reply to emails i:4 d:1
- [x] Exercise i:6 d:2 ? ← if necessary, done — full creditThe weighted % is driven by the top-level tasks' priorities (8÷3 ≈ 2.67, 4÷1 = 4.0, 6÷2 = 3.0). The parent task scores based on what fraction of its children are done, with the optional child invisible since it's empty.
This plugin is based on the idea that tracking engagement is more important than perfection. It's not about completing every single task — it's about showing up consistently and engaging with your daily notes.
The priority weighting means that finishing high-importance, low-difficulty tasks moves your score more than finishing unimportant or very hard ones. This nudges you toward doing the things that matter most and are actually within reach.
Found a bug or have a feature request? Open an issue
Created by Mythra PS
MIT