This skill should be used when the user asks to "create a camp budget", "generate budget spreadsheet", "calculate camp costs", "compare camp prices", "optimize camp spending", "track camp expenses", "how much will camps cost", "budget for summer camps", "camp cost breakdown", or needs help analyzing, comparing, or managing camp-related expenses across children and time periods. Provides budget calculation tools and cost optimization strategies for Ontario families.
Generates and optimizes camp budgets for Ontario families with cost calculations, tax deductions, and savings strategies.
/plugin marketplace add reggiechan74/cc-plugins/plugin install kids-camp-planner@cc-pluginsThis skill inherits all available tools. When active, it can use any tool Claude has access to.
scripts/budget_calculator.pyLocate research directory: Read .claude/kids-camp-planner.local.md to get the research_dir path (default: camp-research). All user data paths below are relative to this directory. The family profile is at <research_dir>/family-profile.md.
Calculate, compare, and optimize camp costs across children, time periods, and providers. Generate budget summaries as markdown tables (default) or Excel spreadsheets. Apply Ontario-specific cost-saving strategies including tax deductions, subsidies, and discount timing.
Read the family profile from <research_dir>/family-profile.md for budget constraints. Collect per-provider costs from <research_dir>/providers/*.md files if they exist. For each camp option, ensure the following cost components are captured:
| Component | Weekly Rate | Daily Rate |
|---|---|---|
| Base camp fee | $300/week | $60/day |
| Before-care (if needed) | $50/week | $10/day |
| After-care (if needed) | $50/week | $10/day |
| Lunch program (if not packing) | $35/week | $7/day |
| Materials/equipment fee | $25 one-time | $25 one-time |
| Registration fee | $50 one-time | $50 one-time |
| Sibling discount | -10% second child | -10% second child |
| Early-bird discount | -$25/week if registered by deadline | -$25/week equivalent |
| Multi-week discount | -5% for 4+ weeks | -5% for 20+ days |
Run the budget calculator script to compute totals:
Weekly rate mode:
python3 ${CLAUDE_PLUGIN_ROOT}/skills/budget-optimization/scripts/budget_calculator.py \
--kids 2 \
--weeks 8 \
--base-cost 300 \
--before-care 50 \
--after-care 50 \
--lunch 35 \
--sibling-discount 10 \
--format markdown
Daily rate mode:
python3 ${CLAUDE_PLUGIN_ROOT}/skills/budget-optimization/scripts/budget_calculator.py \
--kids 2 \
--days 40 \
--daily-rate 60 \
--before-care-daily 10 \
--after-care-daily 10 \
--lunch-daily 7 \
--sibling-discount 10 \
--format markdown
The script supports both weekly and daily rate calculations. Use --days and --daily-rate for day-level pricing (takes precedence over --weeks/--base-cost if both provided). Pass --format csv to generate CSV output or --format markdown for a markdown table.
For complex multi-provider budgets, prepare a JSON input file and pass it with --input budget-input.json. The JSON format supports both "weeks" and "days" arrays (days takes precedence). See the script's --help for the JSON schema.
Create the budget file at the appropriate location:
<research_dir>/summer-YYYY/budget.md<research_dir>/march-break-YYYY/budget.md<research_dir>/pa-days-YYYY-YYYY/budget.mdMarkdown budget format (default):
# Camp Budget - Summer 2025
## Summary
| | Child 1 | Child 2 | Total |
|---|---------|---------|-------|
| Camp fees | $2,350 | $2,200 | $4,550 |
| Before/after care | $800 | $800 | $1,600 |
| Lunch | $280 | $280 | $560 |
| Registration | $50 | $50 | $100 |
| **Subtotal** | **$3,480** | **$3,330** | **$6,810** |
| Sibling discount | - | -$240 | -$240 |
| Early bird discount | -$200 | -$200 | -$400 |
| **Total** | **$3,280** | **$2,890** | **$6,170** |
## Cost by Camp Provider
| Provider | Child 1 | Child 2 | Total |
|----------|---------|---------|-------|
| YMCA Cedar Glen | $1,800 | $1,800 | $3,600 |
| City of Toronto | $200 | $400 | $600 |
| Science Camp TO | $350 | $0 | $350 |
| **Total Camp Fees** | **$2,350** | **$2,200** | **$4,550** |
## Tax Recovery Estimate
- Child care deduction (Line 21400): ~$X estimated tax savings
- Ontario Child Care Tax Credit: ~$X estimated
## Weekly Breakdown
[Week-by-week table with provider, child, and cost per week]
## Budget vs. Target
- Budget limit: $7,000
- Projected spend: $6,170
- Over/under: $830 under budget
- Recommendations: [suggestions to reduce costs]
Excel format: See ${CLAUDE_PLUGIN_ROOT}/examples/sample-budget.xlsx for the reference Excel budget template. The spreadsheet has four tabs:
When generating Excel output, use openpyxl with formulas rather than hardcoded values. The Daily Schedule tab is the primary input surface — users only fill in the date, week number, and camp name per child per day.
When the budget exceeds constraints, suggest cost reductions in priority order:
Camp fees qualify as child care expenses on Line 21400:
scripts/budget_calculator.py - Calculate camp costs across multiple children, providers, and weeks/days with discount application and tax estimates. Supports both --base-cost/--weeks (weekly) and --daily-rate/--days (daily) modes.Expert guidance for Next.js Cache Components and Partial Prerendering (PPR). **PROACTIVE ACTIVATION**: Use this skill automatically when working in Next.js projects that have `cacheComponents: true` in their next.config.ts/next.config.js. When this config is detected, proactively apply Cache Components patterns and best practices to all React Server Component implementations. **DETECTION**: At the start of a session in a Next.js project, check for `cacheComponents: true` in next.config. If enabled, this skill's patterns should guide all component authoring, data fetching, and caching decisions. **USE CASES**: Implementing 'use cache' directive, configuring cache lifetimes with cacheLife(), tagging cached data with cacheTag(), invalidating caches with updateTag()/revalidateTag(), optimizing static vs dynamic content boundaries, debugging cache issues, and reviewing Cache Component implementations.
Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.
Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.