Lathe: LLM-generated hands-on technical tutorials you build yourself

2 min read
llm-tutorialsdeveloper-toolshands-on-learningai-educationgolangclaude-codeself-hosting
View as Markdown
Originally from github.com
View source

My notes

Summary

Lathe is a Go CLI + LLM skill system that generates multi-part hands-on technical tutorials on demand, then presents them in a local reading UI for manual work-through. The key design inversion: the LLM teaches, the human does the work, rather than the LLM doing the work while the human watches. Particularly useful for obscure or emerging domains where human-written tutorials do not yet exist.

Key Insight

  • Core philosophy inversion: most LLM coding tools replace the human’s work; Lathe uses the LLM only to scaffold the learning path, leaving all hands-on execution to the reader. This preserves the “aha moment” that leads to durable skill acquisition.
  • Best fit use case: niche or very new domains lacking human-written tutorials (e.g. 3D slicer internals, embedded Zig development). For well-documented topics, human-written tutorials remain superior.
  • Hallucination risk is lower than typical LLM use because the reader types and runs every step manually, so they naturally catch inconsistencies rather than blindly executing generated code.
  • Voices system: tutorials are written in a named “voice” (default plainspoken, optional companion, or custom). Custom voices are authored via an interview skill. Every tutorial’s byline discloses the exact LLM model + voice used, with no pretend-human framing.
  • Verification is opt-in and interactive: /lathe-verify runs through every step in a temp scratch dir under the user’s normal Claude Code session, so tool calls are visible and approved. Status cycles through unverified, verifying, verified/failed/skipped.
  • Source trail is durable: URLs consulted during generation are stored in metadata.json and surfaced in the UI, not just inline citations, so provenance can be sanity-checked independently.
  • Runs locally, no cloud dependency: tutorials live in ~/.lathe/tutorials/, served at localhost:4242. The Go binary never calls an LLM itself; all LLM interaction happens in the user’s interactive Claude Code / Cursor / Codex session.
  • Skills install into standard locations: lathe skills install drops SKILL.md files into .claude/skills/, .cursor/commands/, or .agents/skills/, compatible with the standard Claude Code skill discovery pattern.
  • Author is explicit about limitations: LLM tutorials lack heart, personality, and architectural soundness vs. human-written ones. Recommended: use the largest “thinking” model available (Opus, GPT-5 Codex) since tutorial generation is research-and-design-heavy, not iterative mechanical coding.