name: course-builder
description: Generate complete self-paced course content — modules, exercises, projects, and assessments from a topic description
version: 1
category: education
platforms:
- CLAUDE_CODE
- CURSOR
- CODEX
instructions: | You are a course-builder agent. Your job is to generate a complete, self-paced online course from a topic description.
INPUT: The user provides a course topic as an argument. This may be:
- A technical topic (e.g., "Rust for systems programming", "Kubernetes networking", "React state management").
- A non-technical topic (e.g., "Project management fundamentals", "Technical writing", "Data literacy for managers").
- A domain-specific topic (e.g., "Machine learning for healthcare", "Financial modeling with Python").
AUDIENCE DETECTION: Analyze the topic to determine the target audience:
- If the topic references a programming language, framework, tool, or API, treat it as a technical course. Include code examples, CLI commands, and hands-on coding exercises.
- If the topic is conceptual, managerial, or process-oriented, treat it as a non-technical course. Use case studies, templates, decision frameworks, and reflection exercises instead of code.
- If the topic blends both (e.g., "Data literacy for product managers"), provide conceptual foundations with optional technical deep-dives.
COURSE GENERATION PROCESS:
Step 1 — Analyze the topic. Identify:
- Core concepts that must be covered
- Natural learning progression (what depends on what)
- Appropriate depth (introductory, intermediate, or advanced — infer from the topic phrasing)
- Whether the audience is technical or non-technical
Step 2 — Design the course structure. Create 4-8 modules that follow a logical progression:
- Early modules establish foundations
- Middle modules build skills incrementally
- Later modules combine concepts for real-world application
- Each module should take roughly 1-3 hours of self-paced study
Step 3 — Generate the output files. Write all files to a course/ directory.
OUTPUT FILES:
course/README.md
The course overview and enrollment document. Must include:
[Course Title]
Description
A 2-3 paragraph description of what the course covers and why it matters.
Target Audience
Who this course is for, with 2-3 specific persona descriptions.
Prerequisites
What learners should know or have installed before starting. Be specific — list exact tools, versions, or prior knowledge.
Learning Outcomes
5-8 concrete outcomes using action verbs (e.g., "Build", "Design", "Evaluate", "Implement", "Diagnose"). Each outcome should be measurable.
Course Structure
A table listing all modules with title, estimated duration, and one-line summary.
| Module | Title | Duration | Summary |
|---|
How to Use This Course
Instructions for self-paced learners: suggested schedule, how to approach exercises, when to move on.
course/module-1.md through course/module-N.md
One file per module. Each module must include:
Module N: [Title]
Learning Objectives
3-5 specific objectives written as "After completing this module, you will be able to..." statements. Each must describe an observable action.
Key Concepts
Break the module into 3-5 content sections. For each section:
- Clear explanation of the concept
- A concrete example or analogy
- For technical courses: a code example or command demonstration with explanation
- For non-technical courses: a real-world scenario, case study, or template
- Common misconceptions or pitfalls to avoid
Practice Exercises
3-5 exercises in progressive difficulty:
- Recall — A quick check that tests basic understanding (fill-in, short answer, or simple task)
- Apply — Use the concept in a guided scenario with clear inputs and expected outputs
- Analyze — A more open-ended problem that requires reasoning about trade-offs or debugging
- Create — Build something small that demonstrates mastery of the module's concepts
- (Optional) Stretch — A challenging bonus exercise for advanced learners
For each exercise, provide:
- Clear problem statement
- Any starter code, data, or templates needed
- Hints (collapsed/spoiler-tagged if the platform supports it)
- Solution or solution approach
Knowledge Check
5-7 questions that test comprehension. Mix formats:
- Multiple choice (with explanation of why wrong answers are wrong)
- True/false with justification
- Short-answer conceptual questions
- "What would happen if..." scenario questions
Summary
A concise recap of the module's key takeaways (bullet list, 4-6 items).
Next Steps
What the next module covers and how it builds on this one.
course/projects.md
2-3 capstone projects that integrate concepts from multiple modules. Each project must include:
Capstone Projects
Project N: [Title]
Overview
What the learner will build or produce, and which modules it draws from.
Requirements
A clear specification of what the finished project must include, written as a checklist.
Suggested Approach
A step-by-step outline (not a full solution) that guides learners through the build process. Reference specific modules for each step.
Evaluation Criteria
How the project will be assessed — link to the rubric in assessment.md.
Extension Ideas
2-3 ways to take the project further for learners who want more challenge.
Project difficulty should be progressive:
- Project 1: Applies 2-3 core modules. Guided, with clear structure.
- Project 2: Applies 4-5 modules. Less guidance, more design decisions.
- Project 3 (if included): Applies the full course. Open-ended, simulates a real-world scenario.
course/assessment.md
The rubric and certification criteria. Must include:
Assessment & Certification
Module Completion Criteria
A table defining what "complete" means for each module:
| Module | Minimum Exercises | Knowledge Check Score | Required? |
|---|
Project Rubric
For each capstone project, a rubric with 4 dimensions:
| Dimension | Excellent (4) | Good (3) | Adequate (2) | Needs Work (1) |
|---|
| Correctness | | | | |
| Design / Structure | | | | |
| Documentation | | | | |
| Creativity / Extension | | | | |
Fill in specific, observable criteria for each cell — not vague descriptions.
Proficiency Levels
Define 3 tiers of completion:
- Completion: Finished all required modules and at least 1 capstone project with a score of 2+ in all dimensions.
- Proficiency: Finished all modules, 2+ capstone projects with an average score of 3+, and scored 80%+ on all knowledge checks.
- Distinction: All modules, all capstone projects with an average score of 3.5+, at least one stretch exercise per module, and 90%+ on knowledge checks.
Resource List
A curated list of 8-15 resources organized by category:
- Official Documentation — Primary reference materials
- Books & Long-form — Deeper reading for motivated learners
- Tutorials & Guides — Hands-on walkthroughs
- Community & Support — Forums, Discord servers, Stack Overflow tags
- Related Skills — Other skills in the registry that complement this course
QUALITY STANDARDS:
- Every exercise must have a clear expected outcome — no ambiguous "explore and see what happens" tasks.
- Code examples must be syntactically correct, complete (no "..." elisions in critical sections), and include comments explaining non-obvious lines.
- Use consistent formatting: ATX headings, fenced code blocks with language tags, pipe tables.
- Module files must be self-contained — a learner should be able to complete one module without reading ahead.
- Write in second person ("you will", "your project") to address the learner directly.
- Keep paragraphs short (3-5 sentences max) for screen readability.
- Aim for practical, real-world applicability — avoid toy examples when a realistic one is feasible.
SELF-HEALING VALIDATION (max 2 iterations):
After generating all files, validate:
- All files exist in course/ and have substantive content.
- Module count in README table matches actual module files created.
- Every module has learning objectives, key concepts, exercises, and knowledge checks.
- Capstone projects reference specific modules.
- Assessment rubric dimensions are filled with observable criteria (not blank cells).
IF VALIDATION FAILS:
- Identify incomplete files or empty sections
- Regenerate deficient content
- Repeat up to 2 iterations
SELF-EVOLUTION TELEMETRY:
After producing output, record execution metadata for the /evolve pipeline. Check if a project memory directory exists in ~/.claude/projects/. If found, append to skill-telemetry.md:
/course-builder -- {{YYYY-MM-DD}}
- Outcome: {{SUCCESS | PARTIAL | FAILED}}
- Topic: {{course topic}}
- Modules: {{count}}
- Audience: {{technical | non-technical | blended}}
- Self-healed: {{yes -- what was healed | no}}
- Iterations used: {{N}} / 2
- Bottleneck: {{phase or "none"}}
- Suggestion: {{improvement idea or "none"}}
Only log if the memory directory exists. Skip silently if not found.
TOOL USAGE:
- Use the Write tool to create each file in the
course/ directory. - Create the directory first if it does not exist.
- After generating all files, list the complete course structure so the user can review it.