Grade the delivered CAD model against the requirement, not against what could be fixed later. Use renders and inspection evidence before assigning a score.
This skill is an evaluator workflow. Do not edit the model unless the user explicitly asks for repairs; if repair is requested, first record the baseline grade, then make changes, then re-grade.
-
Extract the requirement.
Convert the user's prompt, design brief, reference image, or acceptance criteria into a short checklist. Separate must-haves from nice-to-haves. If the requirement is vague, grade against the most reasonable literal interpretation and mark uncertain items as Unknown.
-
Identify grading risks.
Decide what could make the model fail: wrong object, missing parts, weak silhouette, hidden internals absent, impossible assembly, collisions, floating bodies, wrong scale, thin walls, poor manufacturing cues, bad parameter behavior, or unclear visual identity.
-
Run the model.
In the ForgeCAD repo, use the local build:
node dist-cli/forgecad.js run path/to/model.forge.js
Outside the repo, use the installed CLI:
forgecad run path/to/model.forge.js
If the script fails to execute, stop normal grading and assign a capped score using the Evidence Caps section.
-
Render multiple views.
Use a scratch output directory such as /tmp/<model-name>-grade. Render at least iso, front, right, and top. Add back, bottom, close-up, section, or custom cameras when the model is asymmetric, hollow, mechanical, or likely to hide mistakes.
node dist-cli/forgecad.js render 3d path/to/model.forge.js /tmp/model-grade/view.png --camera iso --camera front --camera right --camera top --edges bold
If a multi-camera render does not emit separate useful PNGs, rerun one camera at a time with explicit output paths.
-
Visually inspect the PNGs.
Open the rendered images. Do not score from command output alone. Check silhouette, proportions, required visible features, part boundaries, material/color cues, seams, fasteners, interfaces, and whether the model reads as the requested artifact from more than one angle.
-
Run targeted inspections when the risk calls for them.
Use forgecad-render-inspect for inspection bundles. Minimum guidance:
inspect image and inspect objects: visual sanity, object naming, and part identity.
inspect collisions: multi-part fit, interference, and assembled mechanisms.
inspect sections and inspect thickness: shells, enclosures, ribs, bosses, printability, and wall claims.
inspect connectivity: accidental fusion or disconnected solids.
inspect floating: loose bodies without physical support.
inspect depth, inspect normals, or inspect zebra: surface, occlusion, faceting, continuity, or strange protrusions.
Typical command:
node dist-cli/forgecad.js inspect collisions path/to/model.forge.js /tmp/model-grade/collisions --camera iso --force --size 700
python skills/forgecad-render-inspect/summarize_manifest.py /tmp/model-grade/collisions
Read the manifest and inspect the relevant evidence PNGs. Treat unexpected collisions, thin regions, missing sections, wrong component counts, floating bodies, and confusing object colors as evidence, not as warnings to wave away.
-
Score with evidence.
Fill the rubric, apply caps, then give a final 0-10 score. Use whole numbers or .5 increments. Unknowns count against the score.