From kids-camp-planner
Initializes kids-camp-planner workspace by creating research folder structure, seeding templates and examples, collecting family profile, and configuring API keys.
How this skill is triggered — by the user, by Claude, or both
Slash command
/kids-camp-planner:setupThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Initialize the kids-camp-planner workspace by creating the research folder structure, seeding it with templates and examples, collecting the family profile, and configuring API keys. This is typically the first step before any camp planning activity.
Initialize the kids-camp-planner workspace by creating the research folder structure, seeding it with templates and examples, collecting the family profile, and configuring API keys. This is typically the first step before any camp planning activity.
Locate 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.
Ask the user what they'd like to name their research directory using AskUserQuestion:
camp-research (recommended)camps, camp-planning, kids-camps)Store the chosen name — it will be written to .claude/kids-camp-planner.local.md as research_dir in Step 3.
Create the following directory structure in the user's current working directory, using the research directory name chosen in Step 0:
<research_dir>/
├── family-profile.md # Full family profile (seeded from plugin, filled in Step 2)
├── providers/ # Individual camp provider files
├── templates/
│ └── provider-template.md # Provider file template for reference
├── examples/
│ ├── ymca-cedar-glen.md # YMCA Cedar Glen example
│ └── boulderz-etobicoke.md # Boulderz Climbing example
├── drafts/ # Draft emails
├── school-calendars/ # Saved school calendar data for this family
├── summer-YYYY/ # Summer period planning
├── march-break-YYYY/ # March break planning
├── fall-break-YYYY/ # Fall break planning (private schools)
└── pa-days-YYYY-YYYY/ # PA day coverage
Seed files from plugin: Copy the following files from the plugin into the research directory so the user has templates and examples visible in their project:
| Source (plugin) | Destination (research dir) |
|---|---|
${CLAUDE_PLUGIN_ROOT}/examples/family-profile.md | <research_dir>/family-profile.md |
${CLAUDE_PLUGIN_ROOT}/skills/research-camps/references/provider-template.md | <research_dir>/templates/provider-template.md |
${CLAUDE_PLUGIN_ROOT}/skills/research-camps/examples/ymca-cedar-glen.md | <research_dir>/examples/ymca-cedar-glen.md |
${CLAUDE_PLUGIN_ROOT}/skills/research-camps/examples/boulderz-etobicoke.md | <research_dir>/examples/boulderz-etobicoke.md |
Read each source file with the Read tool and write it to the destination with the Write tool.
Notes:
fall-break-YYYY/ folder is only created if the school has a fall break (common in private schools, uncommon in Ontario public boards). If unsure, create it — it's harmless to have an empty folder.school-calendars/ folder stores the user's specific school calendar data. Before web searching, check if pre-saved data exists in the plugin's reference data at ${CLAUDE_PLUGIN_ROOT}/skills/camp-planning/references/school-calendars/. If found, copy the relevant data to the user's folder and confirm it matches the current year.pa-days-2025-2026).Guide the user through providing their family information using AskUserQuestion. Collect information in logical groups to avoid overwhelming the user:
Group 1 - Children:
Group 2 - School Information:
${CLAUDE_PLUGIN_ROOT}/skills/camp-planning/references/school-calendars/ for existing dataGroup 3 - Parents/Guardians:
Group 4 - Location & Commute:
Group 5 - Budget:
Group 6 - Vacation & Exclusion Dates:
Group 7 - School Year Dates (optional overrides):
Write the collected profile to <research_dir>/family-profile.md in YAML frontmatter format. Reference the seed template already copied in Step 1 for the expected format. Include a markdown body section titled "Family Notes" for any additional context the user provides.
Collect optional API keys:
Geoapify API key (optional):
Write the thin config file to .claude/kids-camp-planner.local.md with:
research_dir: The directory name chosen in Step 0apis.geoapify_api_key: The API key collected (or empty string if skipped)Reference the template at ${CLAUDE_PLUGIN_ROOT}/examples/kids-camp-planner.local.md for the expected format.
Present a summary of the setup to the user:
<research_dir>/family-profile.md — full family profile.claude/kids-camp-planner.local.md — thin config (research_dir pointer + API keys)<research_dir>/templates/ and <research_dir>/examples/Invite the user to review and edit the family profile directly at <research_dir>/family-profile.md if any corrections are needed. Mention that API keys can be updated in .claude/kids-camp-planner.local.md.
If a .claude/kids-camp-planner.local.md file already exists:
research_dir path<research_dir>/family-profile.md for existing family dataIf research_dir points to a directory that doesn't exist, treat it as a fresh setup starting from Step 1.
After generating the profile, verify:
.claude/kids-camp-planner.local.md has correct research_dir valuenpx claudepluginhub reggiechan74/cc-plugins --plugin kids-camp-plannerCreates sustainable multi-month travel plans with budgeting, visa mapping, anchor city selection, and remote work logistics.
Assists with event concept development, logistics planning, vendor coordination, budget management, and timeline creation for event planners.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.