55 lines
3.9 KiB
Markdown
55 lines
3.9 KiB
Markdown
# Weekly Template
|
||
You are given the following context for my week:
|
||
$ARGUMENTS
|
||
|
||
## Step 0: Clean up previous week's daily notes
|
||
Ask the user if they want to delete the previous week's daily notes from the ./Daily Notes folder.
|
||
If they say yes, delete all daily notes from the previous week (7 days prior)
|
||
Also remove all prior weekly notes that are more than 1 week old.
|
||
|
||
## Step 1: Create the weekly note
|
||
Please create a new note in the "Weekly Notes" folder.
|
||
The title should be "Weekly Note - Month, Day Year" using today's date.
|
||
|
||
## Step 2: Review Notion data and create the note
|
||
This Notion MCP has no filter/query tool and `view://` URLs aren't fetchable, so use the search → fetch → filter pattern (see CLAUDE.md "HOW TO QUERY THESE DATABASES"). Do NOT try to fetch views and do NOT print any "falling back" message.
|
||
|
||
1. **Active projects** — `notion-search` the Projects collection `collection://2c0abd6c-450a-807a-a3d7-000b8d8aaecc` with `page_size: 25`, `max_highlight_length: 0`. Fetch the returned pages **in parallel**, then keep those with `Status` = "Active" and `Type` ≠ "Personal".
|
||
2. **This week's tasks** — `notion-search` the Tasks collection `collection://2c0abd6c-450a-8085-80a0-000ba136a154` with `page_size: 25`, `max_highlight_length: 0`, seeding `query` with the active-project names plus "due this week blocking". Fetch the results in parallel and drop anything with `Status` = "Done".
|
||
|
||
List all active projects and ask me which 3 I want to prioritize for the upcoming week.
|
||
If there isn't a weekly goal for the selected projects, ask me to write one.
|
||
Update the Focus this week field to true for the selected projects (and set to false for any previously selected projects not in my new list).
|
||
|
||
Then add the following to the note
|
||
|
||
Format the note with the following sections:
|
||
1. **Priorities for this week** - List the three projects I selected with their weekly goal.
|
||
2. **Key tasks** - List all tasks that are due this week. Order by due date and blocker status. Show the task name, related project, type, and effort level. Provide a link to the task in Notion.
|
||
|
||
## Step 3: Review the week's calendar
|
||
Use the Microsoft 365 connector's `outlook_calendar_search` tool to fetch the upcoming week's events:
|
||
* `afterDateTime`: this coming Monday at 00:00, `beforeDateTime`: Friday at 23:59
|
||
* `query: "*"`, `order: "oldest"`, `limit: 25`
|
||
|
||
🚨 TIMEZONE: The connector returns times in **UTC** (ISO strings ending in `Z`). Convert each to Eastern Time before reasoning about them — EDT = UTC−4 (mid-Mar to early-Nov), EST = UTC−5 otherwise. Exclude "NDS Design Readiness & Refinement" meetings, and treat `isAllDay` events (PTO/OOO) as out-of-office.
|
||
|
||
Use AJ's work day (9 AM–5:30 PM ET) and these events to estimate how much unscheduled time exists across the week — this feeds the reading suggestions below.
|
||
|
||
## Step 4: Generate my reading list
|
||
Using the same search → fetch → filter pattern: `notion-search` the Reading List collection `collection://2c4abd6c-450a-804a-809a-000bc77d02c1` with `page_size: 25`, `max_highlight_length: 0`. Fetch the returned pages in parallel and keep those with `Status` = "To Read" or "In Progress". (Don't fetch `view://` URLs.)
|
||
|
||
3. Under **Suggested Reading** recommend 2 articles that fit the available time blocks:
|
||
- Look at the unscheduled time across the week (from Step 3) to determine what reading time is appropriate
|
||
- Match articles based on Read time field:
|
||
* Short = <5 minutes (fits in small gaps)
|
||
* Medium = <15 minutes (needs decent gap)
|
||
* Long = >15 minutes (needs larger block)
|
||
- For each article show: Title, Topic, Read time, and URL
|
||
- Briefly explain why these articles fit the week's schedule
|
||
|
||
|
||
## Formatting Rules
|
||
* Always provide a tl;dr summary at the top of the note
|
||
* Add a "## Table of Contents" section after the frontmatter using Obsidian internal link syntax `[[#Heading Name]]` for all H2 sections (if there are more than 3 H2 sections)
|