Notes
Tasks
Write tasks as checkbox lines in any note, then list, add and check them with the app or the loam CLI.
A task is a checkbox line in any note. Loam reads every task in your vault and lists them together, with their due date, priority and project. There is no separate task database: the line in your note is the task.
Write a task
Start a list item with [ ] for an open task, or [x] for a done one. Any list marker works, and nested tasks count.
---
project: Launch
---
## Tasks
- [ ] Ship the beta ๐
2026-10-20 #work โซ
- [ ] Call Bob due:2026-10-22 !low
- [x] Write the plan โ
2026-10-17Add dates, priority and tags
- Due date:
๐ 2026-10-20ordue:2026-10-20. - High priority:
โซor!high. Low priority:๐ฝor!low. - Done date:
โ 2026-10-17. Loam writes it when the task is checked. - Tags:
#workor#work/calls. A filter on#workalso finds#work/calls. - Project: the note's
projectproperty. Without one, the note's folder.
Find your tasks in the app
- The task list has four views. Inbox shows open tasks without a date, Today shows overdue tasks and those due today, Upcoming lists the rest by date, and All Tasks groups every open task by note. Its menu filters by project or tag and shows done tasks.
- The Tasks panel in the right sidebar shows what is overdue or due today.
- Quick add writes the task to today's daily note, or to
Inbox.mdwhen daily notes are off. - In a note, type
@and pick a day, such as@tomorrowor@fri. It writes the due date.
Tasks that are notes of their own, with a status column, belong to a project. See Projects.
Add and check tasks from the CLI
The CLI works on any vault. Pass --vault with the vault folder, or run it from inside the vault.
- Add a task to a note. The note is created if it does not exist.
- List the open tasks of one project.
- Check a task off. Pass the
lineand thetextthattasks.listreturned.
loam --vault ~/Notes tasks.add path=Work/Launch.md text="Ship the beta ๐
2026-11-20 #work !high"
loam --vault ~/Notes tasks.list done=false project=Launch
loam --vault ~/Notes tasks.toggle path=Work/Launch.md line=8 text="Ship the beta #work"Commands
| Command | Arguments | What it does |
|---|---|---|
tasks.list | done (true or false), dueBefore, dueOn (a date or today), project, tag, path, text, filter (JSON) | Lists every task, sorted by due date, then priority. All arguments are optional. |
tasks.add | path, text | Adds - [ ] text to the end of the note's ## Tasks section, or to the end of the note. Creates the note if missing. |
tasks.toggle | path, line, text | Checks or unchecks a task. It writes nothing if the line no longer holds that task. |
For AI agents:
loam list shows the tasks.* commands with their arguments.