course-builder
Skill2 starsChanged 28 days agoMITView on GitHub
Build a compact, self-paced course on any tech topic. It researches the web, then publishes one interactive HTML page with modules, short notes, verified docs, blogs and YouTube videos, a hands-on task, and a quiz after every module. Use when the user says "create a course on X", "make me a course on X", "build a course for X", "learning path for X", "teach me X as a course", or "create this course". Not for quizzing someone in chat or for tutoring over many sessions.
4 other projects use a version of this.
Adopted by
Most recently taken up by
- AppFreeticket/freeticket-mcptheir own version, first seen Nov 8, 2026
- vikneshwaran16032005-alt/claude-skillstheir own version, first seen Nov 1, 2026
- BryceYuuu/open-workflow-skillstheir own version, first seen Sep 5, 2026
- RandyRawgust/ai-knowledge-base-templatetheir own version, first seen May 22, 2026
Other versions4 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 4
- vikneshwaran16032005-alt/claude-skills★ 3same name
- BryceYuuu/open-workflow-skills★ 1same name
- RandyRawgust/ai-knowledge-base-template★ 1same name
- AppFreeticket/freeticket-mcp★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository13 other files it gives its agents.
- blind-pr-reviewSkill
- bug-huntSkill
- bug-reviewSkill
- context-firstSkill
- mock-interviewSkill
- product-manager-reviewerSkill
- progress-logSkill
- repo-bootstrapSkill
- skill-verifierSkill
- staff-engineer-reviewerSkill
- test-firstSkill
- token-auditSkill
- trip-itinerarySkill
The file
We split this skill into the rules it gives an agent
6 rules. 0 are common, 2 are distinctive, and 4 are very specific to this project.
0
Common
Most of the 4 edited versions we read keep these.
2
Distinctive
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 20
Frame each module around a question: Write an aim like "What happens to data when a broker dies?", not "Brokers".
- Very specific: line 32
Run searches in parallel batches.
- Distinctive: line 44
Write the modules one at a time and give each one equal care.
- Distinctive: line 48
Test application, not recall.
- Very specific: line 59
Run grep -n '{{' <file>. It must print nothing.
- Very specific: line 61
Check the JS once with node --check on the extracted script, if node is available.
“Common” is measured: kept by at least 6 in 10 of the 4 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Course Builder
Make a tight, high-signal course the user can actually finish. Research first, then publish one interactive HTML page. Every link must be real.
The user wants a finished course, not a conversation. Don't ask questions unless the topic name itself is ambiguous (for example, "Pulsar" could be Apache Pulsar or something else). If the request names a goal or level ("for interview prep", "I know Kafka already"), shape the course to it. Otherwise assume a working engineer who is new to the topic and wants to use it in production. State the assumption in the page header.
1. Scope
- 6–8 modules, ordered by dependency. Never use a concept before the module that teaches it. The usual arc is: why it exists → core concepts → architecture/internals → hands-on setup → developer APIs → advanced features → production/operations → how it compares to alternatives. Drop or merge stages that don't fit the topic.
- Frame each module around a question. Write an
aimlike "What happens to data when a broker dies?", not "Brokers". Add onewhyline on why a practitioner should care. - Per module:
- 4–6 bullets of notes, using the real terms of art in bold.
- At most one code snippet or diagram, only where it shows the mechanism.
- A 10–20 minute Try it task with a checkable outcome.
- 2–4 readings and 1–2 videos.
- 4 quiz questions.
- End with a capstone: one project of 3–5 concrete steps that exercises most modules.
- Brevity budget: notes stay around 150–250 words per module. If a module grows past that, move the depth into a reading link. A good course is about 8–10 hours of learning including the reading.
2. Research
Run searches in parallel batches. Use WebSearch in standard mode, and switch to extended when results are thin, such as for YouTube.
- Current state: find the latest stable version and release notes. Check the official docs' own install page for the current version tag. Don't trust aggregator sites for this.
- Official docs: concepts, architecture, getting started, and admin/ops pages. Link the stable docs path, not
/next/or a pinned old version. - Blogs: vendor engineering blogs, company engineering blogs and well-known practitioners, preferring posts from the last ~3 years. Each reading must add something the others don't. Don't include five posts that say the same thing.
- YouTube: query
youtube <topic> <subtopic>and use official channels, conference talks (ASF, the project's summit, vendor channels) and well-known educators. Copy the exactwatch?v=orplaylist?list=URL from the results. - Comparisons: "X vs Y" posts for the positioning module. Label vendor-written comparisons as such in the
sourcefield.
Never invent a link. A made-up citation is the worst mistake this skill can make. Only use URLs that came from search results or a page you fetched. If a module has no verified video, leave watch empty rather than guessing.
3. Write the modules
Write the modules one at a time and give each one equal care. The last modules tend to get thin when everything is written in one pass. Check the facts you state against the docs you're linking.
Quiz design (this matters most)
- Test application, not recall. Each question should be a small new scenario the notes didn't use, such as "Your consumers fall behind. Which metric shows it?". Avoid "What does X stand for?" and anything that can be answered by scrolling up and copying.
- Mix question types across the course: apply to a new case, explain the why, predict what happens if…, choose between options or trade-offs, and debug a symptom.
- Give four options, with exactly one clearly correct. Each wrong option should be a real misconception, not filler. Never use "all of the above".
- Spread the correct answer position across 0–3. In each quiz, no position should be correct more than twice.
- The explanation teaches. It says why the answer is right and what misconception the tempting wrong answer reflects. Keep the tone encouraging.
4. Build the page
- Copy
assets/course-template.html(next to this file) into the scratchpad dir as<topic-slug>-course.html. - Fill in the placeholders and the
MODULESarray. The field contract is documented in the template's comment. Replace the{{topic-slug}}storage key. - Make it look like the subject without rebuilding the page. Retune
--accent/--beamand swap the single ornament SVG for something that fits the subject. Keep the token structure, both dark-mode blocks and the render script. - Run
grep -n '{{' <file>. It must print nothing. - Verify every link:
python3 <skill-dir>/scripts/verify_links.py <file>. It checks YouTube links through oEmbed (and prints titles, so you can confirm each title matches the module) and checks every other URL by HTTP. Replace or drop everyFAIL. CheckWARN(403/429) links by hand or drop them. Re-run until it shows 0 broken. - Check the JS once with
node --checkon the extracted script, if node is available. - Publish with the Artifact tool (icon
book) and a one-sentence description. If there's no Artifact tool, save the HTML file and give its path.
5. Pre-publish checklist
- Modules are in dependency order, and each has an aim, a why, notes, a Try it task, readings and a quiz
- No wall of text: a visual break (a list, code, a callout or a link list) at least every 3 sentences
- Version facts match the current official docs, and the date is stated in the header
- Quiz answers are spread across positions, and every question is a scenario
verify_links.pyreports 0 broken, and the YouTube titles match their modules- No
{{placeholders left
6. Reply
Give the artifact link and a one-line-per-module outline. Mention anything you couldn't verify, such as a module with no video. Keep the reply short.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

