In the arms race to build AI assistants that write entire applications from a single prompt, Deven Jarvis built something almost perversely contrarian: a tool that forces you to type every line of code yourself.
Lathe—an open-source command-line utility that launched on Hacker News on June 7—doesn't autocomplete your functions or generate boilerplate. Instead, it produces step-by-step programming tutorials tailored to whatever you're trying to learn, then stands back and watches you work through them manually. Think of it as the stern piano teacher who won't let you move on until you've practiced the scales, except the teacher is a large language model and the scales are Docker configurations or React hooks.
The project drew between 336 and 357 upvotes within 24 hours of its Show HN debut, a respectable showing for a developer tool in a market glutted with AI coding assistants. What made it stick wasn't just novelty. Jarvis, an Atlanta-based engineer, had tapped into a quiet anxiety rippling through programming communities: that the very tools designed to make developers more productive might be making them less capable.
"An experiment in using LLMs to teach you, rather than think for you," reads the project description—a mission statement that doubles as a critique.
The Mechanic Under the Hood
Lathe is written in Go and operates through what Jarvis calls a "handoff model." You work inside your usual coding environment—Claude Code, Cursor, or OpenAI's Codex—and invoke the tool through slash commands. Type /lathe "deploy a containerized app to AWS" and the LLM generates a multi-part tutorial. The content appears in a local web interface running at localhost:4242, complete with a table of contents and progress tracking.
Here's where it gets particular: every tutorial lives as Markdown files in ~/.lathe/tutorials/, accompanied by a metadata.json file that logs which URLs the model consulted, which version of which LLM generated the content, and whether the steps have been verified. The Go binary handles all the persistent state. The LLM stays confined to your interactive session, producing content but never running headless tasks on its own.
This architectural split isn't accidental. Jarvis wanted the human—you, the developer trying to learn something—to remain the one making decisions. The tool doesn't automate tutorial creation so much as structure a conversation that happens to yield instructional materials.
Follow-up commands extend the approach. Need more detail on step three? /lathe-extend. Have a question about why a particular flag matters? /lathe-ask. Want to confirm the tutorial actually works before you commit the steps to muscle memory? /lathe-verify spins up a scratch directory and runs through each instruction, flagging successes, failures, and anything it couldn't test.
The Provenance Problem

That verification feature gets at something Jarvis seems particularly bothered by: the "AI slop" problem. Generic tutorials that sound authoritative but contain outdated commands, deprecated flags, or steps that would fail on a fresh install. The web is already littered with this stuff, much of it pre-dating large language models.
Every Lathe tutorial displays a panel showing how many sources the LLM referenced and lists them by URL. It's a small gesture toward accountability in an ecosystem where it's increasingly hard to tell whether content came from someone who's actually run the code or from a model trained on StackOverflow threads from 2019.
One Hacker News commenter—a self-identified technical educator—raised the obvious concern: LLMs are prone to hallucination and poor pedagogical sequencing. Jarvis's response was pragmatic, if not entirely satisfying. Source-first prompt design, step-by-step generation that you can extend piecemeal, and "write a program and find out" verification. Mitigations, not solutions. The pedagogy debate sprawled across multiple comment threads without resolution, which felt about right for a tool this early in its life.
Crowded Field, Different Angle
Lathe arrived in a moment thick with AI-powered learning tools. Google had recently updated NotebookLM with reasoning upgrades. OpenAI's ChatGPT Study Mode launched some months prior. Khan Academy has been refining Khanmigo for a while now, pitching it as an AI tutor for students across subjects.
But those are cloud platforms aimed at general education. Lathe is narrower—local-first, developer-focused, built for people who already know how to code but need to learn a new framework, tool, or deployment pattern. The verification and provenance features feel native to that context in a way that general-purpose tutoring tools don't quite manage.
Within two days of launch, the project had accumulated 1.1k GitHub stars and 23 forks—modest numbers in absolute terms, but enough to suggest Jarvis had struck a nerve. Multiple AI news aggregators picked it up almost immediately.
Installation and the Rough Edges

Getting Lathe running is straightforward if you're on macOS (brew install devenjarvis/tap/lathe) or Linux (a curl script). Go users can pull it directly. After installation, lathe skills install writes the necessary prompt templates for your editor.
Windows isn't supported. The README includes a telling bit of honesty: the tool is "vibecoded" and tested primarily on macOS with Claude Code. Other setups "should work," but Jarvis hasn't verified them himself as of the initial release.
He acknowledged as much in the Hacker News thread, along with a note that he'd consider adding a comparison section about NotebookLM to the README. There's something refreshing about software that admits its limitations upfront, even if those limitations are just "I haven't tested this configuration because I don't use it."
Version 0.4.0, whenever it arrives, will focus on broader model support—specifically Ollama and Gemini. Right now, the skills are tailored to Anthropic's Claude, OpenAI's Codex, and Cursor's implementation. That's a narrow compatibility window, though wide enough to cover the editors most developers using AI assistants have already adopted.
A Personal Experiment

There's no company behind Lathe. No disclosed funding, no pricing model, no entity at all beyond the MIT-licensed repository. Jarvis describes himself in his bio as "software engineer, turned product manager, turned engineer again"—a trajectory that perhaps explains the tool's design philosophy. Product managers think about workflows. Engineers who've been product managers think about whether those workflows are teaching people anything.
The project feels like someone working through a question out loud: should AI tools write code for developers, or should they teach developers to write code better? It's a distinction that matters less when you're shipping features on a deadline and matters quite a bit when you're trying to actually understand the systems you're building.
Early traction suggests the question resonates, at least within certain developer circles. Whether Lathe becomes a staple of the programming toolkit or remains a niche experiment for people suspicious of autocomplete probably depends on where the industry decides it wants to land on that spectrum.
For now, it's a tool that makes you do the work yourself. In 2026, that might be the most contrarian feature of all.
