Skill detail
cad
Creates and edits parametric CAD models with cadgen, exports STEP/STL/3MF/GLB, and reviews geometry in a CAD viewer. Adjacent 3D modeling but a different toolchain than Blender.
Why we recommend it: Parametric CAD modeling via build123d/cadgen; adjacent 3D modeling but not Blender's mesh/sculpt/animation workflow.
Inspect before use
Read the source instructions and check the requirements before you install this skill.
SKILL.md
The saved excerpt is a snapshot from when this skill was listed. The external source remains the complete and most current version.
--- name: cad description: Create/edit parametric CAD models, organize CAD projects, export STEP/STL/3MF/GLB files, resolve prompt references, and measure geometry with cadgen. Open and visually review existing STEP/STP, STL, 3MF and GLB files in CAD Viewer. license: MIT --- # CAD modeling and inspection Provenance: maintained in [earthtojake/text-to-cad](https://github.com/earthtojake/text-to-cad). Use the installed local skill files for the current interface. ## Start with the task Read only the references needed for the request. | Task | First action | Reference | | --- | --- | --- | | **Create or edit a part or assembly** | Find the existing Python model, or create a decorated model below; edit source and run `python <model>.py`. | [Model contract](references/step-generation.md), [shape construction](references/build123d-modeling.md); [positioning](references/positioning.md) for assemblies | | **Organize a CAD project** | Follow its existing layout; for a new multi-model project use `src/`, format output folders, and a model catalog. | [Project layout](references/project-layout.md), [minimal starters](references/project-template.md) | | **Export STL, 3MF or GLB** | Add a mesh decorator for a maintained output, or run the format's `build INPUT.step OUT` command for a one-off export. | [Mesh exports](references/supported-exports.md) | | **Resolve a reference from a prompt** | Identify its saved STEP/STP document, open it with `read_scene`, and call `scene.resolve(ref)` as shown below. | [Reference syntax and inspection](references/inspection-and-validation.md#reference-syntax) | | **Measure or check geometry** | Write a Python check using native build123d geometry and, where useful, `cadgen.geometry`. | [Inspection and validation](references/inspection-and-validation.md) | | **Model from an image or drawing** | Extract the specified dimensions and record meaningful assumptions. | [Interpreting the request](references/cad-brief.md) | | **Open an existing STEP/STP, STL, 3MF or GLB** | Show it to the user. | [Show the model](#show-the-model) | | **Review appearance or motion** | Snapshot the saved document; use declared kinematics or animation for poses and clips. | [Snapshots](references/snapshot-review.md), [kinematics](references/kinematics.md) | | **Diagnose a failure** | Read the error and check the relevant model, geometry or command contract. | [Repair loop](references/repair-loop.md), [version migration](references/migrations.md) | | **A message says to migrate** | Do the migration now; an unmigrated model silently loses kinematics, materials and animation. | [Version migration](references/migrations.md) | For 2D DXF drawings use `$dxf`; this skill owns any 3D part the drawing projects. Use the corresponding robot-description skill for URDF, SRDF or SDF. ## Setup and paths Run cadgen through [uv](https://docs.astral.sh/uv/), so this skill's commands share one installation, and its warm build daemon, with the CAD app's server: - `cadgen` below means `uvx --no-config --managed-python --python 3.13 --from cadgen==0.7.17 cadgen` - `python` below means `uvx --no-config --managed-python --python 3.13 --from cadgen==0.7.17 python` The first run downloads that installation and the first snapshot its headless browser; later runs reuse both. `cadgen doctor <skill-dir>` reports the installation in use and checks that it is the one this skill pins, and that the CAD kernel loads; use it for installation or kernel load errors. Use the relevant subcommand's `--help` for additional flags. Run project commands from the CAD project root. CLI input/output paths and `read_scene`/`read_step` paths are working-directory-relative; decorator `out=` paths are **relative to the model script**. Anchor file inputs on `__file__` when the model must run from any directory. ## Create or edit a model A model is a plain Python script with a parameterless decorated function returning a build123d shape. Use one model per entrypoint, with thRead the full source on GitHub (opens external page)