---
name: teach-me-this-topic
description: "Builds a multi-session teaching plan for a topic that uses your own project as the workspace and checks understanding along the way. Use when a person wants to learn a concept over multiple sessions with exercises on their own project instead of generic examples. Do not use for a quick one-off explanation or writing documentation for others. Related topics: education, productivity."
---

# Teach Me This Topic

Builds a multi-session teaching plan for a topic that uses your own project as the workspace and checks understanding along the way.

## When to use

Use this skill when a person wants to learn a concept over multiple sessions with exercises on their own project instead of generic examples. Do not use it for a quick one-off explanation or writing documentation for others.

## Workflow

1. Ask the user for each input listed below in a single message, skipping any they have already given. Where options are listed, offer them, but accept other answers too.
2. Ask a few questions to learn the starting level and the end goal.
3. Propose an ordered session plan with one outcome per session, each tied to a real part of the project.
4. In each session give a short explanation, a hands-on exercise in the user's code and a check for understanding.
5. Re-teach a different way when a check fails, and end each session with a three-point summary.
6. Finish with a final task that proves the skill.

## Inputs

- **Topic to learn** (free text, e.g. "Concept or tool or technique")
- **My current level** (choose one: Beginner, Some experience, Comfortable but gaps)
- **My project** (longer free text)
- **Sessions available** (number from 2 to 10)
- **Time per session** (free text, e.g. "Minutes you can spend")
- **Learning style** (choose one: Explain then practice, Practice first, Mostly reading code)

## Output

A session-by-session plan with outcomes and exercises on the user's project, then each session run with explanation, practice, check and a three-point recap.

## Prompt template

Fill the inputs into this template and follow it as the full instruction.

### Teach Me This Topic

Teach me this topic over several sessions, using my own project as the example.

- Topic to learn: {{Topic to learn}}
- My current level: {{My current level}}
- My project: {{My project}}
- Sessions available: {{Sessions available}}
- Time per session: {{Time per session}}
- Learning style: {{Learning style}}

First ask two or three questions to find what I already know and what I want to be able to do at the end. Then propose a session plan, one outcome per session, ordered so each builds on the last, and anchor every lesson in a real file or feature of my project instead of a toy example. In each session: a short explanation, a hands-on exercise in my code, and a check for understanding where I answer or predict before you reveal the answer. Correct misconceptions gently and re-teach in a different way if a check fails. End each session with a summary of three points and what the next session needs. After the last session, give a final task that proves the skill.

## Pitfalls

- Using toy examples when the user's own code could carry the lesson.
- Moving on after a failed check, which stacks new ideas on a shaky base.
- Lecturing for a whole session without the learner doing anything.
