cd /news/ai-agents/show-hn-lobole-open-source-parametri… · home › topics › ai-agents › article
[ARTICLE · art-156878] src=github.com ↗ pub= topic=ai-agents verified=true sentiment=↑ positive

Show HN: Loböle, open-source parametric CAD that AI agents can drive

Developer eliasaronson released Loböle 0.1, an open-source parametric CAD application built on OpenCASCADE B-Rep modeling with a Vulkan viewport, exposing every GUI command through JSON-RPC, a Python SDK and an MCP server so AI agents can drive it. The Linux-first release ships as an AppImage for glibc 2.39 or newer, a .deb for Ubuntu 26.04, a headless AppImage and container for servers, a pip-installable client and MCP server, and an unsigned Windows build without FEM support. The release warns that CAM toolpaths have cut real parts on only one machine, a 6090 CNC router running Mach3, and that every file should be simulated and dry-run before cutting.

read5 min views3 publishedOct 24, 2026
Show HN: Loböle, open-source parametric CAD that AI agents can drive
Image: Michielbdejong (auto-discovered)

Open-source parametric CAD: B-Rep modeling on OpenCASCADE, a Vulkan viewport, and one command layer that the GUI, Python scripts and AI agents all drive. Linux first; Windows builds exist, macOS is untested.

Version 0.1: so expect some rough edges. Issues are welcome.

  • Parametric modeling: a constraint sketcher, features that survive upstream edits (stable topological naming), variables and expressions, configurations, sheet metal, bent tube.
  • Assemblies: mates, sub-assemblies, motion studies with clash checks, exploded views, a BOM, standard fasteners.
  • Drawings: sheets with projected views, dimensions and tables, out to SVG and PDF.
  • Simulation: static and modal FEM, and topology optimization, on the part itself.
  • Manufacturing: 2.5D, 3-axis and 4th-axis milling posted for Mach3, LinuxCNC or GRBL, each file verified by simulating it; checks for 3D printing.
  • Versioning: history, named versions, branches and merges, backed by git.
  • Scripting and agents: JSON-RPC, a Python SDK and an MCP server reach every command the GUI has; a terminal panel runs an agent inside the window.
  • Interchange: STEP, STL and BREP in; those plus glTF, OBJ, PLY, DXF, SVG and PDF out.

Warning

CAM has cut real parts on one machine only: a 6090 CNC router on Mach3. Simulate and dry-run every file before cutting.

lobole-demo-1080p.mp4 #

Every model here is built by a generator, an ordinary Python program driving the API; generators/README.md lists them all.

| OM615 diesel (Opus 5.5): every part down to the bearing shells, with its injection pump chained to the crank and timed | Automatic watch (Opus 5, one shot): a 3 Hz self-winding movement, with lever escapement, rotor winding and keyless works | | Bicycle (Opus 5.5, one shot): modelled from photographs | 5-inch FPV quadcopter (Opus 5, one shot): 91 occurrences, fitted fasteners, FEM on the arms |

From the releases page:

  • Linux:lobole-<version>-x86_64.AppImage , the full GUI on glibc 2.39 or newer (Ubuntu 24.04, Debian 13, Fedora 40 and later).chmod +x it and run it; linked onto your PATH aslobole , the MCP server can start it by itself.
  • Ubuntu 26.04:sudo apt install ./lobole_<version>-1_amd64.deb .
  • Windows: a zip or an installer. Tested on Windows by hand and under Wine on every release, unsigned (SmartScreen warns), no FEM.
  • Linux, headless: an AppImage with the engine and its JSON-RPC interface, no window, for servers (caveats ).

Elsewhere:

  • Nix:nix run github:eliasaronson/lobole , the full GUI. Outside NixOS the GUI needsnixGL .
  • Container:ghcr.io/eliasaronson/lobole-headless (below ).
  • Python:pip install lobole , the client, SDK and MCP server (docs/scripting ).

Other distributions: build from source.

Ubuntu 24.04: CI installs exactly this list on every push:

sudo apt install git cmake ninja-build build-essential python3 \
    libvulkan-dev glslc libglfw3-dev libglm-dev \
    libspdlog-dev libgtk-3-dev nlohmann-json3-dev libeigen3-dev libboost-dev \
    libocct-data-exchange-dev libocct-modeling-algorithms-dev libocct-modeling-data-dev \
    libocct-foundation-dev libocct-ocaf-dev libocct-visualization-dev \
    libtbb-dev libvterm-dev

Ubuntu 26.04: the same list, plus libnglib-dev netgen python3-netgen libspectra-dev for FEM meshing and modal analysis; CI installs that too. The last two are needed only because Ubuntu's Netgen CMake config checks for them.

Nix / NixOS: nix-shell in the repo root pins everything. The Vulkan driver comes from your system (hardware.graphics.enable = true).

Flatpak: tools/flatpak-build.sh builds for any distribution (packaging/flatpak/).

Other distributions: the Ubuntu list says what is needed; OpenCASCADE must be 7.6 or newer, CMake 3.14+, and the compiler C++23.

Windows cross-compiles from Linux (packaging/windows/). macOS is untested.

Clone with --recurse-submodules (or run git submodule update --init --recursive) for the vendored dependencies.

cmake prints which optional features it compiled in. CAM and the terminal panel can be switched off (-DENABLE_CAM=OFF, -DENABLE_TERMINAL=OFF), and then they do not exist at all. Without Netgen there is no FEM meshing, and without Spectra no modal analysis; Ubuntu has both from 26.04 on, and every release download except Windows carries them.

On OpenCASCADE 7.6 (Ubuntu 24.04), PLY export is missing and some booleans come out wrong (details).

cmake -S . -B build -G Ninja
cmake --build build
cmake --install build --prefix "$HOME/.local"   # optional: app, assets, desktop entry

The test engine is the one dependency that is not open source: a company over 2M USD turnover that builds or ships Loböle needs a paid licence from DISCO HELLO. -DENABLE_TEST_ENGINE=OFF removes it, along with the GUI test suite and the remote ui_action tier.

build/lobole [-f path/to/file.step]

The engine and its JSON-RPC interface, no GPU or display, with the full feature set (OpenCASCADE 7.9, Netgen, Spectra):

docker run --rm -p 8437:8437 ghcr.io/eliasaronson/lobole-headless
lobole-remote 8437 get_state          # from pip install lobole

nix build .#dockerHeadless builds the same image.

Caution

The JSON-RPC interface is unauthenticated and can read and write files. The image listens on all interfaces so the published port works; never publish it on a network you do not trust.

tools/ctest -LE gui -j$(nproc)    # headless: no GPU, no display
./tools/gui-tests-xvfb.sh         # the GUI suite on a virtual display

More in CONTRIBUTING.md.

With an AI agent: install the MCP server and register it, e.g. with Claude Code. It attaches to a running Loböle, or starts one without a window if none is running:

uv tool install lobole            # or: pip install lobole
claude mcp add lobole -- lobole-mcp

Scripts drive a live session over JSON-RPC (localhost only, opt-in):

./lobole --remote 8437     # or --headless --remote 8437, with no GPU
export PYTHONPATH=$PWD/python
python3 -m lobole.client 8437 get_state
python3 -m lobole.client 8437 add_feature \
    '{"feature": {"type": "Box", "name": "Box 1", "on": "Top",
                  "width": 2, "depth": 2, "height": 2}}'

Every GUI command is reachable, plus UI actions that click and type in the real window. See the Python SDK and the MCP server.

Copyright © Elias Högbom Aronsson

Loböle is licensed under the GNU Affero General Public License, version 3 or any later version (LICENSE). A distributed or network-hosted derivative must be released under the AGPL with its source. Files you make with Loböle (models, drawings, exports) are yours.

It comes without any warranty. Check simulation results before relying on them for anything that carries load, and dry-run every G-code file.

An additional permission under section 7 of the AGPL allows linking Loböle with Dear ImGui Test Engine and conveying the result; the text is in ADDITIONAL_PERMISSION.md.

Other products named here are trademarks of their owners; Loböle is not affiliated with any of them. The name and logo of Loböle are not licensed under the AGPL: a fork or modified build takes its own name (TRADEMARKS.md).

Listed with their licences, including the dynamically linked LGPL libraries, in THIRD_PARTY.md.

── more in #ai-agents 4 stories · sorted by recency
── more on @loböle 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
→ Live at https://your-agent.zahid.host ✓
Get free account → Pricing
from €0/mo · no card required
LIVE [news/show-hn-lobole-open-…] indexed:0 read:5min 2026-10-24 · —