24 points antelocnova 1 hour ago 10 comments

Hi there :-) New on HN, first time posting.

Past year, around December, I started experimenting with making ChatGPT and Claude generate source code in LDraw language.

This LDraw is literally an "assembly" language, a low-level programming language that describes how to assemble LEGO pieces together into models, one placement instruction at a time.

When executed by specific tools, like e.g. LDView, LeoCAD, Studio... these instructions become LEGO CAD models, that can be interacted with, modified, etc.

Or, in other words: one LDraw source file in .mpd or .ldr format is equivalent to one LEGO CAD model.

So, the idea I had was: if I manage for maybe ChatGPT or Claude to generate high-quality LDraw source files... then, they would actually be generating high-quality LEGO CAD models, right?

Then, after months of iterations and trying one thing after the other... it worked!!!

Long story short: using GPT-6 Astra and Opus 5.5, I've managed to create a python toolset, instructions, and docs for agents in general. Now, these can be used by them to generate LDraw models.

I've packed it all as a dockerized web app for others to try and experiment, with several providers (and agents) to choose from: OpenAI, Claude and OpenRouter.

I'd really appreciate feedback and comments, let's see where this goes =)

antelocnova 1 hour ago | parent

Hi there :-)

New on HN, first time posting, and (I guess) my post on Show HN was rejected...

Anyway, I hope I'm not bothering anyone by posting this outside Show HN, or posting almost the same thing twice.

Past year, around December, I started experimenting with making ChatGPT and Claude generate source code in LDraw language.

This LDraw is literally an "assembly" language, a low-level programming language that describes how to assemble LEGO pieces together into models, one placement instruction at a time.

When executed by specific tools, like e.g. LDView, LeoCAD, Studio... these instructions become LEGO CAD models, that can be interacted with, modified, etc.

Or, in other words: one LDraw source file in .mpd or .ldr format is equivalent to one LEGO CAD model.

So, the idea I had was: if I manage for maybe ChatGPT or Claude to generate high-quality LDraw source files... then, they would actually be generating high-quality LEGO CAD models, right?

Then, after months of iterations and trying one thing after the other... it worked!!!

Long story short: using GPT-6 Astra and Opus 5.5, I've managed to create a python toolset, instructions, and docs for agents in general. Now, these can be used by them to generate LDraw models.

I've packed it all as a dockerized web app for others to try and experiment, with several providers (and agents) to choose from: OpenAI, Claude and OpenRouter.

I'd really appreciate feedback and comments, let's see where this goes =)

dang 50 minutes ago | parent

This project is perfect for a Show HN! I moved (most of) your text to the top and added "Show HN" to the title. I'll respond to this bit here:

> and (I guess) my post on Show HN was rejected... Anyway, I hope I'm not bothering anyone by posting this outside Show HN, or posting almost the same thing twice.

Unfortunately we had to put some barriers in place (https://news.ycombinator.com/showlim) because we got flooded, and still are, with Show HNs from new accounts which lack the spark of curiosity that is most important here. The hope is people will take the time to read the site, participate in threads, get a feel for the culture, and eventually post a Show HN that is a better fit.

None of that applies to your project, and if we had a better way to screen these things, we'd write software that let posts like yours through the first time. In any case I'm glad I randomly saw this one, and welcome to HN!

antelocnova 42 minutes ago | parent

Thanks dang!

I really appreciate you helping me with this, and totally get the bit about getting flooded.

Anyway, I hope HN community will like this, and maybe contribute, have some crazy ideas about how and where to move forward =)

dang 31 minutes ago | parent

(Normally I'd email, but maybe it's fun for others to be in on the conversation.)

I think this post would be even better if there were more visual examples to look at. Would it be possible to link to more pictures, or even a demo video, showing different cool and/or weird things produced by the tool?

(In terms of video, you don't need anything fancy - what works best is raw and direct, with zero production values.)

Also, another thing that isn't clear to me is whether you've built any of these structures physically. If so, it would be particularly cool to see that in action! If not, it would be interesting to know what it would take to do so.

vunderba 33 minutes ago | parent

Nice job. I actually read a paper on Arxiv last year about this exact thing - using LLMs to drive model building through LDraw that might be worth reading [1].

They had some interesting experiments like giving the LLM a fixed set of parts as a constraint and asked it to "build" tools out of those available lego.

I think they were using Opus 4.5 so I'm sure with even more powerful models it'll be even better.

[1] - https://arxiv.org/pdf/2512.15743

dy 30 minutes ago | parent

Thanks for sharing - I'm actually working with my kid on something similar but with physics modeling for First Lego League. Cool to see your approach!

CptBroccoli 22 minutes ago | parent

Any estimates for token costs to generate these models? Curious about costs for Astra, Opus and Jev for some of the examples you have in the video.

ash_091 9 minutes ago | parent

Neat! Perhaps I'll finally get around to doing something with the 51515 Lego set I have laying around collecting dust.

> I did this in order to get agentic LLMs capable of designing buildable, physical things!

I've been experimenting with FreeCAD + freecad-mcp + Claude recently and have been similarly surprised how well this works. I've produced three useful parts from Claude's designs: a 3d printed case for an OLED display + some inputs + an ESP32, and a milled aluminium hotend mount adapter for a 3d printer, and a printed pen + pressure sensor mount to use the printer as a plotter. I just provided part/model numbers plus a couple of caliper measurements Claude wasn't able to find online and went through two or three cad revisions before making the parts. All three worked on the first hardware revision.

The biggest thing I've found it seems to struggle with is understanding how the parts will be assembled. The pen mount in particular was tricky to put together, having a part which needed to fit through a slightly too small space to get to its spot. Although it's hard to blame the AI for that when I didn't notice it either I suppose.

1e1a 8 minutes ago | parent

Can it create functional mechanisms using LEGO Technic parts?