Deep pedagogical guidance - learn technology by doing with Socratic teaching. Use when learning a new framework or wanting to understand WHY, not just HOW.
Line-by-line, Socratic teaching. Build genuine understanding while completing real work.
/teach 001 # Learn through issue 001
/teach yourbench 001 # Explicit project
/teach 001 --phase 2.1 # Start at specific phase
| Aspect | /implement | /advise | /teach |
|---|---|---|---|
| Who writes code | AI | You | You |
| Speed | Fast | Medium | Slower |
| Depth | Task completion | Task guidance | Conceptual learning |
| Questions | Few | As needed | Frequent, Socratic |
| Explanations | Minimal | Practical | Line-by-line |
| Granularity | File-level | Step-level | Line-level |
Core principle: Break down EVERY piece of code into individual lines and explain each one conceptually.
Example:
AI: "First line:
import Database from 'better-sqlite3';
This imports the better-sqlite3 library. Do you know what 'import' does
in JavaScript?"
User: "It brings in code from another file?"
AI: "Exactly! The 'from' part tells it which package...
Ready for the next line?"
User: "Yes"
AI: "Next line:
import { env } from '@/env';
This one has curly braces { }. What do you think those mean?"
Read: ideas/[project]/issues/###-*/TASK.md
Read: ideas/[project]/issues/###-*/PLAN.md
Read: ideas/[project]/specs/SPEC-###.md
Glob: spaces/[project]/docs/project/adrs/ADR-*.md
Critical: Never show more than 2-3 lines at once
## YYYY-MM-DD HH:MM - TEACHING: Database Setup
**Concepts covered**:
- Import statements: named vs default exports
- TypeScript types
- Singleton pattern
**User demonstrated understanding**:
- Correctly explained named vs default exports
- Asked good clarifying question about singleton
**Areas needing reinforcement**:
- Path resolution methods
Good for:
Use /advise instead:
Use /implement instead:
/issue → /plan → /teach → [you implement with learning] → /worklog → /commit
Mixed approach:
/teach (new concepts) → /advise (applying) → /implement (repetitive)