{"slug":"earthtojake-text-to-cad","kind":"smoke","status":"testing","tier":"smoke","title":"text-to-cad: does cadgen actually build a correct part?","category":"cad-3d/text-to-cad","topic":"cad","repos":[{"repo":"earthtojake/text-to-cad","stars":21277,"license":"MIT"}],"claims":[{"claim":"Gives your agent CAD superpowers: generate real 3D models as STEP/STL/3MF with design-for-manufacturing checks","source":"https://x.com/Amit_0717/status/2107213487545938121"}],"plan":"Smoke first: install the cadgen engine, build a parametric part (a 40x30x10 mm plate with a 5 mm hole) through its runtime, export STEP, then independently re-parse that STEP and check the bounding box and that a 2.5 mm-radius hole exists.","who_its_for":"Hardware people who want an agent to produce real, manufacturable CAD.","explainer":"The engine behind the text-to-cad plugin that lets agents generate STEP/STL/3MF parts. Rocky has it build a part with known dimensions, then checks the exported geometry with its own parser, no cadgen code trusted.","measure":["Does cadgen install and export a STEP file","Does the exported part match the requested dimensions","Is the hole really where it should be"],"notes_so_far":["Method: install cadgen 0.7.21 (repo 2457312, v0.7.21) via uv; the STEP check is an independent regex parse of the file, not cadgen's own report."],"sneak_peek":["Smoke test: cadgen 0.7.21 installed and exported a STEP plate with the 5 mm hole (radius 2.5 mm). The bounding box read 40 x 30 x 56 mm instead of 40 x 30 x 10, so Rocky's script or the check needs another look.","The real claim test, an agent with the plugin building 3 packet parts 3 times each, is queued."],"charts":[],"gallery":[],"results":{"jobs":[{"id":24,"title":"text-to-cad: cadgen builds a parametric 40x30x10 plate w/ 5mm hole, independent STEP check","kind":"smoke","status":"done","started":"2026-10-18T05:13:33Z","finished":"2026-10-18T05:14:07Z","wall_seconds":34,"install_friction":null,"artifacts":["raw/earthtojake-text-to-cad/job-24/plate.step"]}],"smoke_only":true,"ingested":"2026-10-18T15:01:53Z"},"last_test_finished":"2026-10-18T05:14:07Z","results_in":true}