# 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: Fetch Notion data and create the note Run `python3 scripts/fetch_weekly_data.py` to get `projects`, `tasks`, and `reading` in one JSON payload (this reduces MCP round-trips and inference cost). `projects` is already filtered to active, non-personal projects and includes each one's current `focus_this_week` state. `tasks` is already filtered to non-Done tasks due within 7 days. `reading` is already filtered to "To Read"/"In Progress". **If the script errors or is unavailable** (e.g. missing `.env`/`NOTION_TOKEN` on this machine), fall back to the search → fetch → filter pattern instead of failing the command (see CLAUDE.md "HOW TO QUERY THESE DATABASES"): `notion-search` the Projects collection `collection://2c0abd6c-450a-807a-a3d7-000b8d8aaecc` and Tasks collection `collection://2c0abd6c-450a-8085-80a0-000ba136a154` (both `page_size: 25`, `max_highlight_length: 0`), fetch results in parallel, and apply the same filters manually. Do NOT try to fetch `view://` URLs and do NOT print any "falling back" message for those — but DO mention to me that the script failed and you're using the fallback. 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 false for any project where `focus_this_week` was already true but isn't in my new list) via the Notion MCP — the script is read-only and can't make this update. 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. 3. **Workouts this week** - The table from Step 3b (omit this section entirely if no workouts are scheduled). ## 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 3b: Check the week's Runna workouts Fetch the Runna ical feed (see CLAUDE.md "Data Sources") with `curl -sL `. For each `VEVENT` whose `DTSTART` falls Monday–Friday of this week, compute the 9 AM block: workout duration (`X-WORKOUT-ESTIMATED-DURATION`, falling back to the high end of the range in `SUMMARY`/`DESCRIPTION`) + a 20-minute shower buffer after, starting at 9:00 AM. Check each block against that day's calendar events from Step 3. Add a **Workouts this week** section: a table with columns Date, Workout, Block (e.g. 9:00–9:50 AM), and Status (Clear, or "Conflict: