Runs on your own hardware
Tracgen-CAD
Tracgen’s brief-in, package-out pipeline, aimed at mechanical CAD instead of circuit boards.
Mechanical teams drawing the same bracket for the fourth time this quarter.
Machine a 6061 aluminum mounting plate for a NEMA-17 stepper: 60 × 60 mm, 6 mm thick. Center bore 22 mm for the motor boss, the standard NEMA-17 31 mm square 4-bolt pattern for M3 screws, and two side slots for adjustment. Rounded corners, deburr edges. Quantity 25, 3-axis CNC.
golden/g2-cnc-bracket/prompt.md
DFM · cnc_milling_3axis
Thinnest wall 1.50 mm, slot to edge
Limit 0.80 mm · score 100
No flags. Draft isn’t required for CNC.
Estimate per part · 6061 · 48 g
- qty 1$43.53
- qty 10$12.03
- qty 100$9.23
- qty 1000$9.23
What it does
Tracgen for mechanical parts.
The geometry comes from cadkernel, a Rust kernel built from one codebase into both a native CLI and a browser version. The same code that makes the parts also draws the previews.
- 01
Parametric solids and multi-part assemblies from a plain-English description
- 02
One Rust geometry kernel built for both a native CLI and WebAssembly
- 03
DFM review and a priced BOM, including off-the-shelf hardware
- 04
Delivers a feature tree, STL files and verification reports
The feature tree
Models write JSON. The kernel writes geometry.
The language models never produce geometry. They emit JSON that’s checked against a schema, and cadkernel compiles it into a mesh. A mesh that isn’t manifold, watertight and free of self-intersections doesn’t get past the kernel. The same Rust kernel, built to WebAssembly, redraws the part in the browser as you change a parameter.
// golden/g2-cnc-bracket/feature_bracket.json (excerpt)
"parameters": {
"w": {"value": 60.0}, "d": {"value": 60.0}, "t": {"value": 6.0},
"bore": {"value": 22.0}, "hole": {"value": 3.4}, "bc": {"value": 31.0},
"slot_w": {"value": 5.0}, "slot_l": {"value": 18.0}
},
"features": [
{ "id": "f_body", "op": "extrude", "distance_param": "t" },
{ "id": "f_bore", "op": "hole", "diameter_param": "bore" },
{ "id": "f_hole", "op": "hole", "x": -15.5, "y": -15.5 },
{ "id": "f_hole_pat", "op": "pattern", "of": "f_hole", "nx": 2, "ny": 2 },
{ "id": "f_slotL", "op": "cut_box", "cx": -26.0, "w_param": "slot_w" },
{ "id": "f_slotR", "op": "cut_box", "cx": 26.0, "w_param": "slot_w" }
],
"dfm_intent": { "process": "cnc_milling_3axis", "min_wall_mm": 0.8 }Twelve stages
It runs on its own, except for one stop.
Every stage is checkpointed. The pipeline pauses once, at design review, for a person to approve the part before it goes on to planning, DFM and the output package.
- ingest
- formalize
- architecture
- sourcing
- feature
- geometry
- review
- assembly
- planning
- dfm
- verification
- outputs
Where it stands
A prototype, with three golden parts.
The kernel, the pipeline and the reference parts are in the repo: a snap-fit enclosure, this CNC bracket and a sheet-metal chassis. Sheet-metal bends and flat patterns aren’t in the kernel yet, and neither are reference-geometry upload or 2D drawing and DXF export. It isn’t available to use yet.
Specification
What it’s built with, and when.
Pulled from the repository each time this site is built.
- State
- Prototype
- Discipline
- Design automation
- Shape
- Developer tooling
- Started
- Jun 2026
- Last change
- Jun 2026
- Commits
- 12
- Rust
- TypeScript
- Python
- WebAssembly
- Claude API
- TypeScript 36%
- Python 31%
- Rust 30%
Related work
Built alongside Tracgen-CAD
Next
Put Tracgen-CAD in your pipeline
Ask about hooking it up to the repositories and agents you already run.