---
title: "06 Tasks"
canonical_url: https://mdflow.cz/share/c/h0L7MvX5Cy5sST3qPnApqHOmrQ36JTVy169qJMtDMya9Kc30zm04cg9OuPSSPwvj/0a55924e-39bf-4e84-ba9e-1abe68c0e0bf
md_url: https://mdflow.cz/share/c/h0L7MvX5Cy5sST3qPnApqHOmrQ36JTVy169qJMtDMya9Kc30zm04cg9OuPSSPwvj/0a55924e-39bf-4e84-ba9e-1abe68c0e0bf.md
visibility: public
---

# Tasks

The `/tasks` view aggregates every checkbox-style task scattered across the markdown documents of the active workspace into one Asana-style list.

**Tasks are available to every signed-in user on any plan.** They are not Pro-gated.

## The core idea

Tasks are **not a separate entity**. They remain checkbox lines inside your document bodies (see [02 Markdown Syntax Reference](/doc/aebe9231-8a9b-49d6-9940-1efb2353284e)):

```markdown
- [ ] Send the invoice
- [x] Book the venue
```

Your documents stay the single source of truth. The Tasks view is a lens over them, not a database beside them. Tick a task in the Tasks view and MDflow rewrites that line in its source document and saves it.

This has a pleasant consequence: **anything that can write a document body can create a task.** An AI agent adding `- [ ] Follow up with Acme` to a meeting note via the API or MCP server has just created a task that appears in your list. No task API is needed, because tasks are just markdown. See [03 MCP Servers](/doc/aad78a27-0654-4781-b4b7-6ced0b14dbfc).

## Due dates and owners

Give a task an optional due date and owner with two parenthetical groups **right after the checkbox**:

- a due date as `(YYYYMMDD)`
- an owner as `(email)`

in either order:

```markdown
- [ ] (20260706)(jan@example.com) Send the invoice
- [ ] (jan@example.com)(20260706) Same thing, other order
- [ ] (20260706) Due date, no owner — so it's mine
- [ ] Just a task
```

**A task with no owner is yours.**

This syntax degrades gracefully. Open the same file in Obsidian or on GitHub and you see an ordinary task with some text at the front. Nothing is lost, nothing is proprietary.

## Filtering

Filter the list by:

- **Status** — all, outstanding, completed
- **Due date** — due/overdue, today, this week, next week
- **Owner**

Each filter group shows a **live count**. There is also a text search over task descriptions.

## Editing inline

Without leaving the view you can:

- toggle a task done,
- rename it,
- set or clear a due date from a picker,
- set or clear the owner.

**Overdue dates show red; today shows amber.**

## How the list is organized

Tasks are grouped by **folder and document**, so you always know where a task actually lives. Indented subtasks nest under their parent. A document's tasks can be collapsed individually, or all at once.

## Creating tasks

- **Inline under any document** in the view.
- **Top-level quick-add**, which writes to a `Tasks` document in the active workspace.

## Encrypted documents

Encrypted documents are **counted and skipped — never scanned**. See [01 Document Encryption](/doc/b230e154-6c58-4bfd-8a7a-c70bc7bebcd7).

You will see that they exist and were excluded, but MDflow does not attempt to read them. All task parsing happens **in your browser against plaintext bodies**, so the server never reads your content to build the list.

## Scope

The view is scoped to the **active workspace**. Switch workspaces to see a different set of tasks. There is no cross-workspace task list. See [01 Workspaces](/doc/ffdfed0b-680d-4018-9727-f36b0f9d6cb0).
