Skip to main content

month-planner

Monthly planning skill for long-term proactive management, reviewing the month's activities, scanning external environment, setting strategic goals, and providing context for weekly and daily planners.

Source facts

Repository
CraftOS-dev/CraftBot
Last source activity
August 7, 2026 at 01:24
Detected SKILL.md language
English
Stars
402
Forks
50

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
month-planner
description
Monthly planning skill for long-term proactive management, reviewing the month's activities, scanning external environment, setting strategic goals, and providing context for weekly and daily planners.
user-invocable
false
action-sets
["file_operations","proactive","scheduler","google_calendar","notion","web"]
# Month Planner Monthly strategic planning for proactive agent behavior. This skill runs on the 1st of each month to review the past month, set long-term goals, and provide strategic direction for weekly and daily planners. ## Trigger Context You receive a planner trigger with: - `scope`: "month" - `type`: "proactive_planner" --- ## CRITICAL: Silent Execution (Override Standard Task Rules) **This skill overrides standard task completion rules.** Unlike regular tasks: - **NO acknowledgement**: Do NOT acknowledge task receipt to user - **NO confirmation**: Do NOT wait for user confirmation before ending - **MUST end silently**: Use `end_turn` immediately after completing planning work **EXCEPTION - Suggesting New Tasks:** When you want to suggest a new recurring or scheduled task: 1. Send the suggestion as your FINAL `send_message` (no `continue_work`) — the run ends on that question 2. The user's reply arrives as a new run: if they approve → add the task, then end silently 3. If they reject → end silently without adding 4. If no reply ever comes, nothing is added — the suggestion simply lapses **Why?** Planner runs happen automatically. Waiting for confirmation would cause work to pile up. --- ## Core Question Ask yourself: **"What long-term goals should the user work toward, and how can I help them get SLIGHTLY closer THIS MONTH?"** Focus on strategic direction and long-term thinking. Your output provides context for the weekly and daily planners to make tactical decisions. --- ## CRITICAL RULES - READ BEFORE DOING ANYTHING ### Before Planning - ALWAYS Do These Checks 1. **Check existing scheduled tasks**: Use `scheduled_task_list` to see what's already scheduled 2. **Read PROACTIVE.md**: Check existing recurring tasks and the Goals, Plan, and Status section 3. **Check past work**: `memory_search` and grep `agent_file_system/EVENT.md` for what has been done this month 4. **Read MEMORY.md**: Understand long-term patterns and user context 5. **Read USER.md**: Understand user's profile, preferences, and stated goals ### Duplicate Prevention (EXTREMELY IMPORTANT) - **NEVER suggest a task the user has already performed** (check EVENT.md / memory_search) - **NEVER suggest a task that already exists** as a recurring or scheduled task - **NEVER add a recurring task that duplicates an existing one** - If user performed a one-time task before and you suggest it again = **VERY BAD** ### Permission Requirements - **Recurring tasks**: MUST get explicit user permission before adding ANY new recurring task - **Goal changes**: Should reflect what user has expressed, not your ideas - **Strategic recommendations**: Must be based on evidence, not assumptions ### Conservatism Principle It MUST be **EXTREMELY HARD** for you to suggest ANYTHING: - Add new recurring tasks → **ONLY if user explicitly said "I want this automated"** - Suggest new goals → **ONLY if user explicitly expressed them multiple times** - Change existing goals → **ONLY with explicit user request** **DO NOT assume what the user wants** - only work with what they've told you. **DO NOT annoy the user** by suggesting things they did not ask for. **DO NOT suggest based on a single occurrence** - this is a critical mistake. **WHEN IN DOUBT, DO NOT SUGGEST.** --- ## Guiding Principles **Evidence over assumption**: Goals come from user's explicit statements or demonstrated behavior, never from your inference. **Stability over optimization**: Goals shouldn't change frequently. Prefer stability. **User autonomy**: Reflect user's stated priorities, don't impose new ones. **Stop signals**: If user ignores monthly reports or dismisses suggestions - reduce intervention. **Know the user, not the universe**: Only check external sources relevant to THIS user based on their profile, goal, career, time/location or demonstrated interests. --- ## Determining If User Needs Proactive Assistance **DEFAULT STANCE: DO NOT SUGGEST ANYTHING.** Before suggesting ANY proactive task or goal change, you must have OVERWHELMING evidence. Most planner runs should result in ZERO suggestions. ### The 3+ Rule (MANDATORY) **A single occurrence of ANYTHING is NEVER sufficient to suggest a task.** - User asked for weather ONCE → **DO NOT suggest weather task** - User checked email ONCE → **DO NOT suggest email task** - User mentioned something ONCE → **DO NOT suggest anything** **MINIMUM threshold for ANY suggestion:** - User did the EXACT same task **3+ times** manually, OR - User **explicitly said** "I want you to do X automatically/regularly" **NO EXCEPTIONS.** If you cannot point to 3+ occurrences or an explicit request, DO NOT SUGGEST. ### Evidence-Based Need Assessment | Question | If YES | If NO | |----------|--------|-------| | Did the user explicitly request this type of help? | Consider suggesting | Do NOT suggest | | Has the user repeatedly done this task manually? | May automate **ONLY if 3+ times** | Do NOT automate | | Did the user mention this as a pain point? | Consider helping **ONLY if mentioned 3+ times** | Do NOT assume | | Is this blocking user's stated goals? | May be valuable | Probably not urgent | | Has user rejected similar suggestions before? | Do NOT suggest again | N/A | ### Evidence Types (Strongest to Weakest) | Evidence Level | Description | Action | |----------------|-------------|--------| | **Explicit Request** | User said "I want X automated/recurring" | Safe to suggest | | **Repeated Behavior** | User did X **3+ times** manually | May suggest with permission | | **Stated Pain Point** | User complained about X **multiple times** | May suggest as solution | | **Single Occurrence** | User did X once | **ABSOLUTELY DO NOT suggest** | | **Your Assumption** | You think user might want X | **ABSOLUTELY DO NOT suggest** | ### Red Flags - DO NOT Proceed If: - User has not interacted in 24+ hours (they may be busy) - User dismissed similar suggestions recently - Task would interrupt user's current focus - No clear evidence user wants this help - You're assuming user needs something they never mentioned - **User only did this task 1-2 times** (NOT ENOUGH) - **You cannot cite 3+ specific instances from past work (EVENT.md / memory)** ### Green Flags - May Consider If: - User explicitly asked for proactive help with this area and it is not processed yet - User has done this exact task **3+ times** manually (with evidence in EVENT.md / memory) - User **explicitly said** "I want this automated" or "Can you do this regularly" - Task is tier 0 (silent, no interruption) --- ## What Makes a GOOD Proactive Task A good proactive task has ALL of these qualities: | Quality | Description | Bad Example | Good Example | |---------|-------------|-------------|--------------| | **Explicit Need** | User asked for it or clearly needs it | "User might like email summaries" | "User asked me to summarize emails daily" | | **Clear Value** | Obvious benefit to user | "Check random websites" | "Monitor competitor pricing user tracks" | | **Appropriate Frequency** | Not too often, not too rare | "Remind user every hour" | "Weekly report on Sundays" | | **Measurable Outcome** | You can tell if it worked | "Help user be productive" | "Compile daily standup notes by 9am" | | **Non-Intrusive** | Respects user's attention | "Send 5 notifications daily" | "Silently prepare draft, notify once" | | **Reversible** | User can undo or cancel | "Automatically send emails" | "Draft email for user review" | ### Task Quality Checklist Before suggesting ANY task, it must pass ALL checks: - [ ] User explicitly requested or clearly needs this - [ ] Not duplicating existing task or completed work - [ ] Frequency is appropriate (not annoying) - [ ] Value is clear and measurable - [ ] Tier/permission level is appropriate - [ ] User can easily disable or modify it --- ## Annoyance Prevention ### Guiding Principles **ASSUME THE USER DOES NOT WANT SUGGESTIONS.** You must have overwhelming evidence to override this assumption. - **Frequency**: Suggest EXTREMELY sparingly - most months should have no new suggestions - **Spacing**: Give user breathing room between any suggestions - **Recurring tasks**: ALMOST NEVER suggest new recurring tasks - **Rejection**: If user rejected something, do not suggest it again - **Single occurrence**: NEVER suggest based on something user did only once ### Signals User is Annoyed (STOP SUGGESTING) - User says "stop", "enough", "later", "not now" - User ignores 2+ consecutive suggestions - User disables a task you suggested - User reduces notification frequency - User mentions being "busy" or "overwhelmed" ### Quality Over Quantity - Better to suggest **nothing** than something mediocre - Better to **wait** than rush a suggestion - Better to **ask once** than nag - Better to **be silent** than be annoying - **99% of planner runs should produce ZERO suggestions** ### The Annoyance Test Before ANY suggestion, ask: 1. Would I be annoyed if I received this? 2. Is this genuinely helpful or just "something to do"? 3. Am I suggesting this because user needs it, or because I can? 4. Have I already suggested something similar recently? 5. **Can I cite 3+ specific instances where user did this task?** 6. **Did user EXPLICITLY ask for this to be automated?** If you hesitate on ANY of these → DO NOT suggest. If you cannot answer YES to question 5 or 6 → DO NOT suggest. --- ## Context Layers ``` Layer 1: WHO is the user? (USER.md - static profile) ↓ Layer 2: WHAT's their situation? (PROACTIVE.md - dynamic context) ↓ Layer 3: WHAT's happening now? (External sources - selective) ``` Use Layer 1 + Layer 2 to determine which external sources to check in Layer 3. --- ## Understanding User Goals ### Where Do Goals Come From? Goals should come from these sources (in order of priority): 1. **User explicitly stated**: "I want to learn Python this year" 2. **User repeatedly works on**: User does coding exercises weekly 3. **User mentioned wanting**: "I should really organize my files" 4. **User asked for help with**: "Help me track my reading habit" **INVALID source**: Your inference ("User might want to exercise more") ### Goal Quality Before setting ANY long-term goal, verify: - User explicitly stated or clearly demonstrated this goal - Goal is something user actively works toward (evidence in EVENT.md / memory) - Goal is within scope of what agent can help with - Goal hasn't been abandoned by user --- ## Workflow ### Step 1: Monthly Review (Internal) Comprehensive review of the past month: 1. **EVENT.md** (grep this month's entries) - All work completed this month 2. **MEMORY.md** - All learnings, patterns, and user statements 3. **PROACTIVE.md** - Recurring task performance 4. **USER.md** - User profile and stated goals 5. **scheduled_task_list** - Current scheduled tasks ### Step 2: Scan External Environment (Selective) Based on USER.md interests and connected integrations, check ONLY what's relevant to this user. Here are some examples: **Calendar & Schedule** (if Google Calendar connected): ``` check_calendar_availability(start_date="[month_start]", end_date="[month_end]") ``` - Note: major events, recurring patterns, travel - Identify: heavy periods, holidays, deadlines - Look for: strategic planning opportunities (conferences, reviews) **Task Management - Goal Progress** (check all connected tools): ``` IF Notion connected: → Review project databases for completion rates → Check goal-tracking databases if they exist → Summarize: tasks completed vs. created this month IF Apple Reminders: remindctl completed → Review what was accomplished ``` - Analyze: goal progress across all connected tools - Note: areas where user is making progress vs. stalling **Long-Term External Factors** (based on user interests): ``` IF user has career goals: → Note relevant industry trends, opportunities IF user has health/fitness goals: → Note seasonal factors (weather patterns for next month) IF user has financial goals: → Note relevant market conditions (only if user has engaged before) IF user has learning goals: → Check progress on connected learning platforms if any ``` **Seasonal/Calendar Factors:** ``` - Upcoming holidays in user's location - Seasonal changes affecting user's routines - Annual events relevant to user (tax season, reviews, renewals) ``` **Integration Usage Review:** - Which integrations did user actually engage with this month? - Which were connected but unused? (consider deprioritizing) - Which delivered value vs. noise? **SKIP if:** - User has never engaged with the integration - User has ignored suggestions from this domain all month - No evidence user cares about this area ### Step 3: Evidence Gathering For each potential goal or recommendation, document: - **Source**: Where did this come from? (internal files OR external tools) - **Evidence**: What proves user wants this? - **Frequency**: How often does user work on this? - **Explicit**: Did user state this directly? - **External support**: What do connected tools show about progress? If you can't fill these in → do not include. ### Step 4: Strategic Analysis Analyze long-term patterns from internal + external sources: - **Goal progress**: What goals has user been working toward? (evidence from both internal files AND external tools) - **Productivity trends**: Is work being completed? (compare across EVENT.md and connected tools) - **Recurring task effectiveness**: Which deliver value? - **Integration effectiveness**: Which external tools provided valuable context? - **User feedback**: What has user said about agent's help? ### Step 5: Recurring Task Audit For each recurring task, evaluate: - Is it running as expected? - Is user engaging with results? - Has user given positive or negative feedback? If a task is consistently ignored, recommend disabling. --- ## Updating PROACTIVE.md Weave internal and external context naturally into the existing section of "Goals, Plan, and Status". **Do NOT create new subsections.** ### Long-Term Goals (Primary Responsibility) ```markdown ### Long-Term Goals <!-- Updated by month planner --> 1. Complete Q1 product launch - [Evidence: user stated Jan 5, 47 tasks completed toward this in Notion] 2. Improve fitness routine - running 3x/week - [Evidence: user requested Jan 12, calendar shows 8 scheduled runs this month, 6 completed] 3. Learn Rust programming - [Evidence: user mentioned Feb 1, 12 learning sessions in EVENT.md] **Monthly context:** March is heavy with client meetings (calendar shows 15 scheduled). April lighter - good for focused learning goals. User's Q1 deadline March 31. ``` Guidelines: - Maximum 3-5 goals - Each goal must have evidence (from internal files AND external tools) - Include progress metrics from connected tools where available - Note external factors affecting goals (calendar load, seasonal factors) - Only include goals user expressed - Remove goals user abandoned ### Current Focus (Set Direction) ```markdown ### Current Focus <!-- Updated by week/day planner --> [Monthly theme based on goals above] ``` Guidelines: - Should align with Long-Term Goals - Provides direction for week planner - One sentence maximum ### Recent Accomplishments ```markdown ### Recent Accomplishments <!-- Updated by planners after task completion --> - [Month]: [Major goal-related accomplishment] ``` Guidelines: - Summarize month's achievements - Include metrics from external tools (tasks completed, meetings held, etc.) - Focus on goal progress - Remove entries older than 3 months ### Recording Long-Term Patterns (Inline) When you observe strategic patterns, record them inline: ```markdown **Strategic observations:** - User most productive in morning blocks (9-11am pattern consistent 3 months) - Heavy meeting weeks correlate with lower goal progress - recommend protecting Thu/Fri - User engages with tech news (clicked 80%), ignores crypto (clicked 5%) - adjust priorities - Notion integration high-value (used daily), Apple Reminders unused - consider recommending consolidation ``` Do NOT create a dedicated "Patterns" or "Integration Status" subsection. --- ## Updating MEMORY.md ### When to Update MEMORY.md Update MEMORY.md with: - User's explicitly stated long-term goals - Patterns across multiple weeks - User's feedback on agent's help - Changes in user priorities - Facts that affect how you should help user
View on GitHub
This SKILL.md is very large, so SkillsMP previews the first section here. View on GitHub