skills / Productivity / Weekly
monday
Full Monday morning setup. Creates week folder, pulls carry-forward, and generates briefing in one pass. Use on Monday mornings or when the user says "monday", "start my week", or "monday morning".
Monday Morning
Combined flow for starting the week. Creates the week folder (if needed), pulls carry-forward, and generates a briefing in one pass.
When to Use
- Monday mornings (primary use case)
- Any time you need both folder setup and briefing
- If folder already exists, skips creation and just generates briefing
For folder-only setup: use /new-week
For briefing-only (mid-week): use /week-prep
Steps
1. Calculate week info
From today's date, determine:
- ISO week number
- Monday's date for folder name (format:
mm-dd) - Date range for report title (e.g., "Jan 6 - Jan 10")
- Previous week's folder path
2. Check if week folder exists
- Look for
YYYY/w##-mm-dd/ - If exists: note "Week folder already exists, skipping creation"
- If not: create the folder
3. Read previous week's report (ONCE)
This is the efficiency gain: read it once, extract everything needed.
- Find previous week's report in
YYYY/w##-mm-dd/weekly-report-*.md - Extract:
- Unchecked items from "Carry Forward" section
- Unchecked items from "Time Blocks" section
- Projects mentioned in frontmatter
projectsfield
- Store these for use in steps 4 and 7
4. Create weekly report (if folder was new)
Use this structure, pre-populating carry-forward from step 3:
---
type: weekly
week: w##
projects: [from previous week]
---
# W##: Date Range
## Tasks Due This Week
```tasks
not done
due after YYYY-MM-DD (Sunday before week starts)
due before YYYY-MM-DD (Saturday after week ends)
short mode
Time Blocks
One deep work block per day. That's the win.
Mon
- [ ]
Tue
- [ ]
Wed
- [ ]
Thu
- [ ]
Fri
- [ ]
Focus
Log
Decisions Made
| Decision | Project | Rationale |
|---|
Friday Wrap-Up
Wins
Blockers
Slack Decisions
| Date | Channel | Decision | Logged? |
|---|
Carry Forward
[items from previous week's carry-forward and incomplete time blocks]
<!-- TODO: customize - Adjust sections to match your weekly report template -->
### 5. Pull calendar for the week
- Use `mcp__gworkspace-mcp__calendar_events`
- Time range: Monday through Friday (natural language dates)
- Group by day
- Note meeting-free blocks of 2+ hours for deep work windows
### 6. Check project health (efficient pattern)
Instead of reading all project files:
1. Read `projects/index.md` first (contains summary of project status)
2. Only read individual project files if they appear overdue or blocked in the index
3. Flag projects where `next_review` is past or this week
<!-- TODO: customize - Adjust project index path if your vault uses a different structure -->
### 7. Check Slack (optional)
- Use `mcp__playground-slack-mcp__get_messages` with action: `my_messages`
- Last 48 hours
- Flag items needing response
- Skip gracefully if MCP unavailable
### 8. Output the briefing
Combine all gathered context into one scannable output:
```markdown
## Monday Setup Complete
**Week folder:** `YYYY/w##-mm-dd/` [created / already existed]
**Weekly report:** [created with X carry-forward items / already existed]
---
## Week Prep: W## (Mon [date] - Fri [date])
### Calendar at a Glance
| Day | Events |
|-----|--------|
| Mon | [events] |
| Tue | [events] |
| Wed | [events] |
| Thu | [events] |
| Fri | [events] |
### Deep Work Windows
Based on your calendar:
- **[Day]**: [time range] ([duration])
### Carry Forward
From last week:
- [ ] Item 1
- [ ] Item 2
### Projects Needing Attention
- **[[project]]**: Review overdue by X days
- **[[project]]**: Status is `blocked`
### Slack Check
- X mentions in last 48h
- [Notable items if any]
Notes
- Calendar uses natural language dates: "Monday January 13 12:00am" (not ISO timestamps, which fail silently)
- If calendar or Slack MCPs fail, skip those sections and note the skip
- Keep output scannable: structure over prose
- The weekly report is the only file written; briefing is output only
- Tasks query date math:
due afterSunday,due beforeSaturday (captures Mon-Fri)