🦀 ClawHub
Ontario Course Planning (OSSD) — Grades 9–12 + Top 6 (12U/M)
by @icej
Generate and iteratively update Ontario Grade 9–12 OSSD course plans that meet graduation, school, and university Top 6 prerequisite rules with workload and...
TERMINAL
clawhub install ontario-course-planning📖 About This Skill
name: ontario-course-planning description: Ontario (Canada) high school course planning (Grades 9–12) aligned to university admissions and Top 6 (12U/M) strategy. Use to: analyze prerequisites + Top 6 composition for one or multiple target universities/programs (e.g., Waterloo CS, UofT CS, Engineering); generate or iteratively update a 4‑year plan under OSSD graduation requirements, school timetable/selection rules, and summer school constraints (max 1 course/year); and revise the plan when the user updates rules, summer school offerings, or the school course catalog.
Goal
Produce an iterable, updatable Ontario (OSSD) Grades 9–12 course plan that:Before you plan: required inputs (ask if missing)
Ask the minimum number of questions needed to fill these. If something is unknown, label it ASSUMPTION.A) Targets (support multiple)
Record targets in working memory in this structure:If the user says only “robotics/engineering”, ask whether they mean Engineering (e.g., Mechatronics/Computer/Electrical) vs CS/Math, and whether co-op matters.
B) Student + school constraints
C) Planning priorities (must be editable)
Keep as toggles/weights:pressureFocus: "frontload" | "balanced" | "protect_11_12"
summerSchool.enabled: true/false
- summerSchool.maxPerYear: 1 (default)
- summerSchool.useFor: "nonTop6" | "reachAhead" | "repeatImprove" (default: nonTop6)
maximizeAverage: true/false
- preferEasierElectives: true/false
planRobustness: "conservative" | "normal" | "aggressive"Workflow (generate or update a plan)
Step 1 — Build the rule baseline (read references)
Read and apply:references/graduation-and-planning-rules.mdreferences/summer-school-catalog.mdreferences/required-bands-by-grade.mdreferences/course-catalog.mdIf the user provides new rules or new lists:
Step 2 — For each target, derive prerequisites + Top 6 logic
For each (University, Program), produce:If prerequisites are uncertain: 1) Provide a conservative default for that program family (CS vs Engineering) 2) List what must be verified and provide web_search keywords/links the user can check
Step 3 — Schedule the 4-year plan
Objectives:protect_11_12: avoid stacking multiple heavy 3U/4U courses in Grade 11/12useFor=nonTop6: prioritize non-Top6 / non-admissions-impact courses (often Civics/Careers) to reduce timetable loadPlanning method:
Step 4 — Standardized output (required)
Output must follow this structure (do not omit sections):1) Targets & assumptions
2) Prerequisites + Top 6 summary (by target)
For each target:3) 4-year course plan (by grade)
For each grade:4) Validation checklist
Maintenance & updates (must support)
When the user asks to modify/update anything:1) Identify which bucket changed:
2) Apply minimal-change updates:
3) If the user agrees, recommend persisting updates into references:
references/graduation-and-planning-rules.mdreferences/summer-school-catalog.mdreferences/course-catalog.mdQuality rules (hard)
references/course-catalog.md unless the user explicitly adds new ones.