Great piece of dev. This tool has been hugely useful to my workflow.
At the moment I use obsidian in two contexts. One for my own knowledge structure and secondly as a logging system for work. The structure I use can be thought of as a bullet journal. Each new note is a meeting with a separate series of notes for useful information or a rolling front page.
A hugely helpful feature would be a todo aggregator. Each meeting might have todo’s inside it. Keeping track of these todo’s is particularly difficult. An aggregator plugin showing all open or closed todo’s with a link to the originating note would aid a huge amount.
Love this idea as well! I believe Roam allows for aggregating TODOs simply by making the syntax for a TODO include a link to the “TODO” page (i.e. {{[[TODO]]}}). I believe using tagging could work in obsidian, I think it may feel clunky to remember to add the tag to the checkbox: - [ ] #todo A task to remember.
Maybe the scope of the “aggregator” could be extended to function like “inclusion macros” or even “smart folders” (that work on a search pattern (e.g. all notes that have the #todo tag but not the #completed tag)
But this depends on a single note being a “task”.
This would also enable to generate a table of contents of nested notes in folders.
I’ve been toying around with some prototypes for how the interactions could work for an agenda view.
The simplest solution is to just collect all the lines with the task checkbox (i.e. - [ ] or - [x] ) from across the vault into a single view that allows a user to see and toggle its state (alternately, each entry in this list could link back to the original page, no strict need for projectional editing in the agenda view).
This could be further improved with date/times associated with a task. I’ve found success deriving a list of “associated dates” for each task from:
The note’s title (if the parent note is a daily note) or the line’s version history (if in a git repo, or some other versioned vault)
When the agenda view has this information, the UI can not filter on completed status, creation date, and “associated” date. For example, if I create a task in a daily note: