# Backend capabilities ## build123d through CAD Skill Use as the default STEP-first backend. Best fit: - Brackets, connecting rods, cranks, levers, shafts, bushings, flanges, plates, housings, covers, enclosures, fixtures, and machined features. - Parametric Python sources with holes, pockets, slots, bosses, ribs, shells, fillets, chamfers, lofts, sweeps, and revolves. - Source-level assemblies, named datums, joints, imported components, measurements, alignment checks, and existing STEP inspection. - STEP primary output with STL, 3MF, or GLB sidecars. Weak signals: a specialized mechanical family already implemented by SimpleCADAPI, SCAD-native output, browser-only execution, or decorative repeated CSG where OpenSCAD is substantially shorter. ## SimpleCADAPI Use for its standard mechanical factories and replayable modeling graph. Best fit: - Spur, helical, and herringbone gears; internal ring gears; racks; cycloidal discs; ball bearings. - Planetary and cycloidal reducers, joint actuators, and mechanism-heavy assemblies. - Parameter expressions, operation-graph JSON, replay, semantic tags, topology queries, and FreeCAD translation. - Reusable mechanical product families whose formulas should become deterministic library functions. Before invocation, inspect the installed package and Skill versions together. Do not mix the current single-`Solid` boolean API with older `*rsolidlist` documentation. If the installed runtime and docs disagree, stop that route and use build123d or repair the installation. ## CADAM Use CADAM's separately installed OpenSCAD WASM runtime for fast CSG authoring and printable parameterized models. Execute generated SCAD through `scripts/cadam_compile.mjs`; do not copy CADAM's GPL runtime into this Skill. Best fit: - Vases, containers, knobs, adapters, printable threads, lattice/honeycomb patterns, repeated details, decorative models, and quick concept geometry. - SCAD source, STL output, simple projected DXF, and UI-facing parameter controls. - BOSL/BOSL2/MCAD-backed printable features. Do not use as the primary route for editable STEP, stable face/edge references, fit-critical source-level assemblies, or modification of imported STEP. ## Router refinement and repair Use text-to-cad's own requirement expansion and visual repair when requirements are vague, reference images carry important intent, or visual complexity makes one-pass generation unreliable: 1. Refine the request into a measurable brief. 2. Confirm important fit- or safety-critical unknowns. 3. Generate and execute backend source. 4. Validate deterministic geometry facts. 5. Inspect a multi-view render against the brief. 6. Repair visual mismatches, capped at three automatic visual rounds. ## Focused downstream Skills - `$dxf`: 2D profiles, flat patterns, laser/plasma/waterjet drawings. - `$urdf`, `$srdf`, `$sdf`: robot structure, MoveIt semantics, and simulation models/worlds. - `$gcode`: slice validated meshes with a real slicer. - `$sendcutsend`: vendor-specific manufacturing preflight. - `$bambu-labs`: cautious local printer handoff. - `$cad-viewer`: visual review of supported generated artifacts.