Weekly Review — GTD Loop → Trusted System skill

Use when someone wants to run a weekly review, close open loops, audit stalled projects and commitments, get their system back to trusted, restart a lapsed review habit, or says "/cs:weekly-review".

by alirezarezvani·MIT license·★ 26,349 Stars on the repo·GitHub ↗

Use now

Files of Weekly Review — GTD Loop → Trusted System

alirezarezvani/main1 file shown
SKILL.md
Show the full text100 lines

Weekly Review — GTD Loop → Trusted System

Portability: Reasoning-led skill with 3 stdlib Python scripts. No external APIs, no LLM calls in scripts. Works in Claude Code CLI and Claude.ai web. The scripts do the inventory and the gating; Claude and the user do the thinking.

What this does

A personal system is only trustworthy if it gets reviewed — David Allen calls the weekly review the critical success factor of the whole method. This skill walks the three phases in order and refuses to call the review COMPLETE while any of the five mandatory GET CURRENT steps is unaccounted for. Evidence first: scan the workspace for open loops before asking the user to recall anything, because their memory is exactly what the method says not to trust.

Phase 1 — GET CLEAR (steps 1-3)

Collect loose inputs, process every inbox to zero (clarify, don't do — anything over two minutes becomes a next action), then a mind sweep to empty the head. Start with evidence:

# Inventory open loops: unchecked checkboxes, TODO/FIXME markers, stale files
python scripts/open_loop_scanner.py --dir ~/notes --stale-days 14

Route every loop found to a list — next action, waiting-for, someday/maybe, or trash.

Phase 2 — GET CURRENT (steps 4-8, all mandatory)

Review the next-action lists (mark done, prune dead), the previous calendar (missed commitments become actions), the upcoming calendar (prepare, don't react), the waiting-for list (chase or drop), and every project for exactly one next action. Then gate honestly:

python scripts/weekly_review_gate.py --list   # show the numbered ten-step checklist
python scripts/weekly_review_gate.py --done "1,2,3,4,5,6,7,8" --skip "9:no someday list yet"

The gate computes completion %, names every missing step, and exits 0 (COMPLETE) or 2 (INCOMPLETE). An unskipped missing GET CURRENT step always forces INCOMPLETE.

Phase 3 — GET CREATIVE (steps 9-10)

Review someday/maybe (activate, keep, or kill), capture new ideas while the head is clear, then audit the whole commitment portfolio:

python scripts/commitment_auditor.py --input commitments.json

Flags STALLED / NO-NEXT-ACTION / SOMEDAY-CANDIDATE, prints the health formula with the score, and issues HEALTHY / DRIFTING / OVERCOMMITTED. End the review with one named next action.

Scripts

Script Role
scripts/open_loop_scanner.py Inventories unchecked checkboxes, TODO/FIXME markers, and stale files across a directory; grouped counts + per-file locations; --json.
scripts/weekly_review_gate.py The ten-step three-phase checklist; --done/--skip/--list; completion % + named gaps → COMPLETE (exit 0) / INCOMPLETE (exit 2).
scripts/commitment_auditor.py Flags stalled and actionless commitments, computes the 0-100 health score with the formula shown → HEALTHY / DRIFTING / OVERCOMMITTED.

References

Assets

Rules

  • All five GET CURRENT steps are mandatory; skip only with a stated reason, and the gate still names it.
  • Never self-certify — the gate issues the verdict; relay its exit code, don't soften it.
  • Process, don't do: during the review, anything over two minutes becomes a next action, not a detour.
  • Timebox 60-90 minutes; past two hours, gate what's done honestly and schedule the remainder.
  • A lapsed habit restarts with a shorter pass and zero guilt — a review is maintenance, not judgment.

Distinct From (don't reach for the wrong sibling)

  • productivity/reflect — reflects on one conversation or piece of work, once. The weekly review is a recurring cadence over the whole system.
  • productivity/capture — the intake funnel (brain dump → actions). Capture feeds the system; this review keeps it trusted.
  • project-management sprint retros — a team ceremony about a shared iteration. This is a personal trusted-system audit.

Version: 1.0.0 · Build pattern: Path-B ritual skill — GTD weekly-review loop preserved + deterministic gate/scanner/auditor scripts added.

1---
2name: weekly-review
3description: Use when someone wants to run a weekly review, close open loops, audit stalled projects and commitments, get their system back to trusted, restart a lapsed review habit, or says "/cs:weekly-review". Walks David Allen's three-phase loop — GET CLEAR, GET CURRENT, GET CREATIVE — with deterministic scripts that inventory open loops, gate the checklist with named gaps, and score commitment health 0-100.
4argument-hint: "[optional: directory or notes to review]"
5license: MIT
6metadata:
7 version: 1.0.0
8 build_pattern: "Path-B ritual skill — GTD weekly-review loop preserved + deterministic scanner/gate/auditor scripts added"
9 distinct_from: "reflect (per-conversation reflection, not a recurring cadence); capture (intake that feeds the system, not the review that maintains it); project-management sprint retros (team ceremony, not a personal trusted-system audit)"
10---
11 
12# Weekly Review — GTD Loop → Trusted System
13 
14> **Portability:** Reasoning-led skill with 3 stdlib Python scripts. No external APIs, no LLM calls
15> in scripts. Works in Claude Code CLI and Claude.ai web. The scripts do the inventory and the
16> gating; Claude and the user do the thinking.
17 
18## What this does
19 
20A personal system is only trustworthy if it gets reviewed — David Allen calls the weekly review
21the critical success factor of the whole method. This skill walks the three phases in order and
22refuses to call the review COMPLETE while any of the five mandatory GET CURRENT steps is
23unaccounted for. Evidence first: scan the workspace for open loops before asking the user to
24recall anything, because their memory is exactly what the method says not to trust.
25 
26## Phase 1 — GET CLEAR (steps 1-3)
27 
28Collect loose inputs, process every inbox to zero (clarify, don't do — anything over two minutes
29becomes a next action), then a mind sweep to empty the head. Start with evidence:
30 
31```bash
32# Inventory open loops: unchecked checkboxes, TODO/FIXME markers, stale files
33python scripts/open_loop_scanner.py --dir ~/notes --stale-days 14
34```
35 
36Route every loop found to a list — next action, waiting-for, someday/maybe, or trash.
37 
38## Phase 2 — GET CURRENT (steps 4-8, all mandatory)
39 
40Review the next-action lists (mark done, prune dead), the previous calendar (missed commitments
41become actions), the upcoming calendar (prepare, don't react), the waiting-for list (chase or
42drop), and every project for exactly one next action. Then gate honestly:
43 
44```bash
45python scripts/weekly_review_gate.py --list # show the numbered ten-step checklist
46python scripts/weekly_review_gate.py --done "1,2,3,4,5,6,7,8" --skip "9:no someday list yet"
47```
48 
49The gate computes completion %, names every missing step, and exits 0 (COMPLETE) or 2
50(INCOMPLETE). An unskipped missing GET CURRENT step **always** forces INCOMPLETE.
51 
52## Phase 3 — GET CREATIVE (steps 9-10)
53 
54Review someday/maybe (activate, keep, or kill), capture new ideas while the head is clear, then
55audit the whole commitment portfolio:
56 
57```bash
58python scripts/commitment_auditor.py --input commitments.json
59```
60 
61Flags STALLED / NO-NEXT-ACTION / SOMEDAY-CANDIDATE, prints the health formula with the score, and
62issues HEALTHY / DRIFTING / OVERCOMMITTED. End the review with one named next action.
63 
64## Scripts
65 
66| Script | Role |
67|---|---|
68| `scripts/open_loop_scanner.py` | Inventories unchecked checkboxes, TODO/FIXME markers, and stale files across a directory; grouped counts + per-file locations; `--json`. |
69| `scripts/weekly_review_gate.py` | The ten-step three-phase checklist; `--done`/`--skip`/`--list`; completion % + named gaps → COMPLETE (exit 0) / INCOMPLETE (exit 2). |
70| `scripts/commitment_auditor.py` | Flags stalled and actionless commitments, computes the 0-100 health score with the formula shown → HEALTHY / DRIFTING / OVERCOMMITTED. |
71 
72## References
73 
74- [`references/gtd_weekly_review_canon.md`](references/gtd_weekly_review_canon.md) — why the weekly review is the critical success factor; the three-phase structure; cadence discipline (7 sources)
75- [`references/open_loop_psychology.md`](references/open_loop_psychology.md) — Zeigarnik effect, plan-making research, attention residue: why open loops tax attention (6 sources)
76- [`references/review_cadence_design.md`](references/review_cadence_design.md) — horizons of focus, habit anchoring, timeboxing, failure modes, restart-after-lapse (7 sources)
77 
78## Assets
79 
80- [`assets/weekly_review_checklist.md`](assets/weekly_review_checklist.md) — fillable three-phase checklist
81- [`assets/example_weekly_review.md`](assets/example_weekly_review.md) — a full worked review (scan → checklist → gate → audit → next action)
82 
83## Rules
84 
85- All five GET CURRENT steps are mandatory; skip only with a stated reason, and the gate still names it.
86- Never self-certify — the gate issues the verdict; relay its exit code, don't soften it.
87- Process, don't do: during the review, anything over two minutes becomes a next action, not a detour.
88- Timebox 60-90 minutes; past two hours, gate what's done honestly and schedule the remainder.
89- A lapsed habit restarts with a shorter pass and zero guilt — a review is maintenance, not judgment.
90 
91## Distinct From (don't reach for the wrong sibling)
92 
93- **`productivity/reflect`** — reflects on one conversation or piece of work, once. The weekly review is a recurring cadence over the whole system.
94- **`productivity/capture`** — the intake funnel (brain dump → actions). Capture feeds the system; this review keeps it trusted.
95- **`project-management` sprint retros** — a team ceremony about a shared iteration. This is a personal trusted-system audit.
96 
97---
98 
99**Version:** 1.0.0 · **Build pattern:** Path-B ritual skill — GTD weekly-review loop preserved + deterministic gate/scanner/auditor scripts added.
100 

Discussion