agentleFS
klausnersklausners/course-builder/skills/course/SKILL.md

course

Skill18 starsChanged 18 days agoMITView on GitHub

Build a research-driven study course on any topic, or add modules to an existing course file. Asks the scoping questions, runs the course-builder and innovation-scout agents, merges their output and optionally exports a PDF. Use when the user asks for a course, study plan, learning path or educational material, or wants to expand a course they already have.

  • Installs packages

3 other projects use a version of this.

Adopted by

Most recently taken up by

  • Other versions3 projects use a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 3

    1. CoderWanFeng/python-office★ 1.4ksame name
    2. delbaoliveira/learn-claude-code★ 182same name
    3. tuan3w/obsidian-vault-agent★ 39same 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 repositoryOne other file it gives its agents.

The file

We split this skill into the rules it gives an agent

5 rules. About 0 are common, 3 are distinctive, and 2 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈3

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use whichever form is available in this session.

    line 16
  2. Distinctive:

    Ask up to 4 questions in a single AskUserQuestion call.

    line 25
  3. Very specific:

    If the user asked for a faster or cheaper run, pass model: "sonnet" on the Agent call.

    line 59
  4. Distinctive:

    Add a line to the Research Metadata section: the number of innovation opportunities identified

    line 76
  5. Very specific:

    If the code command exists and the session runs on the user's own machine, open the file with code "[path]".

    line 95

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

You are the team lead for a course build. You run in the main conversation, so you are the one who talks to the user. The two agents do the heavy work and cannot ask the user anything, so everything they need must be in the brief you give them.

Request: $ARGUMENTS

Agent names

  • Installed as a plugin: course-builder:course-builder and course-builder:innovation-scout
  • Installed by copying the agent files: course-builder and innovation-scout

Use whichever form is available in this session.

1. Detect the mode

  • Incremental: the request points to an existing course file, or says "add", "expand", "complement" about a course. Read the file's module list and Framework Kit so your questions are specific.
  • Standard: everything else.

2. Clarify scope

Ask up to 4 questions in a single AskUserQuestion call. Skip any question the request already answers; if it answers all of them, ask none.

  1. Audience and starting level: who is this for, what do they already know?
  2. Success criteria: what should they be able to DO afterwards? What's the tangible output (framework kit, a project, a skill)?
  3. Scope: subtopics to include or exclude; survey vs. deep-dive.
  4. Research depth:
    • Quick: 8-12 sources, 6-8 lessons, narrow or time-sensitive topics
    • Standard (default): 15-25 sources, 8-12 lessons
    • Deep: 25-40 sources, 12-18 lessons, recursive sub-research per module, about 20-30+ minutes

Also settle, without asking unless it's genuinely unclear: the course language (the language of the request), any voice profile or style file the user referenced, and whether they want a PDF.

Choose the output path:

  • Incremental: the existing file
  • Standard: ~/Documents/course-[topic-slug]-for-[audience-slug].md if ~/Documents exists, otherwise the same filename in the current working directory

3. Run the course-builder

Launch the course-builder agent with this brief, and wait for it to finish:

BRIEF
- Mode: [standard | incremental]
- Topic: [...]
- Existing course file (incremental only): [absolute path]
- Audience and starting level: [...]
- Success criteria: [...]
- Scope (include / exclude): [...]
- Depth: [Quick | Standard | Deep]
- Course language and style: [...]
- User context files to read first: [paths, or "none"]
- Output file: [absolute path]

If the user asked for a faster or cheaper run, pass model: "sonnet" on the Agent call; the agent's default is Opus.

The agent ends with a ## HANDOFF block. If it reports assumptions about things the user should have decided, mention them in your final summary.

4. Run the innovation-scout

Skip this step in incremental mode unless the user asked for new opportunities.

Launch the innovation-scout agent with the full HANDOFF block as its prompt, plus one line: "Write the chapter in [course language]." Wait for it to return the chapter, its frameworks and its sources.

5. Integrate the chapter

Edit the course file (use the exact headings listed in the handoff):

  1. Insert the chapter after the last regular module and before the Framework Kit section
  2. Append the chapter's frameworks to the Framework Kit table, continuing the numbering, with the chapter as the "Lesson" reference and Medium confidence unless the scout cites 3+ sources
  3. Append the chapter's sources to the Source Table
  4. Add a line to the Research Metadata section: the number of innovation opportunities identified

Then sanity-check the file: every lesson has a Sources: line, the Framework Kit and Source tables exist, and there are no leftover placeholders in square brackets.

6. PDF export

Export when the user asked for a PDF, and by default for Deep courses. Try these in order and use the first that works:

# 1. Typst (fast, single binary)
pandoc "COURSE.md" -o "COURSE.pdf" --pdf-engine=typst --toc -V papersize=a4
# 2. WeasyPrint
pandoc "COURSE.md" -o "COURSE.pdf" --pdf-engine=weasyprint --toc --standalone --metadata title="COURSE TITLE"

If pandoc or both engines are missing, don't install anything yourself. Tell the user the install command (brew install pandoc typst on macOS; sudo apt install pandoc plus Typst from https://github.com/typst/typst/releases or cargo install typst-cli on Linux) and the export command to run afterwards. Do not use wkhtmltopdf: it is discontinued and no longer installs from Homebrew.

7. Deliver

If the code command exists and the session runs on the user's own machine, open the file with code "[path]". Otherwise just give the path.

Tell the user:

  • The file path (and the PDF path, if exported)
  • How many sources were consulted and how many were read in full
  • How many modules and lessons the course has
  • The narrative arc, one sentence per module
  • The number of frameworks in the kit, with the High/Medium breakdown
  • How many concepts were validated by quorum
  • How many innovation opportunities were identified (if the scout ran)
  • The research depth, whether recursive research ran, and whether YouTube was unavailable
  • Any assumptions the course-builder made that the user may want to revisit

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.