Skip to content

Commit 4ebf531

Browse files
committed
docs(gtd): add practical Memos workflow guide
1 parent 237eeab commit 4ebf531

7 files changed

Lines changed: 171 additions & 1 deletion

File tree

Lines changed: 158 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,158 @@
1+
---
2+
title: "How to Use Memos for GTD: A Practical Workflow"
3+
description: Set up GTD in Memos with quick capture, Markdown next actions, project tags, Shortcuts, waiting items, daily focus, and a weekly review.
4+
category: guides
5+
tags: ["gtd", "productivity", "workflow"]
6+
difficulty: beginner
7+
estimatedTime: 10 minutes
8+
relatedPages: ["/docs/usage/memos", "/docs/usage/tags", "/docs/usage/shortcuts", "/docs/usage/search-archive"]
9+
---
10+
11+
[Getting Things Done](https://gettingthingsdone.com/what-is-gtd/) works best when capture is fast, next actions are visible, and every project has a clear place to resume. Memos gives that workflow a lightweight, self-hosted foundation: quick notes for capture, Markdown checkboxes for actions, tags for project context, Shortcuts for reusable work views, and a searchable timeline that keeps the history.
12+
13+
This guide keeps the setup focused: one memo per commitment, one state tag for what happens next, and one project tag for related work. Shortcuts keep next actions, waiting items, and active projects visible; checkboxes and Archive close the loop without discarding the record.
14+
15+
## Give every memo one clear GTD role
16+
17+
Start with four lifecycle states:
18+
19+
```markdown
20+
#gtd/inbox
21+
#gtd/next
22+
#gtd/waiting
23+
#gtd/someday
24+
```
25+
26+
Use exactly one of those four states on a workflow memo. An item cannot need clarification and be ready to do at the same time. `#gtd/project` is not a state; use it only on an anchor memo that defines a project outcome.
27+
28+
There is no `#gtd/done` tag. A checked box already records completion, and Archive removes it from active surfaces. There is no `#gtd/reference` tag either. Reference is the rest of the searchable timeline: give useful material a topic or project tag, then archive it when it no longer needs to stay visible.
29+
30+
Keep system tags on the final line so the content remains easy to read. Memos recognizes [tags anywhere in a memo](/docs/usage/tags), but a consistent metadata line makes state changes obvious.
31+
32+
## Capture and clarify one commitment per memo
33+
34+
Capture should still feel like Memos: open the editor, write the thought, and move on. Add only `#gtd/inbox` so the item can return for a decision:
35+
36+
```markdown
37+
Ask Mei whether the release screenshots are final.
38+
39+
#gtd/inbox
40+
```
41+
42+
This tagged inbox is separate from the built-in [Memos Inbox](/docs/usage/inbox), which contains notifications about comments and mentions.
43+
44+
During a short daily sweep, decide what, if anything, must return. Delete what has no value. Give useful information a topic or project tag. Move an idea you may revisit to `#gtd/someday`. Turn work you can advance into a concrete checkbox:
45+
46+
```markdown
47+
- [ ] Ask Mei which release screenshots are approved.
48+
49+
#gtd/next #project/september-release
50+
```
51+
52+
If someone else owns the next move, use `#gtd/waiting` instead. The state changes on the same open loop:
53+
54+
```txt
55+
#gtd/inbox → #gtd/next → checked → archived
56+
#gtd/inbox → #gtd/waiting → checked → archived
57+
```
58+
59+
When the result you were waiting for arrives, close that Waiting memo and create a new Next memo for the work that follows. The expected result and your next action are different commitments, so they should not share one record.
60+
61+
The one-action rule comes from Memos itself. Tags, visibility, timestamps, and `has_incomplete_tasks` describe the whole memo, not individual checklist rows. A long memo containing calls, errands, and computer tasks cannot expose each row through a different context filter.
62+
63+
Keep a procedure or meeting record together when it reads as one document. When it creates several independent commitments, extract each commitment into its own action memo. The source can remain as project support.
64+
65+
## Connect each project through a shared tag
66+
67+
A project does not need a folder or a master task document. Give it one anchor memo that defines the outcome:
68+
69+
```markdown
70+
## Outcome
71+
72+
The September release post is live with reviewed screenshots and working links.
73+
74+
## Done when
75+
76+
- The post is published.
77+
- Metadata passes the site audit.
78+
- The announcement links to the final URL.
79+
80+
#gtd/project #project/september-release
81+
```
82+
83+
Every action, decision, waiting item, and useful reference for that outcome receives `#project/september-release`. Selecting the tag reconstructs the project's active trail instead of a checklist that must duplicate every detail. After records are archived, use [search and Archive](/docs/usage/search-archive) with the same tag to retrieve the closed history.
84+
85+
Every active project should show where work resumes: at least one open `#gtd/next` memo or one open `#gtd/waiting` memo. When the next step is clear, create it before leaving the project; add several only for genuinely parallel work.
86+
87+
A waiting memo should record the result you expect, not assign work:
88+
89+
```markdown
90+
- [ ] Mei confirms the approved screenshot set.
91+
92+
Requested September 1. Calendar reminder set for September 4.
93+
94+
#gtd/waiting #project/september-release
95+
```
96+
97+
Writing `@mei` would send a real mention notification if that user exists on the instance. Use mentions for intentional collaboration, not as GTD contexts such as `@home` or `@phone`.
98+
99+
## Use Shortcuts for decisions and pins for focus
100+
101+
The home timeline tells you what was recorded recently. It should not also decide what deserves attention now. Save a few filters as [Shortcuts](/docs/usage/shortcuts), and let each one answer an operating question:
102+
103+
| Question | Filter |
104+
| --- | --- |
105+
| What still needs a decision? | `"gtd/inbox" in tags` |
106+
| What can I advance? | `"gtd/next" in tags && has_incomplete_tasks` |
107+
| What am I waiting for? | `"gtd/waiting" in tags && has_incomplete_tasks` |
108+
| Which outcomes are active? | `"gtd/project" in tags` |
109+
110+
The filter syntax is capable of much more, but these four questions are enough to run the system. `#gtd/someday` does not need a permanent place in the sidebar; selecting the tag during a monthly review is usually sufficient.
111+
112+
At the start of the day, choose no more than three memos from **What can I advance?** and pin them. A pin is a temporary work-in-progress limit, not a permanent priority label. Unpin an action when it is completed, blocked, or no longer part of today's focus.
113+
114+
Add a context only after the available-actions view becomes genuinely difficult to scan. For example:
115+
116+
```txt
117+
"gtd/next" in tags && "context/computer" in tags && has_incomplete_tasks
118+
```
119+
120+
If you can still choose the right action without that filter, the extra tag has not earned its maintenance cost.
121+
122+
## Run a daily reset and weekly review
123+
124+
A Shortcut can find a state, but it cannot prove that one memo in a project has a matching next action in another. Review exists to inspect those gaps.
125+
126+
A daily reset should take only a few minutes:
127+
128+
- bring **What still needs a decision?** to zero
129+
- check, unpin, and archive completed action memos
130+
- choose up to three pins from the available actions
131+
132+
Once a week, inspect the structure:
133+
134+
- open every active project anchor, select its `#project/...` tag, and confirm a current Next or Waiting memo exists
135+
- review waiting items for responses that arrived or follow-ups that need scheduling
136+
- archive finished projects and their closed action trail
137+
138+
Run this audit filter to catch unchecked tasks that have no GTD state:
139+
140+
```txt
141+
has_incomplete_tasks && !tags.exists(t, t.startsWith("gtd/"))
142+
```
143+
144+
Classify or archive anything it finds. Once a month, scan `#gtd/someday` and activate, retain, or discard each idea.
145+
146+
The goal is not to touch every memo. The review is complete when the decision queue is empty, the action queue is believable, and every active project shows where work resumes.
147+
148+
## Pair Memos with a calendar for deadlines and reminders
149+
150+
Memos owns the commitment, its context, and its history. It does not provide documented task due dates, recurring tasks, or task alarms. A date written in a memo is context; changing display time only reorders the timeline.
151+
152+
Put appointments, hard deadlines, follow-up alerts, and the recurring review itself in a calendar or reminder app. Add the Memos URL to the event when it needs project context. The calendar decides when to interrupt you; Memos explains what the interruption is about.
153+
154+
Trust has an operational side too. Keep personal commitments `PRIVATE` unless sharing is intentional. If this becomes the only record of important work, [back up the database and attachments](/docs/operations/backup-restore) and test a restore.
155+
156+
Run the practice unchanged for one week. If the available-actions view is still easy to use, stop designing the system. Add a tag or view only when it answers a question you repeatedly struggle to answer.
157+
158+
The practice is healthy when the inbox reaches zero, the next-action list remains credible, and every active project shows where work resumes. Everything else can become history.

‎content/docs/usage/index.mdx‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,9 @@ description: Daily workflows for writing, organizing, and finding memos.
3434
<Card title="Search & Archive" href="/docs/usage/search-archive" icon="Search">
3535
Find memos, review archived content, and manage sharing carefully.
3636
</Card>
37+
<Card title="Getting Things Done" href="/docs/usage/getting-things-done" icon="BookOpen">
38+
Build a GTD workflow with next actions, project tags, Shortcuts, and reviews.
39+
</Card>
3740
</Cards>
3841

3942
Daily usage in Memos usually combines these pieces:
@@ -45,3 +48,4 @@ Daily usage in Memos usually combines these pieces:
4548
- searching by content or metadata
4649
- managing visibility and share links for sharing
4750
- collaborating through reactions, comments, and the inbox
51+
- combining these tools into a [Getting Things Done workflow](/docs/usage/getting-things-done)

‎content/docs/usage/memos.mdx‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,3 +71,5 @@ Memos automatically computes properties from memo content. These can be used in
7171
- add tags while writing, not later
7272
- archive stale memos instead of leaving everything active forever
7373
- pin only the memos that truly deserve persistent attention
74+
75+
For an end-to-end example that combines short memos, checklists, tags, pins, and Archive, see [How to Use Memos for GTD](/docs/usage/getting-things-done).

‎content/docs/usage/meta.json‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
"reactions-comments",
1313
"inbox",
1414
"linked-identities",
15-
"search-archive"
15+
"search-archive",
16+
"getting-things-done"
1617
]
1718
}

‎content/docs/usage/search-archive.mdx‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,3 +28,5 @@ Typical archive workflow:
2828
## Public sharing and discovery
2929

3030
Search and visibility work together. When `MEMOS_INSTANCE_URL` enables public mode, public memos are discoverable more broadly than private ones. Review content carefully before publishing and use `PRIVATE` or `PROTECTED` when the memo is not meant for open access.
31+
32+
The [Memos GTD workflow](/docs/usage/getting-things-done) shows how checking and archiving completed actions keeps active views focused without discarding their history.

‎content/docs/usage/shortcuts.mdx‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -170,3 +170,5 @@ Months are zero-based (`0` is January), and days of the week are zero-based (`0`
170170
Shortcuts are personal workflow tools. They are most useful on the home view and should reflect how you naturally revisit content rather than every theoretical filter you could build.
171171

172172
Memos supports a deliberate subset of CEL that can be translated consistently to SQLite, MySQL, and PostgreSQL. Use the **Validate** action before saving; it reports unsupported fields, type mismatches, invalid regular expressions, and operations that cannot be translated.
173+
174+
For a complete example of turning Shortcuts into action, waiting, project, and review views, see [How to Use Memos for GTD](/docs/usage/getting-things-done).

‎content/docs/usage/tags.mdx‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,3 +57,4 @@ tags.exists(t, t.startsWith("project"))
5757
- use [shortcuts](/docs/usage/shortcuts) to save filters you run often
5858
- combine tags with [search](/docs/usage/search-archive) when browsing older memos
5959
- align tag naming with how your team expects to browse content
60+
- build a complete [GTD workflow](/docs/usage/getting-things-done) from state tags, project tags, and Shortcuts

0 commit comments

Comments
 (0)