Get AI summaries of any video or article — Sign up free
How I Built a Task Management System using Obsidian MD and Todoist Sync Plugin thumbnail

How I Built a Task Management System using Obsidian MD and Todoist Sync Plugin

John Mavrick Ch.·
5 min read

Based on John Mavrick Ch.'s video on YouTube. If you like this content, support the original creators by watching, liking and subscribing to their content.

TL;DR

Design Todoist around a project hierarchy that matches how work is organized (e.g., broad life areas as projects, niche areas as sections).

Briefing

A practical way to turn Obsidian into a real task hub is to pair it with Todoist and the Todoist Sync plugin, then drive everything inside Obsidian through custom queries. The core idea is simple: create tasks quickly in Todoist (on phone or browser), sync them into Obsidian, and use query blocks to surface exactly the tasks a user needs—today, this week, or tied to a specific project—without giving up Obsidian’s note-based workflows.

The setup starts in Todoist. A Todoist account is created, then a project structure is designed around broad life areas (the transcript uses “second brain” as a top-level project, with “sections” as more specific sub-areas like different programs). Because the free tier limits projects, the structure is kept lean. Task properties are then defined using labels: time estimates (small/medium/large) and context (e.g., at home vs. outside). This matters because those labels become the building blocks for filtering and sorting inside Obsidian.

Task entry is optimized for speed. Using Todoist’s quick-add (triggered by Q), a task can be typed with a due date/time like “tomorrow 6:30 PM,” then assigned to the correct project and section via hashtags (e.g., #second brain and /obsidian). Additional properties are added through tags and shortcuts—such as marking a task as small, and setting priority with a number from 1 to 4. Once the structure is built, the next step is syncing.

In Obsidian, the Todoist Sync plugin is installed via Community plugins. The plugin requires an API token, obtained from Todoist. After syncing is enabled, tasks appear in Obsidian through query blocks written in code fences. Each query specifies a Todoist list name and a filter expression—such as “due today AND project is second brain,” or an OR-style condition when multiple criteria should match. Sorting is handled explicitly, typically by date first and then priority, so overdue items bubble up when desired.

The transcript demonstrates three high-value query placements: a daily template note that shows overdue or due-today tasks; a weekly review template that shows tasks due before Monday (and an alternate filter for the next week using do after Sunday and do before next Monday); and project notes that list all tasks tied to a project like “second brain,” optionally filtered further by section. It also shows creating Todoist tasks directly from Obsidian using the command palette (“add a todoist task”), then assigning project, labels, due date, and priority.

Overall, the system turns Obsidian’s markdown-first environment into a task management layer driven by Todoist’s structured data—while keeping task views organized through reusable templates and query-based filtering.

Cornell Notes

Todoist Sync plus Obsidian query blocks lets users manage tasks in Todoist while viewing them inside Obsidian with precise filters. The workflow begins by designing Todoist projects (e.g., “second brain”), then adding labels for time estimates (small/medium/large) and context, plus priorities and due dates. After installing the Todoist Sync plugin and providing an API token, tasks are pulled into Obsidian using code-fenced queries that filter by due date, project, labels, and sections, then sort by date and priority. Templates like daily notes, weekly reviews, and project notes become the main “views,” showing only what’s relevant at the moment. This approach keeps task entry fast while making Obsidian the control center for planning and review.

How does the system make Obsidian useful for task management when Obsidian is mainly for notes?

It relies on Todoist as the task database and Obsidian as the display layer. Tasks are created in Todoist (including due dates, priorities, projects, and labels), then synced into Obsidian using the “Todoist Sync” Community plugin. Inside Obsidian, custom query blocks pull only the tasks that match specific criteria (like due today or belonging to a project), so Obsidian becomes a structured task dashboard rather than just a place for markdown checkboxes.

Why define labels like “small/medium/large” and context labels in Todoist?

Those labels become filterable properties in Obsidian queries. The transcript uses time-estimate labels (small under 15 minutes, medium 30–60 minutes, large over an hour) and context labels (such as at home or outside). With those labels stored on each Todoist task, Obsidian queries can narrow results to exactly the tasks that fit a user’s current constraints—like showing only small tasks due today within a specific project.

What does a typical Obsidian Todoist query do?

A query sets a Todoist list name and then applies a filter expression (for example, tasks that are due today AND in the “second brain” project). It can also use OR logic by switching the operator to an “or” style line, and it can group conditions with brackets to control evaluation order. Finally, it sorts results—commonly by date first and then by priority—so overdue tasks surface before upcoming ones.

How are daily and weekly task views implemented?

Daily views are placed in a daily template note with a query that shows tasks that are overdue OR due today, sorted by date then priority. Weekly review views use a filter like “due before Monday” (so tasks for the week starting Monday appear when Monday is the current day), sorted the same way. To view the next week, the filter changes to “do after Sunday” and “do before next Monday,” and the query will return nothing if there are no matching tasks.

How can tasks be created from inside Obsidian instead of only in Todoist?

Obsidian can trigger Todoist task creation via the command palette by selecting “todoist” and choosing “add a todoist task.” From there, fields like project (e.g., second brain), labels (e.g., medium), due date (e.g., today), and priority (e.g., 3) can be filled. After adding, refreshing shows the new task in the relevant Obsidian query results.

Review Questions

  1. What specific Todoist task properties (projects, labels, due dates, priorities) are used to drive the Obsidian query filters?
  2. How would you modify a daily query to show only tasks in a particular section (not just the whole project)?
  3. What changes in the weekly filter logic distinguish “this week” from “next week” in the transcript’s examples?

Key Points

  1. 1

    Design Todoist around a project hierarchy that matches how work is organized (e.g., broad life areas as projects, niche areas as sections).

  2. 2

    Use labels for properties you’ll want to filter later, such as time estimates (small/medium/large) and context (at home/outside).

  3. 3

    Create tasks quickly in Todoist using quick-add, assigning due dates/times, projects/sections, labels, and priority numbers (1–4).

  4. 4

    Install the Obsidian “Todoist Sync” Community plugin and connect it with a Todoist API token so tasks can be pulled into Obsidian.

  5. 5

    Build Obsidian code-block queries that filter by due date, project, labels/sections, then sort by date and priority for predictable ordering.

  6. 6

    Place reusable queries into templates like daily notes, weekly reviews, and project notes so the right task list appears at the right time.

  7. 7

    Use Obsidian’s command palette to add Todoist tasks directly when you need to capture work without leaving Obsidian.

Highlights

The system turns Obsidian into a task dashboard by syncing Todoist data and rendering it through query blocks with explicit filters and sorting.
A single “daily” query can prioritize overdue items by using an overdue OR due-today filter, then sorting by date and priority.
Weekly review logic shifts by changing the due-date window (before Monday for the current week; after Sunday and before next Monday for the next week).
Project notes can act as task views by filtering queries to a specific Todoist project like “second brain,” optionally narrowing further by section.

Topics

Mentioned