FreeCAD
Parametric solid modelling in a live FreeCAD 1.x window.
Kind: GUI bridge · Document: .FCStd · Install: brew install --cask freecad · winget install FreeCAD.FreeCAD · Override: CXDDIE_FREECAD
Cxddie launches FreeCAD with bridges/freecad/cxddie_bridge.py. Agents run Python inside the FreeCAD GUI process.
What agents get
run_code runs Python with these in scope:
App/FreeCAD,Gui/FreeCADGuidoc— the active document
Other modules (Part, PartDesign, Sketcher, Draft) can be imported. The document is recomputed after each call and the edit is one undo step. print() output and the value of a final expression are returned.
Conventions agents are told
- Units are millimetres.
- Prefer parametric modelling: PartDesign Body + Sketch + Pad / Pocket / Fillet, or Part primitives and booleans for simple parts.
- Give objects meaningful Labels.
- Workflow:
get_scene→run_code→screenshot→save, andexportfor STEP / STL / GLB.
import Part
plate = Part.makeBox(60, 30, 6)
hole = Part.makeCylinder(2.5, 6, App.Vector(40, 15, 0))
doc.addObject("Part::Feature", "Plate").Shape = plate.cut(hole)