9.1 KiB
GTD + PARA Task Management
Combining Getting Things Done with PARA for effective task management in Obsidian
Table of Contents
- The GTD + PARA Integration
- Task Properties
- The Review System
- Daily Workflow
- Weekly Review
- Task File vs Inline Tasks
- Priority Systems
- Frontmatter Schema
The GTD + PARA Integration
Where GTD Concepts Live in PARA
| GTD Concept | PARA Location | Implementation |
|---|---|---|
| Next Actions | Within Projects | Tasks with status: not-started |
| Waiting For | Within Projects | Tasks with status: blocked |
| Someday/Maybe | Resources or Areas | Tasks with priority: low |
| Reference | Resources | Notes without tasks |
| Projects | Projects | Folders in 01_Projects/ |
| Calendar | Tasks | due_date and start_date fields |
The Key Insight
"Tasks should live in a global folder with frontmatter links to projects and areas. Dataview queries then show them in context."
Why?
- Single source of truth for all tasks
- Queryable from anywhere (dashboards, projects, areas)
- No duplicate task management
- Works with Obsidian's lack of a "move file" API
Task Properties
Essential Fields
---
title: "Task Name"
created: 2025-01-15
type: task
status: not-started
project: "[[Project Name]]"
area: "[[Area Name]]"
due_date: 2025-01-20
priority: medium
---
Status Values
| Status | Meaning | Query Filter |
|---|---|---|
not-started |
Ready to work on | status = "not-started" |
in-progress |
Currently working | status = "in-progress" |
blocked |
Waiting on something | status = "blocked" |
done |
Completed | status = "done" |
cancelled |
No longer needed | status = "cancelled" |
Priority Values
| Priority | Use Case | Urgency |
|---|---|---|
urgent |
Drop everything | Today |
high |
Important, time-sensitive | This week |
medium |
Normal priority | When possible |
low |
Someday/maybe | No rush |
Optional Enhancement: Numeric Priority
For fine-grained sorting, use numeric priority:
priority: 42= Urgent (threshold for "drop everything")priority: 30= Highpriority: 20= Mediumpriority: 10= Low
Query for urgent tasks:
TASK WHERE priority >= 42 AND !completed
The Review System
Why Review Tracking Matters
Without tracking, you can't answer:
- When did I last look at this project?
- Is this task still relevant?
- Have I forgotten about something important?
Review Fields
reviewed: 2025-01-15 # Last review date
review_period: 7d # Custom review frequency
Review Cadence
| Item Type | Default Period | Override Example |
|---|---|---|
| Active Project | 7 days | review_period: 3d for urgent |
| Area | 14 days | review_period: 30d for stable |
| Task (in progress) | 3 days | - |
| Task (not started) | 7 days | - |
What Happens During Review
Project Review:
- Is this project still relevant?
- Has anything changed since last review?
- Are all tasks still accurate?
- What's the next action?
- Mark as reviewed:
reviewed: 2025-01-15
Task Review:
- Is this task still needed?
- Is the due date still accurate?
- Is the priority correct?
- Am I blocked on anything?
- Mark as reviewed or reschedule
Daily Workflow
Morning: Plan the Day
-
Check urgent tasks
TASK FROM "07_Tasks" WHERE priority = "urgent" AND !completed -
Check due today
TASK FROM "07_Tasks" WHERE due_date = date(today) AND !completed -
Pick top 3 from remaining tasks
During Day: Capture and Execute
- Quick capture → Inbox (process later)
- Work from task list → Update status as you go
- New tasks → Create in
07_Tasks/with project/area link
Evening: Close Out
- Update task statuses (in-progress → done, blocked notes)
- Quick inbox scan (anything urgent for tomorrow?)
- Review tomorrow's calendar
Weekly Review
The Weekly Review Checklist
Based on GTD's weekly review, adapted for PARA:
1. Get Clear (Process Inbox)
LIST FROM "00_Inbox"
- Process each item → Project, Area, Resource, or Archive
2. Get Current (Review Projects)
TABLE target_completion, reviewed
FROM "01_Projects"
WHERE status = "active"
AND (reviewed < date(today) - dur(7d) OR !reviewed)
- Is this still active?
- Update tasks
- Mark reviewed
3. Get Creative (Review Areas)
LIST FROM "02_Areas"
WHERE status = "active"
- Any new projects needed?
- Standards being maintained?
4. Get Ready (Plan Next Week)
- Review calendar
- Set priorities for top tasks
- Block time for important projects
Task File vs Inline Tasks
When to Use Task Files (07_Tasks/)
Use separate task files when:
- Task needs due date, priority, or other metadata
- Task should appear in Dataview queries
- Task has subtasks or notes
- Task should be linked to multiple projects/areas
Example:
07_Tasks/Book Tasmania Flights.md
When to Use Inline Tasks
Use checkboxes in project/area notes when:
- Quick capture during project work
- Simple next actions
- No metadata needed
- Won't need to query separately
Example in project note:
## Next Actions
- [ ] Email venue for quote
- [ ] Review contract draft
- [ ] Schedule team meeting
Best Practice: Start Inline, Promote to File
- Capture quickly as inline checkbox
- If it needs metadata → create task file
- If it's blocked or complex → create task file
Priority Systems
Simple (Recommended for Start)
priority: low | medium | high | urgent
Eisenhower Matrix
| Urgent | Not Urgent | |
|---|---|---|
| Important | Do First (urgent) |
Schedule (high) |
| Not Important | Delegate (medium) |
Eliminate (low) |
Numeric (Advanced)
For fine-grained control:
priority: 42 # 1-100 scale, higher = more urgent
Benefits:
- Sort by exact priority
- Threshold queries (
WHERE priority >= 42) - Gradual priority increase
Frontmatter Schema
Task Schema
---
title: "Task Title"
created: 2025-01-15
type: task
task_type: task # task, reminder, habit, chore
status: not-started # not-started, in-progress, blocked, done, cancelled
project: "[[Project]]" # Link to project (optional)
area: "[[Area]]" # Link to area (optional)
due_date: 2025-01-20 # When it's due (optional)
start_date: 2025-01-18 # When to start (optional)
priority: medium # low, medium, high, urgent
effort: medium # small, medium, large
reviewed: 2025-01-15 # Last review date
depends_on: "[[Other Task]]" # Blocking task
tags:
- task
---
Project Schema
---
title: "Project Title"
created: 2025-01-15
type: project
status: active # active, on-hold, completed, archived
start_date: 2025-01-15
target_completion: 2025-03-01
completion_date: # Filled when done
area: "[[Parent Area]]"
reviewed: 2025-01-15
review_period: 7d # Custom review frequency
tags:
- project
---
Area Schema
---
title: "Area Title"
created: 2025-01-15
type: area
status: active
reviewed: 2025-01-15
review_period: 14d
tags:
- area
---
Resource Schema
---
title: "Resource Title"
created: 2025-01-15
type: resource
source: book # book, article, video, course, podcast, paper, web
source_url: "" # Optional URL
author: "" # Optional author
areas: # Required - links to one or more areas
- "[[Primary Area]]"
- "[[Secondary Area]]" # Optional additional areas
reviewed: 2025-01-15 # Last review date
tags:
- resource
---
Why areas: is an array:
- Resources are reference material that can serve multiple areas
- A TypeScript book relates to both "Software Development" and "Learning"
- Unlike projects/tasks which belong to ONE area, resources cross-cut
Querying resources by area:
TABLE source, author
FROM "03_Resources"
WHERE contains(areas, [[Health]])
Quick Reference
Daily Queries
What's due today?
TASK FROM "07_Tasks" WHERE due_date = date(today) AND !completed
What's urgent?
TASK FROM "07_Tasks" WHERE priority = "urgent" AND !completed
What am I working on?
TASK FROM "07_Tasks" WHERE status = "in-progress"
Weekly Queries
Projects needing review?
TABLE reviewed FROM "01_Projects"
WHERE status = "active" AND (reviewed < date(today) - dur(7d) OR !reviewed)
Overdue tasks?
TASK FROM "07_Tasks" WHERE due_date < date(today) AND !completed
Blocked tasks?
TASK FROM "07_Tasks" WHERE status = "blocked"
Reference compiled from GTD methodology, PARA system, and Obsidian community patterns.