$mdflow tasks

A task manager built on markdown checkboxes.

You already write - [ ] to-dos in your notes. MDflow's Tasksview gathers every one of them, from every document in your workspace, into a single filterable list — by status, due date and owner. There's no separate task database: your checkboxes stay plain markdown, so they travel with your files.

mdflow.cz/tasks — 7 tasks · 1 encrypted doc not scanned
whenAll7Due1Today1This week3Next week1
My Documents / Launch plan.md
Draft the launch email
Confirm the changelog copy
Line up the social posts
Cut the release branch
Work / Q3 review.md
Review the Q3 draft
Send the invoice
$man mdflow-tasks

Your to-dos were always there. Now they add up.

Checkboxes are the most natural way to track work in a note — but spread across dozens of documents, they're easy to lose. Tasks gives them one home without changing how you write.

$grep -r '- \[ \]'

Every checkbox, one list

You already scatter - [ ] checkboxes through meeting notes, project docs and readmes. The /tasks view walks every plaintext document in the active workspace and collects them into a single Asana-style list — grouped by folder and document, so you never hunt for a to-do again.

$cat task.md

No database, no lock-in

Tasks are not a new kind of record — they stay as lines inside your markdown, which remain the single source of truth. Check one off in the list and MDflow rewrites that source line and saves the document. Export the workspace and every task travels with it, readable in Obsidian, VS Code or on GitHub.

$filter --when --who

Filter by status, date and owner

Slice the list by Status (all, outstanding, completed), by When (due/overdue, today, this week, next week) and by Who — you, or any teammate whose email appears as an owner. Every filter shows a live count, and a text search narrows further.

$edit --inline

Edit without leaving the list

Toggle done, click to rename, set or clear a due date from a picker, and assign an owner — all inline. Overdue chips turn red, today amber. Indented subtasks nest under their parent, and you can collapse a document's tasks or all of them at once.

$cat tasks.md

Plain markdown, with optional dates and owners

A task is any line that starts with a checkbox. Two optional groups in parentheses, right after the box, add a due date and an owner — MDflow classifies them by content, so the order is forgiving and you can set them from the list instead.

- [ ] Draft the launch email

A plain open task. With no owner it's yours — it shows under Me.

- [x] Ship the changelog entry

An x marks it done — struck through, filed under Completed.

- [ ] (20260706) Review the Q3 draft

A due date as (YYYYMMDD) right after the box — this one is due Jul 6, 2026, and buckets into When.

- [ ] (20260706)(jan@example.com) Send the invoice

Add an owner as (email). Date then owner; clear either in the list and MDflow drops the group.

$mdflow tasks --help

Three steps, no new habits

01

Write checkboxes as you already do

Anywhere in any document, jot - [ ] follow up with Sam. It's just GitHub-Flavored Markdown — nothing new to learn, and it renders as a checkbox in preview.

02

Open Tasks to see them all

Switch to /tasks from the sidebar. MDflow reads your documents in the browser, gathers every checkbox, and groups them by folder and document with live counts per filter.

03

Filter, check off, move on

Narrow to what's due this week or assigned to you, tick tasks off, or add a new one inline. Each change writes straight back into the source markdown — the list and your files never drift apart.

$diff tasks db

A task manager with nothing to lock in

Most task tools keep your to-dos in a proprietary database, apart from your writing. MDflow does the opposite: the checkboxes in your notes are the tasks.

  • Source of truth. Edits in the list rewrite the markdown line and save the document — the file and the list can't drift apart.
  • Fully portable. Download a .md or export the workspace as a .zip; every task comes along, readable in Obsidian, VS Code or on GitHub.
  • Private by design. Encrypted documents are counted and skipped, and parsing runs in your browser — the server never reads plaintext to build the list.
  • Agent-writable. Scripts and AI agents that write a document body over the API or MCP can add a - [ ] that shows up here.
$man mdflow-tasks --faq

Questions

What is the MDflow Tasks view?
Tasks is a /tasks section in MDflow that aggregates every markdown checkbox — lines starting with - [ ] or - [x] — from all the documents in your active workspace into one filterable, editable list, similar to Asana or Wunderlist. Tasks are not a separate database: they stay as lines inside your markdown, which remains the single source of truth. Editing a task in the list rewrites the source line and saves the document.
How do I add a due date or an owner to a task?
Put them in parentheses right after the checkbox. A due date is eight digits, (YYYYMMDD) — for example - [ ] (20260706) Review the draft. An owner is an email in parentheses, (jan@example.com). You can combine them, date first: - [ ] (20260706)(jan@example.com) Send the invoice. You can also set or clear the date and owner from the row controls in the list, and MDflow rewrites the markdown for you.
Where are my tasks stored?
In your markdown documents, as ordinary checkbox lines — there is no tasks table and no hidden metadata store. That means your tasks are fully portable: download a document as .md or export the whole workspace as a .zip and every task comes with it, readable in Obsidian, VS Code, or on GitHub. Nothing locks your to-dos into MDflow.
How do I filter tasks?
The Tasks sidebar has three groups, each with live counts. Status filters by All, Outstanding, or Completed. When filters by due date — Due (overdue), Today, This week, or Next week. Who filters by owner — you (which includes tasks with no owner) or any teammate whose email appears on a task. A text search box narrows the list further by description.
Is Tasks a paid feature?
No. Tasks is available to every signed-in MDflow user on any plan, including the free plan. It is scoped to the active workspace, so switching workspaces swaps to that workspace's tasks.
Do encrypted documents show up in Tasks?
No. MDflow encrypts document bodies in your browser and the server only ever stores ciphertext, so an encrypted document can't be scanned for tasks. Those documents are counted and skipped — the Tasks header notes how many were not scanned — and all parsing happens in your browser against plaintext bodies. The server never reads your content to build the list.
Can AI agents create tasks too?
Yes, indirectly. Because a task is just a - [ ] line in a document body, anything that can write a document body can create a task — including scripts and AI agents using MDflow's HTTP API or MCP server. An agent that appends - [ ] Follow up on the RFC to a document will have that task appear in your Tasks view the next time it loads.
How is this different from Notion, Todoist or the Obsidian Tasks plugin?
Notion, Todoist and similar tools keep tasks in a proprietary database, separate from your prose. MDflow's tasks are the checkboxes already inside your markdown notes — one built-in view over them, with nothing to install and no lock-in. Obsidian can do something similar but needs the community Tasks plugin and a local vault; MDflow's Tasks view is built in and works in the browser across your whole workspace.
$mdflow tasks

Keep writing notes. See the to-dos add up.

Tasks is built in and free on every plan. Write a checkbox in any document, open Tasks, and your whole workspace's work is in one place.