a month ago
- last edited
a month ago
by
Laszlo Nagy
Hi everyone,
I'm an architect with ~30 years of practice and deep ArchiCAD/GDL experience. Over the past year I've been building OpenBrep — an open-source tool that lets you create and modify GDL library parts using natural language, right from the terminal.
You describe what you want. OpenBrep generates the full HSF structure — 3D script, 2D script, Master, parameter list, VALUES — and compiles it to .gsm.
$ openbrep create "A bookshelf, 600mm wide, 400mm deep, 4 shelves"
✅ Generated: 3D / 2D / Master / Paramlist / VL
✅ Compiled successfully
Then you iterate — in the same terminal, on the same project:
$ openbrep modify ./my_shelf "Change to 6 shelves, evenly spaced"
✅ Modified: paramlist (n_shelves: 4→6) + 3D (spacing formula)
✅ 2D, Master, back panel: untouched
✅ Compiled successfully
We've all tried asking ChatGPT or Claude to write GDL. First pass is often impressive. But then you ask for a modification, and things start falling apart — the AI rewrites the entire script, loses parameters, breaks geometry that was correct before.
OpenBrep tackles this with three things:
OpenBrep is HSF-native. It works directly with the HSF directory structure — the unpacked format of .gsm files. The runtime is independent from the UI, so it can be called from:
Supports multiple LLM backends: Claude, GPT, DeepSeek, GLM, Gemini, Ollama (local).
What works well: parametric objects (furniture, steel connections, simple building elements) from natural language, including from reference images.
Still improving: complex multi-round modifications, 2D symbol quality, repair loop reliability.
GDL has a training data scarcity problem. AI models don't have enough GDL examples to learn from. The only way to improve generation quality long-term is community-contributed knowledge — real-world GDL patterns, parametric strategies, domain-specific snippets. Open source is the right vehicle for that.
git clone https://github.com/byewind1/openbrep.git
cd openbrep
pip install -e ".[ui]"
# CLI mode
openbrep create "A parametric window, 1200x1500mm" --output ./my_window
openbrep modify ./my_window "Add an openable sash with swing angle parameter"
# Web UI mode
streamlit run ui/app.py
GitHub: https://github.com/byewind1/openbrep
Feedback, issues, and GDL knowledge contributions welcome. If you've been copy-pasting ChatGPT output into the GDL script editor — there's now a better way.
Operating system used: Mac Apple Silicon 15.7.4
a month ago
Hi, this looks really impressive.
I have one small question:
Is there an English version of the UI available (in addition to the Chinese one)? For non-Chinese speakers it’s quite difficult to navigate otherwise, and having an English interface would make it much more accessible to a broader GDL community.
Thanks for sharing this — really exciting direction for GDL development.
a month ago
Thanks for the reply — this is the next direction. Archicad has more users in Europe and the US, and it seems not that difficult. I’ll pursue it — stay tuned.
a month ago - last edited a month ago
I would be also very interested in this - made some real complex GDLs with some diffrent AI's - here is my latest development Work in Progress:
https://www.youtube.com/watch?v=NLTfSy-Nqts
It uses the old Esteban-Ramos Code for editable polygons and it makes som different sorts of curves in the GDL and the last thing is driving simulation for getting the right space for the vehicles. Would not be possible with my own poor maths.
Look at my Youtube-Channel to see other developments like a "full mathematical foundet" geodesic dome (Buckminster Fuller) and other things - made with AI. (Mostly, i shared the original files with dropbox in the video description, but this one is "work in progress" - but it will follow.
If Your Work would make this easier - wonderful!
4 weeks ago
Your project looks great, let me check it out. Thanks for the recommendation!