Build1 publisher3 min readPublished
LDraw Nova has AI agents write Python that generates LEGO designs of more than 2,000 pieces
LDraw Nova, Carlos Antelo's open-source tool, had Claude Opus 5.5 design a 2,175-piece LEGO garden by writing a Python program that emits the CAD file. Nova checks parts for collisions but not stability, so whether any of its designs would stand up in real bricks is still untested.
The Engineer · Build desk
Drafted by a language model from the sources cited here and checked against its claim ledger before publication. How we use AISend a correction

What happened
- Antelo's rough estimate is about $5 in tokens for GPT-6 Astra to build one Technic mechanism, and he says only frontier models manage large, accurate builds so far.
- Carnegie Mellon's BrickGPT, trained on more than 47,000 LEGO structures, checks its designs for validity and physical stability while it generates them.
- Antelo released Nova on Friday as a Docker web app that works with OpenAI, Anthropic and OpenRouter, after three earlier attempts at the toolkit.
Compiled by The EngineerSomething wrong?How this is made
Why it matters
- constraint Passing Nova's checks means the parts do not overlap and the render looks right; whether an assembled model holds together is outside what the tool tests.
- cost Matching the gallery means frontier-model token bills and long render loops, so teams on cheaper models should not expect the same results until Antelo's low-end tooling exists.
- decision Anyone who needs designs physically checked as they are generated has a reason to pick BrickGPT's trained approach over Nova's general-model breadth.
LDraw is a text format in which each placed LEGO piece is one positioned line, and LDView, LeoCAD and Studio open it as one file per model [6]. At that density the Sakura Garden comes to roughly 2,175 placement lines [1]. Nova does not have the model type those lines. The agent writes a JSON plan for the model and its submodels, converts the plan into a Python program, and runs the program to emit the LDraw source [7]. Antelo's reason is that this avoids "(evil!) geometry math," because agents are "better at generating Python code" [9].
In my view the program step is the right call for this format. A loop or a function can lay down a run of bricks without the model writing each line [3], and the submodel split in the plan gives the agent units it can work on separately [7]. The evidence that it scales is a gallery. Sakura Garden and an unfinished Atlas Crane are credited to Claude Opus 5.5, a Cathedral and the Tidal Observatory to GPT-6 Astra, and the Copper Bean apartments to Opus 5, "(not 5.5!)" [11]. Recording the model and prompt behind every build is good practice. Antelo got the toolkit working after three earlier attempts [5], and the report does not describe what those attempts tried.
Correctness is judged from pictures. After each render the agent inspects the image, adjusts, and renders again until it considers the model complete [8]. Collisions between parts are handled; stability is not [12]. In Antelo's assessment as Tom's Hardware reports it, "physics modeling is something Nova is currently lacking" [12]. The render loop can catch a tower in the wrong place, but judging whether that tower would stay up takes the physics modeling Nova lacks [2].
None of the designs has been built with real bricks, and Antelo said he "didn't even try" [4]. Building the large models would mean collecting thousands of parts, a job he figures would be difficult [20]. For a project meant to get agents "capable of designing buildable, physical things" [19], the count of physical builds is zero [4]. He is considering 3D-printing a small model [18].
Carnegie Mellon's BrickGPT, formerly LegoGPT, made the opposite trade. It was trained on more than 47,000 LEGO structures and checks its designs for validity and physical stability as it generates them [15]. Nova runs general-purpose models such as GPT-6 Astra and Claude Opus 5.5 through its programs instead [1].
Running Nova also costs money. Antelo's "wild" estimate is around $5 in tokens for Astra to build one Technic mechanism [13]. In his experience only frontier models can currently generate large, accurate builds, and the process is time-consuming [14]. Part lookup is its own step. Astra's Cathedral used jev-rerank, an optional reranker backed by TypeSafe's Jev System One model, and without a TypeSafe API key the agents fall back to full-text search [16]. The gallery results carry over to another setup only if it runs a frontier model and budgets for repeated render loops [3]. Antelo's stated goal is "tooling that can be used by low-end agents to iteratively build" [17].
What to watch
- A Nova design built in real bricks or 3D-printed, which Antelo is considering for a small model, would be the first physical check of the output.
- Stability modeling added to Nova would close the gap between its collision checks and buildable output.
- Large builds from low-end agents would show whether the program-writing approach depends on frontier models.