As someone with a background in mechanical engineering, I'd love to be able to automate CAD design as it's quite tedious and only fun like 5% of the time, but I've tried these tools and I really don't think text-to-CAD is the right approach. It usually takes longer for me to come up with an accurate written prompt to fully dimension what I need than to just grab my space mouse and do it.
The real power with these kinds of tools isn’t prompting one shotted models but giving agents the ability to do the full workflow. You give them a description of the part and how it’s supposed to mate with parts from McMaster, Misumi, existing parts libraries, etc and the agent downloads the models, asks any clarifying questions to clear up ambiguities (using available part configurations to provide options when applicable), uses measurement tools to validate the design, provide material details for FEA, read and use PDF drawings/datasheets, and so on.
At least, that’s the theory. The problem is that none of the existing CAD tools (almost all exclusively built on Parasolid) are set up to support agentic workflows. None have proper text based representations, with the possible exception of OnShape’s feature script which is too undocumented and proprietary to be of much use. Even if it was supported, Parasolid isn’t set up to provide the kind of detailed error reporting needed to provide agent feedback.
I’ve been experimenting with this in ECAD by giving agents the ability to edit Altium files directly and it’s been working very well (even with footprint drawings!), but my attempts to do it with MCAD have fallen flat on their face because it’d require developing a geometric kernel from scratch with this workflow in mind.
Worc.dev might be for you. I might call it Jupyter for engineers. Founder is a Mechanical
I seem to see one or two of these CAD projects a week. It’s cool, but the real value is design automation specific to my problem domain. Modeling isn’t usually that hard if you’re comfortable with the software. It would probably take as long to just think about what you need. I find more difficulty in maintaining coherence in complex projects that doesn’t involve me forcing a whole team to go all in on some stupid PaaS. A tip for founders: if you’re adding steps to the work process, you’re not helping.
Is the internal data model of fusion structured enough to be understood with a text-based LLM? Or do you need to basically screenshot the render to understand what is happening?
Would a more CAD-as-code based approach to CAD design be more suitable?
Just like, LLMs have an easier time to build a presentation with latex than with powerpoint...
This looks interesting and promising! But I'm confused about your business model and pricing, which mentions "creative generations"? I'd like to understand it better before investing time into this.
We should do better at clarifying this! So in our opensource web app (https://github.com/Adam-CAD/CADAM), you can generate 3D mesh files by clicking mesh on the prompt box. We dubbed this "creative generations" but it should be clearer
From the OnShape demo videos in the tweets, it looks like sketches are unconstrained. Can this create constraints or other parametric relationships between entities?
And does this use your OnShape API quota? If it's making a new API call for each individual feature, I could see this blowing through the annual quota very quickly. What does this look like in practice?
There are more elegant solutions to this problem. Why are you trying to get an LLM to work with bloated, archaic tools that you have to rent from a feudal lord in the cloud when there are free open-source alternatives like OpenSCAD.
This is just one example of a superior tool that's natively easy for LLMs to interact with, because the source files are just composable scripts containing lists of shapes and then lists of tools and parameters to apply to the shapes.
I wrote a simple set of system prompts you can use in any repo to show any LLM how to make SCAD files with a whole bunch of cool examples. This is just another example where walking away from the bloated, inferior feudal system of SaaS and cloud models leads to simpler processes and outcomes with superior results in less time, for free.
Having worked in CAD for over a decade previously, I think the users want a product surface, and the people paying for the engineers time want a reliable trainable solution that will exist exactly as it is today in five years. They are happy to pay for it in monthly installments.
This is a separate dimension to alternative high quality modeling solutions alone.
Now, some of the users especially are _proud_ of their product specific skill set. They don't _want_ to switch a package.
And - it's much easier to get professional engineers to use extensions to packages their engineering office already uses.
And this comes before any technical side-by-side feature comparison.
In programming the best tools are open source. Nobody is using a closed source compiler anymore, for example. That can lead to an assumption the same is true in every domain. But it's not true. Closed source commercial CAD software absolutely blows the open source stuff out of the water.
OpenSCAD is a cool project and can be useful, but if you believe it's a "superior tool" to professional CAD packages like Solidworks or Fusion360, you must not have used them.
The pro software does things that are impossible or clunky in the OSS alternatives. One I frequently used in SolidWorks: loft with guide curves. SolveSpace and OpenSCAD don't even attempt to support lofts. FreeCAD does but doesn't do guide curves, so you're stuck adding more intermediate profiles to make up for that, and it's horribly easy to get your loft twisted where it's not connecting the right vertices.
Don't get me wrong, I'm very appreciative of the FOSS options, and I do get a lot of use out of them at home for small projects. I especially love SolveSpace, it is beautiful software, well thought out, fast, and its feature set is enough for 80% of my projects. But there are definitely some CAD tasks like designing a car hood or an ergonomic handle, where the FOSS software just doesn't match commercial for modeling capability. And that is not even getting into all the stuff it can do beyond modeling like FEA and CAM.
> Closed source commercial CAD software absolutely blows the open source stuff out of the water.
Very unfortunate, but true indeed.
One of my big hope is that coding with the help AI will quickly close that gap (the missing piece is a modern geometry engine like what's in Fusion, and should be reachable in an OSS context with AI-assisted coding now).
Once that happens we will be able to finally and forever escape the clutches of the likes of Autodesk.
You won’t be taken seriously if you push OpenSCAD - it’s simply not a tool that professionals will adopt due to not doing Breps. I think the recent progress of FreeCAD and its spin-off libraries cadquery and build123d will be better to push.
>when there are free open-source alternatives like OpenSCAD.
As much as I agree with the fact that they should have built that tool for free open-source alternatives first and foremost, OpenSCAD is not the right choice.
OpenSCAD is a fantastic tool to whip together a box for your hobby project, but doing serious professional CAD models ... it's just not in the same league as fusion, onshape, and freecad (as hideous as FreeCAD's UI may be).
Depends on what I'm doing, but for serious projects, I try to stick to FreeCAD (which has a python API btw) and avoid the commercial packages whenever I can.
Like others have remarked, the feature set, in particular of the geometry engine, is really not at the level of commercial packages like Fusion, Onshape and the rest, but 90% of the time FreeCAD is good enough.
However, FreeCAD's UI is truly an abomination, even with the recent "improvements". The workflow enforce by the package is a freaking death march.
[EDIT]: I am also a huge fan of building objects with code, especially for parametric stuff, but then there is nothing out there that can really do the code -> model -> 3D viz -> code -> model -> ... loop tightly enough yet.
I truly believe that AI + CAD is blue ocean territory, but please, please don't make the lock-in the already predatory actors in the space have on the market even worse by building your stuff for their product.
Especially, don't help Autodesk, they're a freaking cancer on the industry.
If we could drive FreeCAD using an AI, man that would really rock and make a huge difference for the recognition of the package, especially if you figure our a way to have users work around the horrible UI.
At least, that’s the theory. The problem is that none of the existing CAD tools (almost all exclusively built on Parasolid) are set up to support agentic workflows. None have proper text based representations, with the possible exception of OnShape’s feature script which is too undocumented and proprietary to be of much use. Even if it was supported, Parasolid isn’t set up to provide the kind of detailed error reporting needed to provide agent feedback.
I’ve been experimenting with this in ECAD by giving agents the ability to edit Altium files directly and it’s been working very well (even with footprint drawings!), but my attempts to do it with MCAD have fallen flat on their face because it’d require developing a geometric kernel from scratch with this workflow in mind.
I seem to see one or two of these CAD projects a week. It’s cool, but the real value is design automation specific to my problem domain. Modeling isn’t usually that hard if you’re comfortable with the software. It would probably take as long to just think about what you need. I find more difficulty in maintaining coherence in complex projects that doesn’t involve me forcing a whole team to go all in on some stupid PaaS. A tip for founders: if you’re adding steps to the work process, you’re not helping.
Asking seriously.
Context: Have some overlapping interest in the space because I am prototyping a camera based edge device that allows for AR/AI interactions.
Would a more CAD-as-code based approach to CAD design be more suitable?
Just like, LLMs have an easier time to build a presentation with latex than with powerpoint...
We abstract pretty much everything down to two simple primitives: CAD as code + visual feedback
[0] https://news.ycombinator.com/item?id=47411437
And does this use your OnShape API quota? If it's making a new API call for each individual feature, I could see this blowing through the annual quota very quickly. What does this look like in practice?
As far as sketch constraints go we are currently working on making this robust!
Calls made with OAuth2 via applications that are publicly available in the Onshape App Store
https://onshape-public.github.io/docs/auth/limits/
So it should be ok ?
This is just one example of a superior tool that's natively easy for LLMs to interact with, because the source files are just composable scripts containing lists of shapes and then lists of tools and parameters to apply to the shapes.
I wrote a simple set of system prompts you can use in any repo to show any LLM how to make SCAD files with a whole bunch of cool examples. This is just another example where walking away from the bloated, inferior feudal system of SaaS and cloud models leads to simpler processes and outcomes with superior results in less time, for free.
https://github.com/cjtrowbridge/vibe-modeling
See our opensource text to cad editor: https://github.com/Adam-CAD/CADAM
This is a separate dimension to alternative high quality modeling solutions alone.
Now, some of the users especially are _proud_ of their product specific skill set. They don't _want_ to switch a package.
And - it's much easier to get professional engineers to use extensions to packages their engineering office already uses.
And this comes before any technical side-by-side feature comparison.
OpenSCAD is a cool project and can be useful, but if you believe it's a "superior tool" to professional CAD packages like Solidworks or Fusion360, you must not have used them.
The pro software does things that are impossible or clunky in the OSS alternatives. One I frequently used in SolidWorks: loft with guide curves. SolveSpace and OpenSCAD don't even attempt to support lofts. FreeCAD does but doesn't do guide curves, so you're stuck adding more intermediate profiles to make up for that, and it's horribly easy to get your loft twisted where it's not connecting the right vertices.
Don't get me wrong, I'm very appreciative of the FOSS options, and I do get a lot of use out of them at home for small projects. I especially love SolveSpace, it is beautiful software, well thought out, fast, and its feature set is enough for 80% of my projects. But there are definitely some CAD tasks like designing a car hood or an ergonomic handle, where the FOSS software just doesn't match commercial for modeling capability. And that is not even getting into all the stuff it can do beyond modeling like FEA and CAM.
Very unfortunate, but true indeed.
One of my big hope is that coding with the help AI will quickly close that gap (the missing piece is a modern geometry engine like what's in Fusion, and should be reachable in an OSS context with AI-assisted coding now).
Once that happens we will be able to finally and forever escape the clutches of the likes of Autodesk.
But we're not there yet.
As much as I agree with the fact that they should have built that tool for free open-source alternatives first and foremost, OpenSCAD is not the right choice.
OpenSCAD is a fantastic tool to whip together a box for your hobby project, but doing serious professional CAD models ... it's just not in the same league as fusion, onshape, and freecad (as hideous as FreeCAD's UI may be).
It does not integrate with "my" CAD, which happens to be none of the two closed-source, closed-ecosystem, commercial products you built your tool for.
Depends on what I'm doing, but for serious projects, I try to stick to FreeCAD (which has a python API btw) and avoid the commercial packages whenever I can.
Like others have remarked, the feature set, in particular of the geometry engine, is really not at the level of commercial packages like Fusion, Onshape and the rest, but 90% of the time FreeCAD is good enough.
However, FreeCAD's UI is truly an abomination, even with the recent "improvements". The workflow enforce by the package is a freaking death march.
[EDIT]: I am also a huge fan of building objects with code, especially for parametric stuff, but then there is nothing out there that can really do the code -> model -> 3D viz -> code -> model -> ... loop tightly enough yet.
I truly believe that AI + CAD is blue ocean territory, but please, please don't make the lock-in the already predatory actors in the space have on the market even worse by building your stuff for their product.
Especially, don't help Autodesk, they're a freaking cancer on the industry.
If we could drive FreeCAD using an AI, man that would really rock and make a huge difference for the recognition of the package, especially if you figure our a way to have users work around the horrible UI.