Imported from Chloemlla/opensquilla (
src/opensquilla/skills/bundled/meta-kid-project-planner/SKILL.md). Install upstream withnpx skills add Chloemlla/opensquilla --skill meta-kid-project-planner. Copyright stays with the author.
meta-kid-project-planner
Junior & guardian persona meta-skill. Turns a child's project idea —
"我要做火山", "I want to build a model rocket", "open a YouTube channel
about insects" — into a kid-friendly step plan PLUS a parent-friendly
oversight pack. The two audiences are concatenated in one markdown
deliverable with clear ## 👦 For You (the kid) / ## 👨👩👧 For the Grown-up sections — a markdown-level workaround for the proposed
audience: primitive (portfolio design §4.2).
Composition philosophy — multi-skill bundled orchestration
This meta-skill uses only OpenSquilla-bundled atomic skills plus the five built-in step kinds — no external dependencies. The DAG calls into 5 distinct bundled atomic skills:
| Skill | Step(s) | Role in the DAG |
|---|---|---|
multi-search-engine |
web_research |
Find existing how-to guides for the topic |
deep-research |
deep_research |
Extra round for SAFETY_REVIEW_REQUIRED or NEEDS_SHOPPING feasibility |
memory |
recall_past_projects, store_project |
Per-child memory: what they've already done; what they did this time. Avoids project repeats and builds a learning trajectory. |
weather |
weather_check |
When the topic is outdoor / garden / park, pull a 7-day forecast so outline_steps can recommend the best day |
pptx |
kid_deck |
When PARENT_SUPERVISION: HANDS_ON, produce a printable slide deck for the kid (visual step-by-step + safety callouts) |
Step kinds used: llm_chat, llm_classify, user_input, skill_exec,
agent.
Vocab card generation is a plain llm_chat step (vocab_cards)
grounded in outputs.outline_steps + outputs.material_list — the LLM
produces 6 age-appropriate cards directly. No external flashcard
skill is required.
Bilingual rendering for LANGUAGE: mixed is also prompt-side in the
relevant steps — no separate translation skill required.
Safety design
Three layers of guardrail:
preferencesstep rejects clearly inappropriate topics by settingPROJECT_SAFE: noin its contract. This is prompt-side; cannot be bypassed by clever phrasing because the model's response is constrained to the return format.feasibilityclassifier producesINAPPROPRIATEfor any topic that involves weapons, dangerous chemistry, fire-without-adult, self-harm-adjacent themes.INAPPROPRIATEshort-circuits the project pack and routes toredirect_unsafe.redirect_unsafeproduces a gentle, non-shaming redirect with 3 alternative project ideas that scratch the same itch safely.
The skill never silently degrades safety — if the topic is unsafe, the
deliverable IS the redirect, with PACK_DELIVERED: no_safety_redirect.
Honest limitations (first-wave)
audience:is markdown sections, not real two-principal output. When the proposed primitive ships, the kid section can go to a child-facing surface while the parent section goes to the guardian's channel, separately.- No persistence of past projects. Each invocation is independent
— without
state:, the skill cannot remember which projects the child has already done. - Vocab cards do not feed an FSRS deck. The
vocab_cardsstep emits a one-shot card list; integrating with a spaced-repetition state machine is reserved for a futuremeta-spaced-rep-coach. - Topic safety relies on prompt-side guardrails. A future dedicated safety-policy step kind would be more robust than prompt-side judgment under adversarial inputs.