weekly-review
Skill0 starsChanged 2 months agoMITView on GitHub
Once-a-week pass over the Obsidian second brain: what shipped, what slipped, which projects went quiet, and three specific questions for the user. On demand ("run my weekly review") or by cron. Read-mostly, like standup, plus applying the user's own answers from last week's review. NOT for: daily status (standup), nightly linking and inbox triage (nightly-consolidation), or creating tasks/projects from scratch (task-tracking / project-tracking).
92 other projects use a version of this.
Adopted by
Most recently taken up by
- nicolas-diez/personal-ostheir own version, first seen Nov 8, 2026
- chrisblattman/claudeblattmantheir own version, first seen Nov 8, 2026
- totorototo/ledgertheir own version, first seen Nov 8, 2026
- TalkToHumans/pull-labtheir own version, first seen Nov 8, 2026
- Castan-AI/founder-commandstheir own version, first seen Nov 8, 2026
- jwm-axoni/claude-workbenchtheir own version, first seen Nov 8, 2026
Used with
Projects with it also use quarterly-review, daily-plan and 8 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
Phoenixrr2113Skillquarterly-review
Quarterly review — strategic look at the last 3 months. Career trajectory, project health, life balance, big decisions ahead. Runs 1st of Jan/Apr/Jul/Oct.
Also in 3 projects that use this
steptianSkilldaily-plan
每日待办计划与日程管理。触发词:'今天要做'、'今日计划'、'今日待办'、'今天安排'、'安排一下'、'加个任务'、'记个任务'、'今日复盘'、'今日回顾'、'今天总结'、'本周计划'、'周总结'、'开始工作'、'上班了'、'完成了'、'加个日程'、'记个日程'、'改一下时间'、'日程调整'、'面试'、'开会'、'约了'。支持四象限优先级、时段分配、固定日程管理、智能时间估算、每日/每周复盘。当用户提到有明确时间的安排(如'下午两点面试'、'10点开会'),自动识别为日程并写入日程表。
Also in 3 projects that use this
seedprodSkilldaily-brief
Send a morning briefing via Telegram with weather, news, and a motivational quote. Designed to run via launchd for automated daily delivery.
Also in 5 projects that use this
Phoenixrr2113Skillmorning-brief
Full morning brief — calendar, email, meeting prep, execute actionable items, create follow-up tasks. Runs at 8:03 AM or when Randy asks for a morning update.
Also in 4 projects that use this
zephyrwang6Skilldaily-review
每日工作回顾与洞察分析,对用户前一天的对话历史和使用数据进行总结与建议
Also in 3 projects that use this
TheCraigHewittSkillresearch-brief
Produces a one-page research brief on a topic, person, or company — what they do, what matters, what's changed recently, sources. Use when the user asks to research, look into, brief me on, or get context on a specific topic, company, competitor, or person. Pulls from the web, any project context, and recent emails involving the subject.
Also in 3 projects that use this
Other versions92 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 92
- QuixiAI/agi-memory★ 623same name
- QuixiAI/Hexis★ 623same name
- chrisblattman/claudeblattman★ 479same name
- andreaskelm/pm-brain★ 235same name
- duncan-buildroom/freeskills★ 65same name
- andrehuang/researcher-pack★ 50same name
- seandavi/lifeos-template★ 46same name
- chacosoldier/compabob★ 34same name
- cookyman74/llmwiki-harness★ 34same name
- jexchan/dailyup-second-brain-starter★ 33same name
82 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository15 other files it gives its agents.
- daily-journalSkill
- goalsSkill
- idea-pipelineSkill
- knowledge-baseSkill
- meeting-notesSkill
- nightly-consolidationSkill
- people-notesSkill
- project-trackingSkill
- resurfacingSkill
- second-brainSkill
- shopping-listSkill
- skill-tuningSkill
- standupSkill
- task-trackingSkill
- vault-recallSkill
The file
We split this skill into the rules it gives an agent
9 rules. 0 are common, 4 are distinctive, and 5 are very specific to this project.
0
Common
Most of the 80 edited versions we read keep these.
4
Distinctive
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 29
When asked to run the weekly review, or when invoked by cron:
- Distinctive: line 32
If a review for this week already exists, this is a re-run: read it and continue from what it already has rather than starting over.
- Very specific: line 37
Read this week's Syntheses/YYYY-MM-DD.md notes, if any, for observations already surfaced overnight.
- Very specific: line 38
If last_review_week names a note, read it and look at its ## Answers section.
- Distinctive: line 43
Never touch task or project state for any other reason during a review — this is the one exception to "read-mostly," and it is bounded to …
- Distinctive: line 57
Use this structure unless the user asks for a different format:
- Very specific: line 86
Treat Tasks.md as the source for task state and Projects/[Project Name]/[Project Name].md as the source for project state, same as standup.
- Very specific: line 87
Never mutate task or project state except to apply an explicit answer the user wrote in last week's ## Answers — everything else about this …
- Very specific: line 88
Do not create tasks or projects from a review's own observations.
“Common” is measured: kept by at least 6 in 10 of the 80 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Weekly Review
Generate the week's review by inspecting the Obsidian second brain, then ask the user three specific questions. This is the main feedback channel that tunes the rest of the system, so the questions matter more than the prose around them. Read second-brain for shared vault conventions and the obsidian__* tool surface; this skill matches standup's shape and tone, but runs weekly and writes a permanent note instead of replacing one.
Data Source
- Task state, via
obsidian__task_query—completed_since="YYYY-MM-DD"(the week's Monday) withstatus="done"for what shipped,overdue=truefor what slipped,due_before="YYYY-MM-DD"(today) withstatus="open"for the rest of what's due this week and not done. Fall back toobsidian__vault_read note="Tasks"only when a task's full wording or layout matters beyond what the query fields give you. Projects/*/[Project Name].mdfor status and recent activity — list active projects withobsidian__vault_list type="project" status="Active".Syntheses/YYYY-MM-DD.mdnotes from the last 7 days for overnight observations worth carrying into the review.- Notes changed in the last 7 days, via
obsidian__vault_list changed_since="YYYY-MM-DD", to see where the week's activity actually landed. - Last week's review note, if any —
obsidian__vault_statusreportslast_review_week; read it withobsidian__vault_read note="YYYY-Www". Its## Answerssection is what the user wrote in reply to last week's three questions.
A missing note or an empty result is the answer, not a malfunction — no synthesis notes in a quiet week and no prior review before the first run are both normal. Skip the section and move on.
Workflow
When asked to run the weekly review, or when invoked by cron:
obsidian__vault_statusfor today's local date andlast_review_week. Derive this week's ISO week from today's date — ISO weeks run Monday to Sunday and week 1 is the week containing 4 January — and format itYYYY-Www, e.g.2026-W37.- If a review for this week already exists, this is a re-run: read it and continue from what it already has rather than starting over.
obsidian__task_query status="done" completed_since="YYYY-MM-DD"(this week's Monday) for what shipped;obsidian__task_query overdue=trueandobsidian__task_query status="open" due_before="YYYY-MM-DD"(today) for what slipped.obsidian__vault_list type="project" status="Active"for active projects, then read each one worth reporting on. Quiet Projects itself comes fromobsidian__vault_list type="project" status="Active" stale_days=14—last_entry_dateis the note's own dated evidence (an Activity Log block, a table row), not mtime, so a consolidation pass touching a file cannot make a quiet project look active.obsidian__vault_list changed_since="YYYY-MM-DD"(7 days back) to see what actually moved this week.- Read this week's
Syntheses/YYYY-MM-DD.mdnotes, if any, for observations already surfaced overnight. - If
last_review_weeknames a note, read it and look at its## Answerssection. Apply what it says, using only the tools this system exposes:- A task the user marked "drop" — complete it so it stops surfacing:
obsidian__task_update match="…" done=true. - A project the user said to park —
obsidian__note_set_field note="[Project Name]" field="status" value="On Hold". - A project the user said to push or keep going — no state change; carry it forward instead of asking again.
- An answer that does not map onto an existing tool: do not invent one. Note it in the reply instead of leaving it silently unapplied. Never touch task or project state for any other reason during a review — this is the one exception to "read-mostly," and it is bounded to acting on the user's own explicit prior answer.
- A task the user marked "drop" — complete it so it stops surfacing:
- Work out the sections:
- Shipped — tasks completed this week (
✅dates falling in the last 7 days) and any project whose status changed. Name the task or project with a wikilink. - Slipped — tasks overdue, or due this week and not done. Name the task, its due date, and its project.
- Quiet Projects —
obsidian__vault_list type="project" status="Active" stale_days=14. Show each with itslast_entry_date(or "no dated entry yet" when null) so the reader sees the evidence, not just the label. When a listed project carries agoal:field, group its line under that goal's name (obsidian__vault_list type="project" goal="Goal Name"finds the rest of that goal's projects); projects with no goal go last under "Unassigned". - Observations — at most five. Each one names a note with a wikilink and gives a one-line reason it is worth surfacing. Fewer is fine; padding to five is not the goal.
- Questions for you — exactly three questions, drawn from Slipped and Quiet Projects, each specific enough to answer in a sentence, e.g. "[[Example Project]] has been quiet 21 days — park it or push it?" Do not ask a question the vault already answers.
- Shipped — tasks completed this week (
obsidian__note_create type="review" name="YYYY-Www"for this week, thenobsidian__section_appendonce per section in order (Shipped, Slipped, Quiet Projects, Observations, Questions for you). Leave## Answersempty — that is the user's section to fill in, not this skill's.- Reply in the current channel with the same content, trimmed for readability.
Empty sections are fine and expected some weeks — an empty Slipped section is good news, not a gap to fill with something else.
Review Shape
Use this structure unless the user asks for a different format:
**Weekly Review — YYYY-Www**
**Shipped**
- Task or project, with a wikilink.
**Slipped**
- Task, due date, project.
**Quiet Projects**
- Project — last entry 2026-07-20 (or "no dated entry yet").
**Observations**
- Up to five, each with a wikilink and a one-line reason.
**Questions for you**
1. Specific question drawn from Slipped or Quiet Projects.
2. …
3. …Tone
Be concise and specific — this note is read by the same person every week, so repeating boilerplate wastes their attention. Do not invent shipped work, slipped dates, or quiet status when the vault does not say so. When a section would otherwise be empty, say so briefly rather than stretching another section to fill the gap.
Relationship Rules
- Treat
Tasks.mdas the source for task state andProjects/[Project Name]/[Project Name].mdas the source for project state, same asstandup. - Never mutate task or project state except to apply an explicit answer the user wrote in last week's
## Answers— everything else about this review is synthesis, not action. - Do not create tasks or projects from a review's own observations; if something needs tracking, say so as a question or observation and let the user (or a follow-up to
task-tracking/project-tracking) act on it.
Cron Invocation
For scheduled runs, use the same workflow as an on-demand run. Deliver the concise review to the configured channel. If a tool returns an error, report it plainly — the message names the fix — rather than retrying the same call or falling back to shell commands. There is no shell fallback for vault work.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

