Skip to content
Development
Skill

/forgecad-inspect-model

Select, run, and interpret ForgeCAD inspection evidence for collisions, sections, wall thickness, components, masks, depth, normals, surface continuity, and fit.

From plugin
public-kit
91710 skills
Install
$ npx -y skills add ForgeCAD/forgecad-public-kit --skill forgecad-inspect-model --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/forgecad-inspect-model

Context preview

The summary Claude sees to decide when to auto-load this skill.

Select, run, and interpret ForgeCAD inspection evidence for collisions, sections, wall thickness, components, masks, depth, normals, surface continuity, and fit.

SKILL.md

forgecad-inspect-model.SKILL.md
name: forgecad-inspect-model
description: Select, run, and interpret ForgeCAD inspection evidence for collisions, sections, wall thickness, components, masks, depth, normals, surface continuity, and fit.
forgecad-public: true

Inspect Model

Use `forgecad inspect ...` when a shaded render is too ambiguous and you need structured evidence: a bundle directory with evidence PNGs plus a root `manifest.json` (or, for `inspect section`, a probe directory with `result.json`, `section.svg`, `section.png`). Inspection is not a substitute artifact: look inside with sections, masks, `--focus`/`--hide`, and transparency — never edit the model into a cutaway or exploded default to make inspecting easier. Output dirs: let `inspect` allocate its timestamped directory by default (repeated probes never collide); use `/tmp/<model>-inspect` for throwaway bundles, a project directory only for persistent artifacts.

Routing: authoring/API questions → `forgecad` skill; creating a new model → `forgecad-build-model`.

Workflow

1. **Identify the failure question.** What would make the model wrong: overlap, thin walls, hidden cavity failure, disconnected or accidentally fused bodies, floating parts, orientation artifacts, identity confusion? 2. **Confirm the model executes.** If in doubt, run `forgecad run model.forge.js` first; add `--debug-imports` for suspect imports. 3. **Pick ONE targeted evidence command** from the table below. `forgecad inspect evidence` lists everything available. 4. **Summarize the manifest first**, then use `jq` against `manifest.json` for targeted follow-up. The helper ships beside this SKILL.md — invoke it skill-dir-relative; it accepts the bundle directory or a `manifest.json` path:

   python <this-skill-dir>/summarize_manifest.py /tmp/model-inspect

5. **Inspect the PNGs, not only the JSON.** View identity/context images first, then the risk evidence's view, then orthogonal cameras (`front`, `right`, `top`) when iso hides the issue, sections only when internals matter. In automation, resolve file paths through the manifest — custom cameras break canonical filenames. 6. **Isolate intentional overlaps** with `--focus "A,B"` or `--hide "C"` so the remaining report stays meaningful. 7. **Treat findings as model bugs**: unexpected collisions, critical thin regions, high unresolved thickness area, wrong component counts, floating bodies, or surprising gaps mean fix the model and reinspect. 8. **Report honestly.** Include the exact command, bundle path, manifest highlights, and the PNG views actually inspected. Never claim geometry is verified if you only ran `forgecad run`.

Evidence Selection

| Question | Evidence command | |----------|------------------| | Quick visual sanity | `inspect visual image` | | Kinematic rig, joints, axes, and links | `inspect visual rig` | | Object naming and identity | `inspect visual objects` | | Exact local section measurement, bore widths, rib thickness through a chosen line | `inspect section --ray ...` | | Hidden internals, cavities, pockets, screw paths, captured components | `inspect sections at\|stack\|sample` | | Multi-part interference, fit checks, ghost parts, moving clearances | `inspect fit interference` | | Printability, shell walls, ribs, bosses, snaps, slots | `inspect manufacture thickness` plus `inspect sections at\|stack\|sample` when internals matter | | Parts without a mesh-contact path to the ground | `inspect physical floating` | | Accidental fusion, connected solids | `inspect physical components` | | Air gaps between physical components | `inspect physical gaps` | | Surface orientation, occlusion, faceting, strange protrusions | `inspect visual depth` or `inspect visual normals` | | Loft, fillet, skin, and sweep surface continuity | `inspect surface zebra` or `inspect visual normals` | | Reference-vs-candidate reconstruction comparison | `inspect compare overlay --with reference.3mf` |

Section Probe + Replay

The agent-native measure-then-recheck loop:

forgecad inspect section model.forge.js --plane yz --ray bore:-20,0:20,0
forgecad inspect replay outputs/inspect/<probe>/result.json --source candidate.forge.js

The probe's `result.json` field contract (frames, rulers, gaps, replaySpec) is documented in the forgecad skill's `docs/guides/inspection-bundles.md`.

Misread Traps

  • Face-touching is not a collision; collision findings are positive-volume overlaps.
  • Gray/unresolved thickness area means the evidence is incomplete, not that the model is safe.
  • Distance/gap figures are bbox-gap metrics between components, not closest-surface distances.
  • Depth, normals, and zebra are visual aids (heatmap, camera-view normals, stripe shader), not exact measurements or curvature proofs.
  • Resolve mask colors through the manifest's object list, never by object order.

Reference

Bundle/manifest contract, evidence semantics, and current limits: the forgecad skill's `docs/guides/inspection-bundles.md`. CLI flags and command tree: its `docs/CLI.md`.

Read more
Ships withpublic-kit

Public examples, agent skills, docs links, and issue tracking for ForgeCAD. ForgeCAD is code-first parametric CAD for JavaScript/TypeScript: a normal .forge.js file becomes a live model with parameters, assemblies, validation, renders, inspections, and

Get the whole plugin