Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

GTD Tasks

unpreditableunpreditable4k downloads

A dedicated panel to organize tasks across the vault using the Getting Things Done methodology (Today, This Week, Someday…)

Add to Obsidian
  • Overview
  • Scorecard
  • Updates20

Your tasks are scattered across hundreds of notes. This Obsidian plugin gathers them into one sidebar panel, sorted by when you'll actually do them: Today, This Week, Next Week, This Month, Someday (the Getting Things Done time horizons).

Your notes stay the source of truth. A bucket is just a tag on the task line, like #gtd/today.

Have the Tasks plugin? The two work together. This panel reads the fields Tasks writes on your task lines and puts them to use.

Report a bug · Request a feature · Ask a question

Demo


Features

  • Time-horizon buckets — Today ⚡, This Week 📌, Next Week 🔭, This Month 📅, Someday / Maybe 💭. Rename them, swap the emoji, reorder them, or write your own date rules.
  • To Review inbox 📥 — every task without a bucket lands here, so nothing slips through.
  • Three ways to move a task — quick-move buttons on the row, drag-and-drop between buckets, or right-click.
  • Subtask-aware — indented tasks track with their parent, with a count badge and a prompt to move them along.
  • Overdue and misfiled flags — overdue once a due date has passed, misfiled when a task sits in a bucket that will make you miss it.
  • Reads Tasks plugin fields — due dates, priority, recurrence and the rest show up as badges and on hover. Supports Emoji and Dataview formats.
  • See what you got done 🏆 — a report of tasks completed today, yesterday, this week or last week, with a 10-week graph.
  • Celebration animations — confetti, a pixel creature, both, or nothing.

Also: search, clickable links, scoping to folders or files, a global task filter, Dataview-friendly inline fields, per-bucket status bar counts, a compact view, and 13 languages. See Configuration.


Works with the Tasks plugin

Run both, since they solve different problems.

The Tasks plugin adds structure to a task: a due date, a priority, a repeat rule. It also searches your vault and lists the matching tasks inside a note.

This plugin is for one view you keep open all day. Drag tasks between buckets, or reorder them inside one, and your plan for the day changes in seconds.

How they work together

The plugin assigns each task to a bucket based on its 📅 due date or ⏳ scheduled date, depending on the Auto-assignment date setting. Defaults to scheduled date first, with fallback to due date.

Pin a task (via the right-click menu, a quick-move button, or dragging it to another bucket) to keep it in that bucket and ignore the dates. Unpin (via the right-click menu) to let automatic assignment take over again.

Checking a task off in the panel does what checking it off in the editor does, including the Tasks plugin's recurrence and completion-date setting.

With Tasks installed, right-click a task → Edit task to change it in Tasks' own edit dialog; saving writes it back to its note.

Tasks that can't start yet (a 🛫 start date still ahead) or that wait on an unfinished task (⛔) are dimmed. Hover one to see why. Right-click a blocked task to jump to what's blocking it.

If you use Tasks' global filter, enter the same text under Global task filter so both plugins agree on what a task is.

The panel also recognises the checkbox statuses that Tasks and many themes use. [/] (in progress), [>] (forwarded) and [<] (scheduled) are open tasks. [-] (cancelled) counts as done. If your theme draws its own icons for these, the panel shows them too. Other symbols, such as [?] or [l], aren't treated as tasks.

As of v0.2.0, panel completions don't write a ✅ date. Install Tasks if you want one.


Default Buckets

Bucket Emoji Date rule
To Review 📥 Tasks with no date and no pin (system bucket)
Today ⚡ Today or earlier
This Week 📌 Tomorrow → end of this week
Next Week 🔭 All of next week
This Month 📅 Tomorrow → end of this calendar month
Someday / Maybe 💭 Everything the buckets above didn't claim

Weeks run Monday through Sunday by default. Set First day of the week in settings if yours starts on another day — it moves the This Week and Next Week boundaries and leaves the other rules alone.

Ranges overlap on purpose — This Month contains This Week. The first bucket from the top whose rule matches wins.


Installation

Open Settings → Community plugins → Browse, search for GTD Tasks, then click Install and Enable.

Or add via Obsidian community plugin page.

Beta releases via BRAT
  1. Install the BRAT community
  2. In BRAT settings, click Add Beta Plugin and enter: Unpreditable/GettingThingsDone
  3. Enable GTD Tasks in Community plugins

Usage

Open the panel

Click the checklist icon in the left ribbon, or run Open GTD Panel from the Command Palette (Ctrl/Cmd + P).

Move a task

Three ways to move a task to a different bucket:

Method How
Quick-move buttons Click the small bucket buttons on the right side of the task row
Drag-and-drop Drag a task row to any bucket, including collapsed ones
Context menu Right-click a task row → Move to…

The plugin writes the assignment back to the source markdown file immediately. If the task has subtasks that each have their own bucket assigned, you'll be asked whether to move them along with it.

Pin a task

Moving a task by hand pins it to that bucket, so its dates no longer move it.

  • Right-click → Pin to Today to pin a task where it already sits.
  • Right-click → Unpin to let the task follow its date again.

Change a date

Right-click → Change due date or Change scheduled date, then pick Today, Tomorrow, Start of next week, In 1 week or In 2 weeks. If the task has no date to place it by, you get Set due date or Set scheduled date instead, whichever Auto-assignment date goes by. With the Kalendae plugin installed, Custom… opens its calendar.

If a task is pinned and you change the date that places it, the pin comes off. The menu warns you first. Changing its other date leaves the pin alone.

Change a task's status from the editor

Three commands act on the task under the cursor, or on every task in a selection: Toggle task done, Toggle task in progress and Toggle task cancelled. Each one sets its status, and running it again sets the task back to open. With Tasks installed, they go through Tasks, so ✅ dates and recurrence still work.

Search

Type in the search box at the top of the panel to filter down to matching tasks. The status line below it shows how many tasks are currently visible; click it (or the × in the search box) to clear the search.

See what you got done

Click the 🏆 icon in the ribbon, or run See what you got done. The week tabs list tasks by day, newest first. Click a task to open its line.

The report reads the ✅ dates on your task lines. A task completed without one can't be placed on a day, so it isn't listed. Turn on Tasks' Set done date on every completed task to get them. Cancelled tasks are listed by their ❌ date but never counted.

What's new

After an update with a new feature, a one-time note at the top of the panel says what changed. Run What's new, or click What's new at the top of the settings page, to see every release's highlights.


Configuration

Annotation style

Controls how bucket assignments are stored on the task line:

Mode Example
Inline tag (default) - [ ] Buy milk #gtd/today
Inline field - [ ] Buy milk [gtd:: today]
You can migrate all existing assignments between modes from the settings tab.

Tag / field name

The prefix used in both storage modes. Default: gtd. Changing this also changes the tag/field name written to your files.

Files to scan

Choose which files the plugin indexes.

  • Entire vault, except… scans every *.md file except the ones you list.
  • Selected paths only scans only the folders and files you list.

Add an entry with + Add folder/+ Exclude folder or + Add file/+ Exclude file.

Global task filter

Similar to the Tasks plugin's global filter, count a checkbox as a task only if it contains one of the texts you list, e.g. a tag or a keyword.

Show completed tasks until midnight

Keeps a checked-off task in the panel, struck through, until midnight or until you reload Obsidian, whichever comes first. Clear them sooner with the broom icon in the panel header. Turn the setting off and each task disappears the moment you check it.

Repeating tasks are the exception. Checking one off hides it right away, because its next occurrence is already in the list.

Flag overdue and misfiled tasks

When enabled, two badges call out tasks that need attention:

  • overdue — the task's 📅 due date has passed.
  • misfiled — a bucket higher up is a better placement, and leaving this task as is risks missing it. A task due today but sitting in This Week belongs in Today.

Neither badge appears on a completed task. Only a 📅 due date makes a task overdue. A ⏳ scheduled date that has passed doesn't. Both can apply at once. The row shows the overdue badge, the more urgent of the two, and hovering the task spells out both reasons along with the bucket the misfiled badge points at.

Open links from the panel

On by default. Allows clicking links as if from your note.

Compact view

Reduces padding on bucket headers and task rows for a denser layout.

Celebration animations

Choose what plays when you check off a task:

Setting Effect
Confetti (default) Confetti burst only
Creature Pixel creature only
All Confetti burst + pixel creature
Off No animation

Auto-assignment date

Controls which date drives bucket assignment and ordering within a bucket.

Option Uses
Ignore dates Nothing. Every task waits in To Review until you file it
Due 📅 only. A task without one stays in To Review
Due, else scheduled 📅, falling back to ⏳
Scheduled, else due ⏳, falling back to 📅. The default
Scheduled ⏳ only. A task without one stays in To Review
Earliest of the two Whichever comes first

Pinned tasks ignore this setting.

Tasks plugin fields

Control how the Tasks plugin fields show up in the panel:

  • Show priority (default all) — which priority levels get an emoji badge (🔺⏫🔼🔽⏬) on the task row.
  • Show recurrence badge (default on) — mark repeating tasks with 🔁 on the task row.
  • Show Tasks fields in popover (default on) — list due date, priority, recurrence and the other Tasks fields when hovering a task.

Status bar

Each bucket can optionally show its task count in Obsidian's status bar. Toggle per bucket in the bucket list at the bottom of settings.


Bucket Date Rules

Each bucket can have an optional date range rule that files tasks by whichever date Auto-assignment date selects:

Rule Covers
None Nothing. The bucket collects pinned tasks only
Today Today or earlier
This week Tomorrow through end of this week
Next week All of next week
This month Tomorrow through end of this calendar month
Next month First through last day of next calendar month
Within N days The next N days
Within day range Between day M and day N from today
Beyond N days More than N days from today
Everything Every date the buckets above it didn't claim

Note: Beyond N days is not a catch-all. Set it to 180 and a task 90 days out matches nothing.

Everything only makes sense on the last bucket, since the first matching rule from the top wins.

A task lands in To Review when it has no date and no pin, or when its date matches no rule at all.


To Review Bucket

The To Review bucket is a permanent system bucket that always appears first in the panel. It collects every task that has no manual assignment and no matching due date rule. Use it as a GTD-style inbox: process tasks from here by moving them into the appropriate time-horizon bucket.


Subtasks

A task indented under another task in your markdown file is tracked as its subtask. Parent rows show an active-subtask count badge, and a subtask that's been moved to a different bucket than its parent gets a small indicator pointing back to it. Moving a parent that has subtasks with their own bucket assignments will ask whether to move those subtasks along with it, or leave them where they are.


Localization

The panel and settings UI are available in German, Spanish, Estonian, French, Japanese, Korean, Lithuanian, Latvian, Portuguese, Russian, Ukrainian, and Chinese, in addition to English, matching Obsidian's UI language automatically. If you change Obsidian's language, default bucket names update to match on next load, with a one-time notice in the panel.


Network Use

This plugin opens github.com in your default browser when you click Share feedback & ideas in settings, after you confirm a dialog. Clicking a web link in one of your tasks opens that link in your browser. No background connections, and your data never leaves your machine.


More plugins by the author

  • Kalendae — Change any date or time in a note with a calendar or a clock instead of retyping it. Type new dates in plain words (@next friday), or step them with Ctrl/Option + ↑/↓. It also powers Custom… in this panel's date menu.
  • Littera Nexa — Link to a note by typing its name, with no [[ needed. It suggests notes and aliases as you type.
  • LeapFrog — Jump to the top or bottom of a note in one click, with floating buttons or commands, and back again.

License

GPL-3.0 © 2026 Vitaly Ditman

HealthExcellent
ReviewPassed
About
Organize Markdown tasks in Obsidian with the Getting Things Done method. Group tasks into time-horizon buckets in a sidebar and move items via one-click buttons, drag-and-drop, or context menu; auto-assign by due date from the Tasks plugin and mark completion with optional celebration animations.
TasksSidebarDates
Details
Current version
0.3.1
Last updated
3 days ago
Created
9 months ago
Updates
20 releases
Downloads
4k
Compatible with
Obsidian 1.8.7+
Platforms
Desktop, Mobile
License
GPL-3.0
Report bugRequest featureReport plugin
Author
unpreditableunpreditable
github.com/Unpreditable
GitHubunpreditable
  1. Community
  2. Plugins
  3. Tasks
  4. GTD Tasks

Related plugins

Tasks

Track tasks across your vault. Supports due dates, recurring tasks, done dates, sub-set of checklist items, and filtering. Maintained by Clare Macrae and Ilyas Landikov, created by Martin Schenck.

Vault Todos

Collect all outstanding TODOs from your vault and presents them in lists Today, Scheduled, Inbox and Someday/Maybe.

Day Planner

Turn tasks from daily notes, the Tasks plugin, and calendars into time blocks on an editable timeline, with built-in time tracker.

Checklist

Consolidate checklists across all files into a single view.

Day Planner OG

Day planning from a simple task list in a Markdown note (bare bones, preserves the features and behavior of the original plugin).

Reminder

Manage Markdown TODOs with reminder.

Tasks Calendar Wrapper

Simple wrapper for Tasks Calendar and Tasks Timeline.

Sidebar Highlights and Tasks

View and manage text highlights, comments on highlights, native comments, and collections for your highlights.

Rollover Daily Todos

Rollover any unchecked checkboxes from your last daily note into today's note.

Apex Dashboard

Your personal command center — memos, todos, files, projects all connected for better workflow.