v2.20.0 - Subtasks
v2.20.0 - Subtasks
July 2026
Added
- Subtasks (#78) - break a task into a checklist of one-line items, each with a done state, a manual order, and an optional deadline.
- Subtasks show inline, clubbed under their parent on every surface - the desktop table (a full-width sub-row beneath the task), the mobile card, and the board card - as tickable circles with a "2/5" progress badge. Tap a circle to tick a step without opening anything. A subtask with a deadline shows that date inline next to it.
- The task detail (modal +
/tasks/:idpage) has a full subtask editor: add inline, tick, set/clear a per-subtask deadline, delete, and drag-reorder. - Completing a parent that still has open subtasks asks what to do: complete them all, or move them out as their own standalone tasks (kept in the parent's project, with a back-reference). Recurring tasks get the same prompt, then the next occurrence spawns with a fresh, all-unchecked copy of the checklist.
- MCP: 7 new tools bringing total to 36: 6 subtask tools (
add_subtask,list_subtasks,set_subtask_completion,update_subtask,delete_subtask,reorder_subtasks) plusfind- one by-name search over both tasks and subtasks that tags each hittaskorsubtask(subtasks carry their parent), so "I finished wire up the waitlist form" resolves in a single call without knowing which task it's under.
Notes
- New
Subtaskstable (Tasks1-to-many, cascade delete) mirroring theTaskComment/CheckInpattern. Tasks gain response-onlysubtaskCount/completedSubtaskCount(always present) and asubtasks[]array (loaded on the detail, and on the list only when the web passes?includeSubtasks=truefor the inline checklist; MCP'slist_tasksstays lean with counts only). - New frontend components:
SubtaskChecklist(the inline clubbed list, shared by card + table + board),SubtaskSection(full editor with @dnd-kit drag-reorder),CompleteWithSubtasksDialog(the complete-all vs pull-out prompt). First drag-and-drop dependency:@dnd-kit.