Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Reconstruct a readable parametric ForgeCAD model from an existing CAD or mesh file such as STL, OBJ, 3MF, STEP, or STP.
.claude/skills/forgecad-forgecad-reconstruct-cad-file/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-03 | ✗→✓ | ▲ Improved | 29% | 0% |
| case-08 | ✗→✓ | ▲ Improved | -20% | 0% |
| case-10 | ✗→✓ | ▲ Improved | -14% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 8% | 0% |
| case-12 | ✗→✓ | ▲ Improved | -6% | 0% |
The reference asset is evidence, not the deliverable. The deliverable is a readable, parametric .forge.js model that runs, renders, and scores well against the source. Never return Import.mesh()/Import.step() of the source as the final model unless the user explicitly asks for an import wrapper — imports are for measurement, rendering, and scoring only.
Routing: user wants to KEEP the file as a live component and design around it (bracket, enclosure, mating assembly) → forgecad-build-model (Imported Parts section), not this skill; prepared benchmark/RL episodes → use the task-local benchmark instructions, not the public skill library; inspection-bundle interpretation → forgecad-inspect-model; independent grading after reconstruction → forgecad-grade-model; API and command reference → forgecad skill + CLI.md.
ls --long stats, an iso render, per-object views, sampled sections (invocations in CLI.md; when sharing a renderer server via --port, run renders sequentially).Import.mesh docs.bash forgecad compare 3d path/to/source.stl path/to/candidate.forge.js \ --samples 3000 --json --output /tmp/<slug>-score.json
Alignment: start --align none. Use --align center only when origins clearly differ but scale and orientation match. Use --align center-scale only for exploratory diagnosis — it hides dimensional errors.
| Signal | Diagnosis | |---|---| | Low coverage | Missing or extra surface | | High RMS | Broad proportional mismatch | | High p95/max | Localized outlier feature (protrusion, hole) | | Bounds delta | Size, origin, or scale mismatch | | Volume delta | Mass, shell, cutout, or scale mismatch |
Calibration: 95+ simple prismatic/revolved parts, 90+ ordinary mechanical parts with fillets/cutouts, 80+ acceptable for organic, faceted, or underdetermined sources. Always report raw rms, p95, max, coverage, bounds delta, and volume delta — a high overall score with a large max can hide a missing local feature.
Faceted sources: decide whether tessellation itself is evidence. Matching low-poly faceting raises the score but reduces parametric clarity — prefer analytic intent unless faceting is part of the artifact or required by the acceptance criteria.
The final model must run, render, re-compare at --samples 5000, and pass an inspect compare overlay. Add targeted inspects (forgecad-inspect-model) when the object is multi-part, hollow, thin-walled, or surface-sensitive. Report: source and candidate paths, score JSON path, final metrics, and every known mismatch classified as intentional simplification or remaining work.
Other measured skills in the registry, with their headline benchmark lift.