/weekly-plan — Weekly planning orchestrator
Plan the week's work across all active clients. Scan communications, check engagement state, suggest tasks with the right skills and agents, then create them in Paperclip and Linear for automated execution.
For full 6-phase process (gather / state-check / suggest / approve / create / summary) → the premium reference. For agent IDs, project IDs, status IDs, and other Linear lookups → the premium reference.
Triggers
Invoke when user says:
- "/weekly-plan"
- "Let's plan the week"
- "What should we work on this week?"
- "Weekly planning"
Do NOT invoke when:
- User wants to create a single task (just create it directly)
- User asks for a daily briefing (use
/today)
- User wants to run a specific skill (invoke that skill directly)
Prerequisites
- Paperclip server running at
http://127.0.0.1:3100
- Linear API key available (Paperclip secrets as
LINEAR_API_KEY)
- Gmail and Calendar MCPs connected
Process at a glance
| Phase |
Purpose |
Output |
| 1. Gather |
Pull from Gmail, Slack, Granola, Calendar (parallel) |
notes/MMYY-weekly-context.md per client |
| 2. State check |
Linear issues + client folders + ontology dependency check |
Current-state map |
| 3. Suggest |
Group tasks by client; assign skill + agent + dependencies |
Structured task list |
| 4. Approve |
Wait for user to approve / edit / reject |
Approved task set |
| 5. Create |
Linear issue + Paperclip task per approved item |
Created task IDs |
| 6. Summary |
Present what was created with agent routing |
Summary report |
For full per-phase commands and curl payloads → the premium reference.
Agent routing (quick reference)
| Agent |
Skills it runs |
| Researcher |
company-context, competitor-research, ICP, TOV, transcripts, win-loss, brand-kit |
| Product Marketer |
positioning, product-messaging, content-strategy, pricing |
| Growth Marketer |
landing pages, case-study, lifecycle, email-nurture, webinar-brief |
| Content Creator |
LinkedIn (all variants), youtube-scripts, aeo-content, thought-leadership, hype-man, newsletter |
| Sales |
battlecards, demo-script, sales-deck, outreach-emails, abm-campaign, clay-search |
| Paid Marketer |
ad-creative-brief, google-ads, linkedin-ads, paid-ads-audit, paid-campaign-strategy |
| Operator |
skill-catalog, reviewers, brand-context, runbook, dashboard, experiment, workflow-design, recall |
For full agent IDs and Linear project/status/label IDs → the premium reference.
Critical rules
- Always assign Linear issues to Matteo (
assigneeId: <id>). Even though Paperclip agents execute, Matteo is assignee for visibility.
- Always run Phase 1 sources in parallel. Sequential pulls are 4x slower for no benefit.
- Don't fabricate communications. If an MCP fails, note "[Source] unavailable" and proceed with what's available.
- Status logic: No dependencies → "Next up". Has unresolved dependencies → "Backlog".
- Task title prefix: AD —, SP —, GG —, GES —, PV — per client.
Notes
- User email:
matteo@genesysgrowth.com
- Paperclip company ID:
<id>
- Agents pick up tasks on heartbeat (default 1 hour). For immediate execution:
POST http://127.0.0.1:3100/api/agents/{agentId}/heartbeat
End-of-run HTML render (optional, prompted)
After the weekly plan is produced and shown to the user, the skill asks:
"Render this as a shareable HTML file too? (y/n)"
y → emit a sibling .html file: visual weekly grid (Monday → Friday columns × time blocks × commitments), priority items highlighted, source attribution footer (Gmail / Slack / Granola / Calendar). Filename: weekly-plan-{ISO-week}.html.
n → stop; markdown stays primary.
Rationale: weekly plans are the most likely synthesis output to get forwarded — to clients ("here's our focus this week"), to teammates ("here's what I'm prioritising"), or pinned in Slack. HTML render is the highest-leverage audience-external use case. Convention from .claude/rules/throwaway-editor-pattern.md (output-not-export variant).
1---2name: weekly-plan3description: Weekly Plan4---56# /weekly-plan — Weekly planning orchestrator78Plan the week's work across all active clients. Scan communications, check engagement state, suggest tasks with the right skills and agents, then create them in Paperclip and Linear for automated execution.910For full 6-phase process (gather / state-check / suggest / approve / create / summary) → the premium reference. For agent IDs, project IDs, status IDs, and other Linear lookups → the premium reference.1112---1314## Triggers1516**Invoke when user says:**17- "/weekly-plan"18- "Let's plan the week"19- "What should we work on this week?"20- "Weekly planning"2122**Do NOT invoke when:**23- User wants to create a single task (just create it directly)24- User asks for a daily briefing (use `/today`)25- User wants to run a specific skill (invoke that skill directly)2627---2829## Prerequisites3031- Paperclip server running at `http://127.0.0.1:3100`32- Linear API key available (Paperclip secrets as `LINEAR_API_KEY`)33- Gmail and Calendar MCPs connected3435---3637## Process at a glance3839| Phase | Purpose | Output |40|-------|---------|--------|41| **1. Gather** | Pull from Gmail, Slack, Granola, Calendar (parallel) | `notes/MMYY-weekly-context.md` per client |42| **2. State check** | Linear issues + client folders + ontology dependency check | Current-state map |43| **3. Suggest** | Group tasks by client; assign skill + agent + dependencies | Structured task list |44| **4. Approve** | Wait for user to approve / edit / reject | Approved task set |45| **5. Create** | Linear issue + Paperclip task per approved item | Created task IDs |46| **6. Summary** | Present what was created with agent routing | Summary report |4748For full per-phase commands and curl payloads → the premium reference.4950---5152## Agent routing (quick reference)5354| Agent | Skills it runs |55|-------|----------------|56| Researcher | company-context, competitor-research, ICP, TOV, transcripts, win-loss, brand-kit |57| Product Marketer | positioning, product-messaging, content-strategy, pricing |58| Growth Marketer | landing pages, case-study, lifecycle, email-nurture, webinar-brief |59| Content Creator | LinkedIn (all variants), youtube-scripts, aeo-content, thought-leadership, hype-man, newsletter |60| Sales | battlecards, demo-script, sales-deck, outreach-emails, abm-campaign, clay-search |61| Paid Marketer | ad-creative-brief, google-ads, linkedin-ads, paid-ads-audit, paid-campaign-strategy |62| Operator | skill-catalog, reviewers, brand-context, runbook, dashboard, experiment, workflow-design, recall |6364For full agent IDs and Linear project/status/label IDs → the premium reference.6566---6768## Critical rules69701. **Always assign Linear issues to Matteo** (`assigneeId: <id>`). Even though Paperclip agents execute, Matteo is assignee for visibility.712. **Always run Phase 1 sources in parallel.** Sequential pulls are 4x slower for no benefit.723. **Don't fabricate communications.** If an MCP fails, note "[Source] unavailable" and proceed with what's available.734. **Status logic:** No dependencies → "Next up". Has unresolved dependencies → "Backlog".745. **Task title prefix:** AD —, SP —, GG —, GES —, PV — per client.7576---7778## Notes7980- User email: `matteo@genesysgrowth.com`81- Paperclip company ID: `<id>`82- Agents pick up tasks on heartbeat (default 1 hour). For immediate execution: `POST http://127.0.0.1:3100/api/agents/{agentId}/heartbeat`8384---8586## End-of-run HTML render (optional, prompted)8788After the weekly plan is produced and shown to the user, the skill asks:8990> *"Render this as a shareable HTML file too? (y/n)"*9192- **`y`** → emit a sibling `.html` file: visual weekly grid (Monday → Friday columns × time blocks × commitments), priority items highlighted, source attribution footer (Gmail / Slack / Granola / Calendar). Filename: `weekly-plan-{ISO-week}.html`.93- **`n`** → stop; markdown stays primary.9495**Rationale:** weekly plans are the most likely synthesis output to get forwarded — to clients ("here's our focus this week"), to teammates ("here's what I'm prioritising"), or pinned in Slack. HTML render is the highest-leverage audience-external use case. Convention from `.claude/rules/throwaway-editor-pattern.md` (output-not-export variant).