Discover MCPs & agents
Loading MCPs and agents…
Loading MCPs and agents…
A Claude Code skill where learning is the goal and building is the test — AI writes the code, you build the mental model.
From the repo.
English | 简体中文
A Claude Code skill for people who want to actually understand the thing they're building — not just end up holding code they can't explain.
This file is for humans.
SKILL.mdandreferences/are the rulebook Claude follows; you never need to read them.
You want to build something, and you want to genuinely learn the tech behind it. This skill handles that.
It exists to prevent one specific failure: the AI one-shots the whole thing, the app runs, and you learned nothing. So the rule here is inverted — learning is the goal, and the thing you build is the evidence that you learned it.
Claude writes all the code. You don't need to know how to program.
Requires Claude Code.
git clone <this repo> ~/.claude/skills/build-to-learn
~/.claude/skills/ makes it available everywhere. To scope it to one project, drop it in that project's .claude/skills/ instead.
On first launch Claude asks one question — where should your learning notes go? Default is ~/Documents/Build To Learn. Answer once, it creates the folder, writes config.md, and never asks again.
Any folder works. If you use Obsidian, point it inside your vault — the Mermaid diagrams and collapsible self-quizzes render natively. If you don't, no problem: they're plain Markdown files.
Want to move it later? Edit the one line in config.md, or just tell Claude. That file is gitignored, so pulling updates won't clobber your path.
Type /build-to-learn, or just say "walk me through building X — I want to actually learn it."
On your very first run you have no projects yet, so Claude offers two options: start a new project, or read this tutorial first.
Every launch after that, it lists your existing projects and where each one is stuck, and asks which to continue. Continuing never re-runs setup — it reads a "learning map" file and picks up exactly where you stopped. New machine, new conversation, a month later: it still picks up.
You do the three things AI can't do for you:
1. Make the calls. Directional choices get put in front of you, and Claude won't move until you pick. Things like "native window or web view?" Implementation details like "which function should we use" never reach you.
2. Run it yourself. Running commands, clicking buttons, watching what happens — those are always yours. Claude sets the stage, points at the exact spot, then stops and waits.
Claude stopping isn't Claude stalling — it's waiting for your hands. This is the single most common misunderstanding. You report what you saw, and then it explains why.
3. Answer the exit question. At the end of every stage Claude asks you one question — exactly one — to check whether this stage actually landed.
And one thing that overrides everything: any "wait, why?" that pops into your head is the highest-value moment in the session. Ask it. Claude drops the main line, digs into it with you, and brings you back.
Four phases. Setup runs once; build and clear loop once per stage; notes happen automatically throughout.
Claude works through these, without touching technical vocabulary:
About the ladder: one line per stage. Stage 1 is a minimal version that actually runs; each later stage adds one block and still runs.
The next stage is written in detail, the one after gets a single line, and anything further says "TBD, we'll cut it when we get there." Distance is deliberately vague — it will change once you're actually building. The ladder is a set of signposts, not a contract.
A stage opens with a diagram. What components this stage consists of, how data flows between them (7 components max). Two things are marked on it: which parts already existed versus which are new this stage, and which are load-bearing versus boilerplate.
That diagram is the learning object. Every round after, Claude points at it first — "we're on the X→Y edge now" — so you always know where you are. The diagram also carries the decisions you'll need to make this stage, but only as open questions, no answers. You make each call when construction reaches that component.
Then it walks the diagram, one edge per round. Every load-bearing component follows the same rhythm:
Some experiments are designed to fail. Hitting a wall with your own hands beats ten explanations. You bring the symptom back, and Claude explains the causal chain on the spot.
Claude does not quiz you during construction. It explains, you run, it explains. Testing is concentrated at the end of the stage so it doesn't break your flow.
One small step per turn, then it stops. Too slow? Say so. Too fast? Say stop.
Right before the stage runs end-to-end for the first time, Claude says "take a guess at what this is about to do." You don't have to answer — either way it hands off immediately and you run it. Afterwards it walks the real behavior back against what you expected.
Once it runs, the test:
Then Claude hands you a map of your own understanding: what's solid ✅, what's shaky 🔶, and which upcoming stage will firm up each shaky piece. The test feeds back into building, rather than being a test for its own sake.
Finally it does four housekeeping things: writes this stage's notes into a readable retrospective, registers the new capability in your library, refreshes the learning map, and re-examines the ladder (do the far stages still hold? the next one can be written in detail now).
| Artifact | Audience | Purpose |
|---|---|---|
| Learning map | Mostly Claude | Resume from the exact stopping point — new conversation, new machine, a month later |
| Learning log | You | One retrospective per stage. Reading it once is a review. Mermaid diagrams, collapsible self-quizzes |
| Capability library | Both | Capability cards accumulated across projects. The thicker it gets, the more you'll dare to build |
You can leave anytime — just say "save." When you come back, Claude opens with a recall question — the question and the answer arrive together, you check yourself against it, and only if it doesn't match do you ask for a refresher.
<the folder you configured>/
├── _项目索引.md Project index — rewritten automatically every launch
├── _能力库.md Capability library, shared across all projects
└── <your project>/
├── 学习地图.md The handoff sheet for Claude: progress, where your hands are, what's next
└── 学习记录/
├── S1 · ….md Your retrospective, one per stage
└── S2 · ….md
Code doesn't live here. Code goes wherever it can actually build (e.g. ~/Projects/your-app). If you're building a real product, that directory also gets a PLAN.md: what the product is, the architecture, every decision made and why.
Say these anytime — Claude responds immediately.
| You say | What happens |
|---|---|
| "wait, I have a question" | Hard stop, pure Q&A, no advancing |
| "I didn't follow that — say it differently" | Zooms into that piece, explains it fully, then walks you back to the main line |
| "this feels too smooth / it hasn't landed" | Claude has you pick the shakiest component, then deliberately breaks it so you can verify with your own hands what you assumed you understood |
| "faster" / "slower" | Adjusts step size |
| "hold off on the code, let me think" | Waits on the decision |
| "this stage is too big, split it" | Rewrites the ladder on the spot into two stages that both run |
| "save" / "let's stop here" | Full progress snapshot; next session resumes from exactly here |
| "skip the test, keep going" | Skips it, records the IOU, comes back to it later |
| "continue " | Skips the menu, picks that project straight up |
| "don't teach me, just build it" | Exits this whole flow and builds it the normal way |
Everything is plain Markdown — open it, edit it, whatever. But some files get overwritten, so know which:
| File | Do your edits survive? |
|---|---|
学习记录/S*.md (learning log) | Yes. This one's yours — annotate freely. Claude rewrites it once when that stage clears, then largely leaves it alone |
学习地图.md (learning map) | The "where we are" section gets overwritten — Claude refreshes it in full every few steps. Edits elsewhere survive |
_项目索引.md (project index) | Don't edit. Overwritten every launch |
_能力库.md (capability library) | Yes — Claude only appends cards and revises boundaries |
The ladder is always negotiable. "This stage is too big." "Skip that one." "Do that one first." Say it and it changes. It was only ever a best guess. Changing the ladder isn't the plan failing — it's the plan working.
The rulebook (SKILL.md, references/) is written in Chinese, because that's the language it was developed and battle-tested in. That's fine — Claude reads it in Chinese and teaches you in whatever language you speak. Talk to it in English and the entire session runs in English: explanations, questions, and your notes.
Two things stay Chinese either way: the note filenames shown above, and the rulebook itself.
If you just want the finished thing and don't want to learn: say "don't teach me, just build it." Claude will build it the normal way and skip all of this.
Ready? Say: "walk me through building X — I want to actually learn it."
Replace {MCP_ENDPOINT_URL} with this MCP’s endpoint URL (from its repo or docs above). No API key — you connect directly.
Tool
OS
Config file: ~/.cursor/mcp.json
{
"mcpServers": {
"mcp-server": {
"url": "{MCP_ENDPOINT_URL}"
}
}
}Paste into mcpServers in the config file. Restart Cursor after saving.
If this MCP is also published on mcpchannel.ai, you can subscribe from Browse and use the gateway config there instead.