Implementing GTD in Obsidian
What We’re Building
A full GTD (Getting Things Done) implementation in Obsidian. Capture, clarify, organise, reflect, engage-all in plain text.
Prerequisites
- Obsidian
- Tasks plugin
- Dataview plugin
- Templater plugin (optional)
The Approach
- Set up the GTD lists
- Create project structure
- Build weekly review
- Configure contexts
- Automate captures
Step 1: GTD Lists Structure
vault/
├── GTD/
│ ├── 📥 Inbox.md
│ ├── 📋 Next Actions.md
│ ├── ⏳ Waiting For.md
│ ├── 📅 Calendar.md
│ ├── 💭 Someday Maybe.md
│ └── 📁 Reference.md
├── Projects/
│ └── [Active projects]
├── Areas/
│ └── [Areas of responsibility]
└── Archive/
└── [Completed projects]
Step 2: Inbox
Keep capture frictionless:
# 📥 Inbox
Dump everything here. Process daily.
## Captures
-
-
-
---
## Processing Checklist
For each item ask:
1. What is it?
2. Is it actionable?
- No > Trash, Someday/Maybe, or Reference
- Yes > What's the next action?
3. Will it take less than 2 minutes?
- Yes > Do it now
- No > Defer or delegate
4. Is it a project (multiple steps)?
- Yes > Create project note, add to Next Actions
- No > Add to Next Actions
Step 3: Next Actions with Contexts
# 📋 Next Actions
## @computer
```tasks
not done
tags include #next
tags include #computer
group by project
@phone
not done
tags include #next
tags include #phone
@errands
not done
tags include #next
tags include #errands
@home
not done
tags include #next
tags include #home
@office
not done
tags include #next
tags include #office
@anywhere
not done
tags include #next
tags include #anywhere
## Step 4: Project Template
```markdown
---
type: project
status: active
area: Work
created: {{date:YYYY-MM-DD}}
due:
---
# {{title}}
## Outcome
What does "done" look like?
## Why
Why does this matter?
## Next Actions
- [ ] #next #computer First concrete action
## Project Tasks
- [ ]
- [ ]
- [ ]
## Notes
## Reference
-
---
## Log
### {{date:YYYY-MM-DD}}
Started project.
Step 5: Waiting For
# ⏳ Waiting For
```tasks
not done
tags include #waiting
sort by due
Add New
- #waiting Person/thing I’m waiting for ⏫ 📅 {{date:YYYY-MM-DD}}
Format: - [ ] #waiting [What] from [Who] since [date]
## Step 6: Weekly Review Dashboard
```markdown
# 🔄 Weekly Review - {{date:YYYY-MM-DD}}
## Get Clear
### Inbox Zero
- [ ] Process physical inbox
- [ ] Process digital inbox
- [ ] Process Obsidian Inbox
### Collect Loose Papers
- [ ] Desk cleared
- [ ] Wallet receipts
- [ ] Notes from meetings
### Empty Your Head
What's on your mind that isn't captured?
---
## Get Current
### Review Next Actions
```tasks
not done
tags include #next
- Are these still the right next actions?
- Delete completed items
- Add new next actions for stalled projects
Review Waiting For
not done
tags include #waiting
- Follow up on overdue items
- Remove completed items
Review Projects
- Each project has a next action
- Move completed projects to Archive
Review Someday/Maybe
- Anything to activate?
- Anything to delete?
Review Calendar
- Next 2 weeks clear?
- Any prep needed?
Get Creative
New Projects
Any new outcomes to commit to?
Someday/Maybe Additions
Ideas to capture for later?
Checklist Complete
- All lists reviewed
- All projects have next actions
- Inbox is empty
## Step 7: Someday/Maybe
```markdown
# 💭 Someday Maybe
Ideas I might pursue later. Review weekly.
## Projects I Might Do
- Learn Japanese
- Build a shed
- Start a podcast
## Places I Might Go
- Japan
- Iceland
- New Zealand
## Things I Might Buy
- Standing desk
- Mirrorless camera
- Electric bike
## Skills I Might Learn
- Piano
- Woodworking
- Public speaking
---
## Review Date: {{date:YYYY-MM-DD}}
Step 8: Quick Capture Hotkey
Templater script for instant capture:
const thought = await tp.system.prompt("Quick capture:");
if (thought) {
const inbox = app.vault.getAbstractFileByPath("GTD/📥 Inbox.md");
const content = await app.vault.read(inbox);
const newContent = content.replace(
"## Captures\n",
`## Captures\n- ${thought}\n`
);
await app.vault.modify(inbox, newContent);
}
Assign to a hotkey like Cmd+Shift+I.
Step 9: Daily Dashboard
# Today - {{date:YYYY-MM-DD, dddd}}
## Calendar
What's scheduled today?
## Focus
What's the one thing that matters most?
## Next Actions Available
```tasks
not done
tags include #next
tags include #anywhere OR tags include #computer
limit 10
Waiting For (Overdue)
not done
tags include #waiting
due before today
End of Day
- Inbox processed
- Tomorrow planned
## The Result
- Trusted capture system
- Clear next actions by context
- Projects always moving forward
- Weekly review keeps it current
- Nothing falls through the cracks
## What I'd Do Differently
Keep project notes simpler. I overengineered early projects with too many sections. Now each project just needs: outcome, why, next actions, notes.
*GTD isn't about the tool, it's about the habit. Obsidian just makes the habit sustainable because your data isn't locked in.*