Open Source
Explore the latest AI open-source projects from GitHub and HuggingFace.
Explore the latest AI open-source projects from GitHub and HuggingFace.
CAD Skills, published as `earthtojake/text-to-cad`, is a skills library that gives coding agents the ability to generate, inspect, source, slice, and hand off real CAD and robot-description files. MIT licensed and started in April 2026, it has reached roughly 11,890 stars and 1,270 forks in about three months, has shipped 22 releases with 0.3.10 landing on 2026-07-29, and carries only 16 open issues. Notably, it contains no model of its own — and that is the point. ## Not a Model, a Toolchain Most text-to-CAD work tries to train geometry generation directly: diffusion over meshes, or learned models that emit shapes. Those produce meshes, and meshes are the wrong artifact for engineering. You cannot dimension them, a machine shop cannot quote them, and editing one means editing triangles. CAD Skills takes the opposite route. It assumes the agent you already run — Claude Code, Codex, or another CLI — is competent at writing Python, and gives it the workflows and validation to drive a real parametric CAD kernel. Underneath sit `build123d` and OpenCASCADE, so output is **STEP** as the primary format, with STL, 3MF, and GLB as options. STEP is a boundary-representation format with actual features and tolerances, the file you send to a manufacturer. That single decision determines everything else. Because geometry is produced by code, models are parametric, diffable, and reviewable — and because the CAD kernel does the geometry, the agent is not asked to invent surfaces it cannot reason about. ## Eleven Skills, One Chain The library is organized as focused skills rather than one monolithic capability, and they compose into a path from a sentence to a physical part: | Skill | Role | |-------|------| | CAD | Creates and edits models from plain-language or image requests, exporting STEP, STL, 3MF, GLB | | CAD Viewer | Local browser previews for CAD, G-code, and robot files | | step.parts | Sources off-the-shelf STEP parts — screws, bearings, motors, connectors | | DXF | 2D drawings: profiles, templates, gaskets, cut layouts | | URDF | Robot structure — links, joints, limits, inertials, meshes | | SRDF | MoveIt planning groups, end effectors, poses, collision rules | | SDF | Simulator models and worlds with frames, physics, sensors, lights | | SendCutSend | Pre-upload validation of DXF and STEP files for fabrication | | G-code | Slices meshes into printer-profiled `.gcode` using real slicer CLIs | | Bambu Labs | Dry-runs, uploads, and starts local Bambu Lab print jobs | | Implicit CAD | Browser-native implicit modeling via GLSL signed-distance fields (experimental) | Read end to end, that is a description-to-object pipeline: describe a bracket, generate STEP, pull in the right screws from step.parts, preview it locally, validate the DXF for laser cutting, or slice it and start a print. The robot-description trio — URDF, SRDF, SDF — extends the same idea into robotics, where these files are notoriously tedious to hand-author and are exactly the kind of structured XML an LLM handles well. Installation is `npx skills install earthtojake/text-to-cad`, with native plugin paths for Codex (`codex plugin add cad@text-to-cad`) and Claude Code (`claude plugin install cad@text-to-cad`). Python 3.11+ is required for the CAD skill. ## What the Benchmarks Actually Show The repository ships ten benchmark cases with prompts and animated results, and they are worth reading as a scope statement. They run from a rectangular calibration block with four through-holes and a chamfer, through a circular flange with a six-hole bolt circle, an L-bracket with gussets and holes in two directions, a stepped shaft with a keyway, and an open-top electronics enclosure with internal standoffs — into harder territory: an aerospace-style clevis bracket with lightening cutouts and reinforcing ribs, a radial-engine cylinder with twelve cooling fins and a 35-degree spark-plug boss, a centrifugal impeller with twelve backward-curved blades, a spiral staircase with a helical handrail, and a simplified planetary gear stage with separate sun, planet, ring, carrier, and pin bodies. The honest read: these are mechanical parts described dimensionally, which is precisely where programmatic CAD is strong. The impeller and planetary stage show real capability beyond primitives. The gear teeth are noted as simplified trapezoids, which is a fair marker of the ceiling — this is not going to produce an involute gear profile to spec, an organic surface, or a large multi-part assembly with mates and constraints. ## Pros and Cons The strengths follow from the architecture. Emitting STEP through a real CAD kernel means output that is dimensioned, manufacturable, and editable rather than a mesh approximation — the difference between a demo and a part. Being model-agnostic means it improves as the agents driving it improve, with no retraining. Validation skills like SendCutSend checks and slicer dry-runs address the failure mode that matters most in hardware, where a bad file becomes wasted material. Covering DXF, G-code, and robot descriptions alongside 3D solids means one library spans laser cutting, 3D printing, and robotics simulation. MIT licensing, 22 releases in three months, CI test coverage, and 16 open issues against nearly 12,000 stars indicate a maintained project rather than a viral README. The limitations deserve equal weight, and one is a safety consideration. The Bambu Labs skill uploads and starts print jobs on physical hardware — the README says "cautiously" and provides dry-runs, but an agent that can begin a print is an agent with real-world consequences, including a machine heating and running unattended if a step is misread. Treat that skill as different in kind from the others. Beyond that, output quality is entirely dependent on the driving model's spatial and CAD reasoning; the library supplies workflows and validation, not competence, so results will vary with the agent behind it. The demonstrated envelope is mechanical, dimensionally-specified parts — organic shapes, cosmetic surfacing, and complex constrained assemblies are outside what the benchmarks support. Python 3.11+ plus OpenCASCADE is a heavy dependency stack that is not always painless to install. Git LFS holds the assets and benchmarks and is excluded from default pulls, so browsing results locally takes an extra `git lfs pull`. The branch discipline is a genuine footgun: development happens on `develop`, but you must install from `main` because that branch carries the generated skill and plugin outputs — cloning `develop` for production use will not work as expected. Implicit CAD is explicitly experimental. And at 0.3.10 the API surface should be assumed unstable. ## Outlook The pattern this validates — hand the LLM a real domain kernel and let it write code against it, rather than training the artifact end to end — is the same reason coding agents outperform code-completion models. Mechanical engineering is a strong domain for it because parts are usually specified in numbers, and numbers survive the trip through code far better than through learned geometry. The direction to watch is constrained assemblies and manufacturing-intent features like GD&T, which is where hobbyist output becomes production output. The plugin-marketplace distribution is also a quiet signal: hardware tooling is now shipping as agent skills, not as applications. ## Conclusion CAD Skills is worth installing for hardware prototypers, robotics developers who write URDF and SDF by hand, and mechanical engineers who want a first-draft STEP file from a written spec. It is strongest on dimensionally-described mechanical parts and on the tedious-but-structured robot description formats, and the validation and preview skills make it usable rather than merely impressive. Expect to review and correct generated geometry rather than trust it, budget setup time for the Python and OpenCASCADE stack, install from `main`, and think carefully before granting an agent the ability to start a print job.