Skip to content
Agentmart
Submit a tool

lesson-generator

Generate and revise curricula, arc syllabi, and Jupyter notebook lessons at any zoom level.

Skill by Peleke

IndexedMIT★ 1
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/peleke-lesson-generator

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Generate and revise curricula, arc syllabi, and Jupyter notebook lessons at any zoom level. Triggers on "design a curriculum", "I want to learn", "create a course", "generate arc/module syllabus", "create lesson/notebook", "update/revise [artifact]", or when working with educational content. Handles the full pipeline from elicitation interview through course map, arc syllabi, and individual module notebooks — plus targeted revisions with cascade awareness.

Use cases: design, data, writing

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/lesson-generator

What's inside

Skill name
lesson-generator
Description
Generate and revise curricula, arc syllabi, and Jupyter notebook lessons at any zoom level. Triggers on "design a curriculum", "I want to learn", "create a course", "generate arc/module syllabus", "create lesson/notebook", "update/revise [artifact]", or when working with educational content. Handles the full pipeline from elicitation interview through course map, arc syllabi, and individual module notebooks — plus targeted revisions with cascade awareness.
License
MIT
Instructions
1,564 lines in SKILL.md · view on GitHub

Agent Skills spec issues

  • body: 1564 lines (spec recommends under 500)

Files (7)

  • README.md
  • SKILL.md
  • engagement-patterns.md
  • module-0.2-outline.md · examples/
  • module-0.3-outline.md · examples/
  • interactive-templates.md
  • video-index.md

SKILL.md (first lines)

# Lesson Generator

A recursive curriculum generation and revision system that operates at three zoom levels:

```
Course (elicitation → curriculum brief → arc map)
    ↓
Arc (theme + context → module breakdown → publication checkpoints)
    ↓
Module Lesson (spec → belt system → executable notebook)

+ Revision Mode (update any artifact with cascade awareness)
```

---

## Fractal Concept Loop (Core Structural Principle)

**Every concept, at every zoom level, runs the same four-stage loop: DO → NOTICE → CODE → NAME.**

This is not a narrative suggestion — it's a structural requirement. The loop applies recursively: courses are made of arcs, arcs of modules, modules of sections, sections of **concept primitives** — and every concept primitive gets the full cycle.

### The Loop

| Stage | What Happens | Modality |
|-------|-------------|----------|
| **DO** | Experience it. Hear it, see it, interact with it. No labels yet. See `scaffold-pass` for the **designed failure variant**. | All available senses |
| **NOTICE** | Guided observation. "What did you notice?" Pattern recognition prompts. | Reflective |
| **CODE** | Build/modify/express. Change parameters, break it, make something with it. | Tactile/code |
| **NAME** | Now formalize. Give it its proper name, connect to theory, define it. | Symbolic |

### Concept Primitives

A **concept primitive** is the smallest unit of understanding where confusion is possible. Not "what has a name" but "what could go wrong in someone's head."

**Decomposition heuristic**: Keep asking "could someone be confused about a piece of this?" until the answer is no. That's your base case.

**Examples:**
- "A whole step skips one key" — primitive (you could think it means skip two)
- "E→F has no black key between them" — primitive (you could assume all white keys are equally spaced)
- "The W-W-H-W-W-W-H pattern defines major" — NOT primitive. Decompose into: what W means, what H means, why that specific sequence, what happens if you change one
- "Multiplying by a weight makes something count more" — primitive
- "Weights should sum to 1" — primitive (you could think any weights work)
- "A weighted average" — compound, built from the two primitives above

### Decomposition in Outlines

Before planning the loop for a section, **decompose** it into confusion-primitives:

```
Section: Major Scales
  Decomposition:
    - "notes have distances between them" (foundational, may already be earned)
    - "some distances are bigger than others" (half vs whole)
    - "a specific distance pattern makes it sound 'major'" (the sequence)
    - "the same pattern starting on any note gives you a new major scale" (transposition)

  Each primitive → DO → NOTICE → CODE → NAME
  Each primitive → sensory projection (which modalities?)
  Primitives chain: each one builds on the previous
```

**Skip mechanism**: If a primitive is already earned from a prior module, reference it and move on. No redundant loops. Track earned primitives across modules the same way jargon-earning is tracked.

### Sensory Projection Matrix

Every concept primitive must be projected into **at least 2 available modalities**. Plan this explicitly in the outline:

| Modality | Music Implementation | Math/ML Implementation |
|----------|---------------------|----------------------|
| **Visual** | SVG diagrams, p5.js waveforms, circle/keyboard viz, animations | Plots, geometric diagrams, FuncAnimation, Plotly 3D |
| **Auditory** | Tone.js synthesis, TidalCycles patterns, Strudel embeds, audio playback | Data sonification, audio feedback on convergence, "sound of a distribution" |
| **Tactile/Code** | Live coding, keyboard interaction, sliders, parameter knobs | ipywidgets, parameter tuning, "build a toy" exercises, code cells |

**Per-primitive planning format:**

```
Primitive: "some distances are bigger than others"
  DO:    hear C→D then hear E→F (auditory). see gaps on keyboard SVG (visual)
  NOTICE: "one jump skips a key, the other doesn't. what's different?"
  CODE:  slider for step size in semitones, hear + see the result (tactile + auditory + visual)
  NAME:  "whole step = 2 semitones. half step = 1 semitone."
  Modalities: auditory ✓ visual ✓ tactile ✓
```

### Fractal Recursion Across Zoom Levels

The loop applies at every level of the curriculum:

| Level | Unit | Loop Application |
|-------|------|-----------------|
| **Course** | Arc | Each arc has a DO (taste demo), NOTICE (patterns), CODE (build), NAME (formalize) |
| **Arc** | Module | Each module motivates → implements → verifies → names |
| **Module** | Section | Each section opens with experience, ends with formalization |
| **Section** | Concept primitive | Each primitive gets the full DO → NOTICE → CODE → NAME cycle |

The section level is where the loop is **mandatory and explicit**. Higher levels emerge naturally from well-structured sections.

---

## Outline-First Workflow (Module Generation)

**Critical**: Don't generate notebooks directly from arc syllabi. The arc syllabus is too high-level. Instead, use an **outline-first workflow**:

```
Arc syllabus (high-level spec)
    ↓
Riff with user (war stories, scope, conceptual ordering)
    ↓
Detailed narrative outline (ready-to-generate artifact)
    ↓
User approves/tweaks outline
    ↓
Generate notebook from outline
```

### What Makes an Outline "Ready to Generate"

A ready outline has:

From Peleke/brunnr, MIT.

More from Peleke/brunnr

Signals

Stars
1
Forks
0
Open issues
14
Last commit (this folder)
Mar 14, 2026 (7 months ago)
Last release
Mar 12, 2026 (7 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from Peleke

Cite this page

lesson-generator skill. Agent Mart. https://agentmart.dev/skills/peleke-lesson-generator (last updated 2026-10-24)