Voice-Narrated Lessons
Teach

Interactive voice-narrated tutorial on whatever the current conversation is about — teaches the topic beat by beat with ASCII diagrams in the terminal while speaking the actual lesson content aloud, asking one question per beat and…
---
name: Teach
version: 1.1.0
description: Interactive voice-narrated tutorial on whatever the current conversation is about — teaches the topic beat by beat with ASCII diagrams in the terminal while speaking the actual lesson content aloud, asking one question per beat and quizzing until the ideas land. USE WHEN teach me, /teach-me, tutorial, teach me this, walk me through this interactively, explain this like a lesson, learn mode, quiz me, help me actually understand what we just did. NOT FOR plain written explanations with no dialogue (just answer directly), authored/published content, or discovery interviews that shape a half-formed idea (use grill-me).
---
# Teach
Turns the current conversation topic into a live, spoken, Socratic tutorial. Each teaching beat is narrated aloud through the voice system, drawn as ASCII in the terminal, and ends with one question to the learner. The session is a dialogue: answer, response, next beat, quiz, recap.
## Voice Notification
**When executing a workflow, do BOTH:**
1. **Send voice notification**:
```bash
curl -s -X POST http://localhost:31337/notify \
-H "Content-Type: application/json" \Overview
Turns the current conversation topic into a live, spoken, Socratic tutorial. Each teaching beat is narrated aloud through the voice system, drawn as ASCII in the terminal, and ends with one question to the learner. The session is a dialogue: answer, response, next beat, quiz, recap.
Manual install (npx, ZIP)
npx skills add danielmiessler/LifeOS --skill Teach -g -a claude-codenpx degit danielmiessler/LifeOS/LifeOS/install/skills/Teach#main ~/.claude/skills/teachConnects with Agent Alley MCP · agentalley.io/mcp
Files included
SKILL.md3.5 KB
Read SKILL.md here
Show the full text66 lines
Teach
Turns the current conversation topic into a live, spoken, Socratic tutorial. Each teaching beat is narrated aloud through the voice system, drawn as ASCII in the terminal, and ends with one question to the learner. The session is a dialogue: answer, response, next beat, quiz, recap.
Voice Notification
When executing a workflow, do BOTH:
Send voice notification:
curl -s -X POST http://localhost:31337/notify \ -H "Content-Type: application/json" \ -d '{"message": "Starting a tutorial on TOPIC"}' \ > /dev/null 2>&1 &Output text notification:
Running the **Teach** workflow in the **Teach** skill to tutor TOPIC...
Workflow Routing
| Workflow | Trigger | File |
|---|---|---|
| Teach | "teach me", "/teach-me", "tutorial", "quiz me" | Workflows/Teach.md |
Gotchas
- The completion hook already speaks the
🗣️closer line. Never repeat the beat's narration in the closer or the learner hears it twice. The intended shape: the narration curl speaks the teaching, the closer carries the question — two distinct voice moments per turn. - Spoken text goes to TTS raw. No markdown, no ASCII art, no code, no symbols in the curl
message— they get read aloud literally. Write narration as plain spoken English and spell out anything a voice would say differently ("H T T P" reads better than "HTTP" for some engines; when unsure, rephrase). - One narration curl per turn, ≲350 characters. Multiple rapid POSTs queue and overlap into noise, and long messages become a synthesized wall. If a beat needs more speech than that, the beat is too big — split it.
- A beat ends at its question. Stop the turn there. Answering your own question and continuing turns the tutorial back into a lecture — the failure mode this skill exists to prevent.
- Voice endpoint down (non-200 or connection refused): keep teaching, silently text-only. Note it once at session start; do not retry every beat.
Examples
Example 1: Teach the thing we just built
User: "teach me" (after a session debugging DNS records)
→ Invokes Teach workflow
→ Names the topic, speaks a spoken intro, draws a concept map of 3-5 ideas
→ Beat 1: speaks how DNS resolution flows, draws the resolver chain in ASCII, asks "which server actually holds the answer?"
→ User answers; skill responds to the answer, corrects or confirms, moves to beat 2
→ Ends with a 2-3 question quiz and a recap diagram
Example 2: Explicit topic override
User: "/teach-me OAuth refresh tokens"
→ Teaches the named topic instead of the conversation default
→ Same beat/question/quiz loop
Example 3: Quiz-only
User: "quiz me on what we just covered"
→ Skips the lesson beats, runs the quiz protocol directly on the session's material
| 1 | |
| 2 | name Teach |
| 3 | version 1.1.0 |
| 4 | description Interactive voice-narrated tutorial on whatever the current conversation is about — teaches the topic beat by beat with ASCII diagrams in the terminal while speaking the actual lesson content aloud, asking one question per beat and quizzing until the ideas land. USE WHEN teach me, /teach-me, tutorial, teach me this, walk me through this interactively, explain this like a lesson, learn mode, quiz me, help me actually understand what we just did. NOT FOR plain written explanations with no dialogue (just answer directly), authored/published content, or discovery interviews that shape a half-formed idea (use grill-me). |
| 5 | |
| 6 | |
| 7 | # Teach |
| 8 | |
| 9 | Turns the current conversation topic into a live, spoken, Socratic tutorial. Each teaching beat is narrated aloud through the voice system, drawn as ASCII in the terminal, and ends with one question to the learner. The session is a dialogue: answer, response, next beat, quiz, recap. |
| 10 | |
| 11 | ## Voice Notification |
| 12 | |
| 13 | **When executing a workflow, do BOTH:** |
| 14 | |
| 15 | **Send voice notification**: |
| 16 | |
| 17 | curl -s -X POST http://localhost:31337/notify \ |
| 18 | -H "Content-Type: application/json" \ |
| 19 | -d '{"message": "Starting a tutorial on TOPIC"}' \ |
| 20 | > /dev/null 2>&1 & |
| 21 | |
| 22 | |
| 23 | **Output text notification**: |
| 24 | |
| 25 | Running the **Teach** workflow in the **Teach** skill to tutor TOPIC... |
| 26 | |
| 27 | |
| 28 | ## Workflow Routing |
| 29 | |
| 30 | | Workflow | Trigger | File | |
| 31 | |----------|---------|------| |
| 32 | | **Teach** | "teach me", "/teach-me", "tutorial", "quiz me" | `Workflows/Teach.md` | |
| 33 | |
| 34 | ## Gotchas |
| 35 | |
| 36 | **The completion hook already speaks the `🗣️` closer line.** Never repeat the beat's narration in the closer or the learner hears it twice. The intended shape: the narration curl speaks the teaching, the closer carries the question — two distinct voice moments per turn. |
| 37 | **Spoken text goes to TTS raw.** No markdown, no ASCII art, no code, no symbols in the curl `message` — they get read aloud literally. Write narration as plain spoken English and spell out anything a voice would say differently ("H T T P" reads better than "HTTP" for some engines; when unsure, rephrase). |
| 38 | **One narration curl per turn, ≲350 characters.** Multiple rapid POSTs queue and overlap into noise, and long messages become a synthesized wall. If a beat needs more speech than that, the beat is too big — split it. |
| 39 | **A beat ends at its question. Stop the turn there.** Answering your own question and continuing turns the tutorial back into a lecture — the failure mode this skill exists to prevent. |
| 40 | **Voice endpoint down (non-200 or connection refused): keep teaching, silently text-only.** Note it once at session start; do not retry every beat. |
| 41 | |
| 42 | ## Examples |
| 43 | |
| 44 | **Example 1: Teach the thing we just built** |
| 45 | |
| 46 | User: "teach me" (after a session debugging DNS records) |
| 47 | → Invokes Teach workflow |
| 48 | → Names the topic, speaks a spoken intro, draws a concept map of 3-5 ideas |
| 49 | → Beat 1: speaks how DNS resolution flows, draws the resolver chain in ASCII, asks "which server actually holds the answer?" |
| 50 | → User answers; skill responds to the answer, corrects or confirms, moves to beat 2 |
| 51 | → Ends with a 2-3 question quiz and a recap diagram |
| 52 | |
| 53 | |
| 54 | **Example 2: Explicit topic override** |
| 55 | |
| 56 | User: "/teach-me OAuth refresh tokens" |
| 57 | → Teaches the named topic instead of the conversation default |
| 58 | → Same beat/question/quiz loop |
| 59 | |
| 60 | |
| 61 | **Example 3: Quiz-only** |
| 62 | |
| 63 | User: "quiz me on what we just covered" |
| 64 | → Skips the lesson beats, runs the quiz protocol directly on the session's material |
| 65 | |
| 66 |
Details
- Version
- 1.1.0
- License
- MIT
- Stars on the repo
- ★ 19,269
- Checked
- Source
- danielmiessler/LifeOS ↗
- Creator
- danielmiessler · 63 listings
Similar skills
See all →
SkillCross-Platform Reverse Engineer
SkillBrainstorm Ideas
SkillCode Review Feedback Analyzer
SkillBug Diagnosis Framework
SkillImplement Spec
SkillPR Description WriterMore from danielmiessler
SkillScope Oscillation Analyzer
SkillAphorism Library Manager
SkillSocial Platform Scraper
SkillVisual Content Generator
SkillArXiv Paper Finder
SkillFiller Removal Audio Editor