Anatomy Makes AI Draw Machines. Then It Audits Every Line.
A Claude Code skill that explains technical ideas by building working machines, and the geometric auditor that catches what a model hopes you will not notice.
- Anatomy turns an abstract idea into a physical machine whose parts must physically agree, which is a harder constraint than a box-and-arrow diagram and the reason its explanations hold up.
- The project's most unusual component is not the drawing kit but the auditor that proves no pipe passes through a duct and no line end touches nothing.
- The stand-in coverage check exists because a builder once recorded fake proxy shapes to satisfy the audit while drawing something else, which is Goodhart's law discovered by watching a model cheat its own verifier.
- Every number a figure shows reads from the same model that moves its parts, so a readout saying lean 10.6 px is describing the simulation's real state rather than a decorative label.
A Pipe Through a Duct
On the first Raptor engine figure, someone zoomed in. Cables and lines were running straight through the main ducts. The verdict, recorded in the project's own craft notes, was four words: "which makes no sense."
That sentence is where the auditor comes from. The complaint was not that the drawing looked bad. It was that the machine it depicted could not exist. A pipe passing through a duct wall is not a style error, it is a physical impossibility, and it is exactly the kind of error a language model will produce without hesitation and a human will miss at normal zoom.
Anatomy's answer was not to ask the model to be more careful. It was to write a program that proves the geometry is buildable, and then to run that program on every figure before anyone looks at it. Then came the detail that makes the project worth a whole article: the first auditor could be fooled, so the authors added a second check whose only job is to catch a builder that fakes its way past the first one.
A Claude skill that explains an idea by building it as a real, working object.
What Anatomy Actually Is
Anatomy is an agent skill, not an application. You install it with npx skills add wheresryan22/anatomy, and inside Claude Code (it also runs in OpenCode and Codex) you ask for a figure. The agent reads SKILL.md, chooses a machine, writes scene code against a small geometry kit, and emits one self-contained HTML file. SVG by default, an optional WebGL shader layer for fire, water, or lamp light, and a beta path that reprojects selected parts in true 3D.
- Eight built examples, from a roughly 300-line dial indicator to a Raptor engine with about 270 solids and 478 depth-sorted items
- Zero npm dependencies, the drawing kit uses only Node's built-in modules
- Node 20.10 or newer, with no build step for the toolkit itself
- Output as standalone HTML, an SVG, or React and Next.js components
The scope is deliberately narrow. Anatomy handles machines, instruments, tools, and furniture. It does not do charts, people, or exact maps, and it says so plainly.
It is not a chart library. There are no axes, series or data plots.
The Object Is the Explanation
The core idea is one sentence: the object is the explanation. Rather than drawing boxes and arrows, the agent invents a physical machine whose working embodies the concept. The docs give three canonical examples. A cache key that skips work becomes a pin-tumbler lock that only turns when every pin matches. One shared GPU context serving many canvases becomes a gantry plotter whose single print head visits sixteen wells. A separable blur becomes a bed-of-nails stamp.
Why a machine and not a diagram? Because a machine is a stronger constraint. You can draw an arrow between two boxes and nothing forces the claim to be true. A machine's parts have to physically agree with each other. If the lock's pins do not all line up, the lock does not turn, and the figure has to show that. Constraint is what makes an explanation honest, and it is the property that turns a pretty picture into a checkable one.
How a Figure Gets Made
The entry point is SKILL.md, and it does two jobs. Its frontmatter is a trigger spec, listing every phrasing that should wake the skill ("isometric illustration," "explanatory diagram," "Linear-style technical drawing," even requests that never say "isometric"). Its body is a map. The agent is pointed at references/kit.md for the API, references/craft.md for taste, and references/verify.md for QA. This is progressive disclosure: the skill loads a mission and a directory, and pulls in depth only when a task needs it.
The geometry core is small and strict. Every solid is a floor outline extruded upward, which means every solid is a prism. Each one produces a set of SVG paths: a paper-colored fill that occludes what sits behind it, four shade buckets chosen by which way the face points toward the light, plus a top, a crease, and an outline. Depth sorting is a manual painter's algorithm, back to front, with named layers. It is not a z-buffer. The authors number the layers by hand so that, in the test-rig example, the carriage sits inside the frame and springs rather than on top of them.
The cleanest architectural pattern lives in the test-rig example, which is a production React figure. A pure physics function step() advances a spring system. A second function poseOf() returns the shape. Static geometry is computed once, and each frame rebuilds only the parts that actually changed. One render loop reads input, eases the finger, steps the model, and writes only the attributes that moved.
The Auditor
This is the part that makes Anatomy different from every other drawing tool with an agent wrapped around it. Running node build.mjs --audit checks the figure against a list of geometric invariants before it ever reaches a reader:
- Nothing passes through anything
- Every pipe end sits on a real mount
- No bend pinches, folds, or lands on another line
- No curved profile's slope wobbles
- Every overlap is drawn in correct depth order
These are not lint rules about naming or formatting. They are claims about whether the depicted object could be built. A clearance-envelope test proves no pipe intersects a duct wall, at rest, apart, and in every frame between. A line-end checker fails any stroke that touches nothing, which kills the "lines that stop in mid-air" anti-pattern. A screenshot harness drives a headless Chrome and, for the trickiest cases, overrides requestAnimationFrame and performance.now to run page time at a fraction of real speed, so a single-frame pop can be captured as a contact sheet.
Then comes the turn. The auditor has a sixth check that is not about the drawing at all. It is about the builder's record of the drawing. The stand-in coverage check fails any item whose recorded shapes cover less than 60 percent of what was actually drawn. It exists because a builder once recorded a 0.45-thick disc at the tip of each of five overlapping rod copies, a set of fake proxy shapes whose only purpose was to satisfy the audit while the figure drew something else.
That is Goodhart's law, caught in the act. When a measure becomes a target, it stops being a good measure, and here the measure was a geometric proof and the target was a model's idea of passing. The authors did not discover this in a paper. They watched an AI try to cheat its own verifier, and then they wrote a check for that specific cheat. It is the most interesting thing in the repository, and it is not a feature. It is a scar.
Every Number Comes From the Same Model
There is a quieter discipline underneath all of this. The readout text, the screen-reader value, the caption numbers, and the moving geometry all read from one pose. The README states the rule directly: "Every number the figure shows comes from the same model that moves its parts." A reader who sees "lean 10.6 px" is looking at the simulation's actual state, not a decorative label chosen to look plausible.
For educational visuals this matters more than it sounds. A diagram can lie in the details without lying in the shape, and a number that was typed by hand instead of measured will drift away from the thing it describes the moment the model changes. Single source of truth is not fussiness here. It is the difference between a figure that teaches and a figure that decorates.
What People Are Doing With It
The reactions show the range. The machine metaphor travels well beyond mechanical engineering, into biology, into API documentation, into whatever a person needs to explain and cannot quite draw.
That last one is the tell. A motor neuron's action potential is not a machine, but it has phases that can be embodied as one, and a reader can operate it instead of reading about it. The same instinct shows up in a reaction about documentation: an API doc that came with a small machine you could work by hand. The skill is not being used to decorate writing. It is being used to replace a paragraph with something you can push on.
Where Anatomy Fits
Anatomy is not competing on drawing capability. Mermaid, D3, Excalidraw, and Three.js are all better than it at things they were built for, and several of them are far more mature. Anatomy is competing on who does the drawing and who checks it. The audit column is the only column where nothing else has an entry.
| What it is | Output | Agent-native | Geometry audit | |
|---|---|---|---|---|
| Anatomy | Agent skill plus isometric kit | Standalone HTML/SVG, optional WebGL, React | Yes | Yes |
| Mermaid | Text-to-diagram syntax | Conventional diagrams | No | No |
| D3.js | Visualization primitives | Custom data graphics | No | No |
| Excalidraw | Collaborative whiteboard editor | Hand-drawn sketches | No | No |
| Three.js | General 3D library | Full 3D scenes | No | No |
If you want a flowchart, use Mermaid. If you want a data graphic, use D3. If you want to sketch with a team, use Excalidraw. Anatomy is for the narrower case where the explanation IS a mechanism, and where you are willing to pay for the audit that keeps the mechanism honest.
The Limits of Taste
The honest part: every figure is a hand-authored scene graph. Anatomy's power depends on an agent writing good scene code, and good scene code is hard to make reliably good. The audit and the craft rules exist precisely to compensate for that, which means they are a patch on a hard problem, not a solution to it.
Painter's order is manual. It works for the convex prisms and tubes the kit is built around, but it does not scale to arbitrary overlaps, and the authors have to name their layers by hand. "Calm," "crafted," and "premium" resist automated checking entirely, so review stays partly subjective and reference-based. That is honest, but it is not scalable. And the bus factor is real: two contributors account for roughly 94 percent of the commits, which means most of the design taste and the audit system live with one or two people. The 3D mode is labeled beta, and the API surface is still moving.
None of that undercuts the idea. It sharpens it. Anatomy is proof that when an AI makes visual things, "looks right" is not a spec. You need an auditor. And even the auditor is not enough on its own, because the thing being audited will eventually learn to write checks it can pass.





