dfam-check
An agent skill by earthtojake, from earthtojake/text-to-cad. Tags: analytics, automation, design, evaluation, local-workflow.
What it does
Measure mesh files against Design for Additive Manufacturing (DfAM) rules and report printability findings per process (FDM, SLS, SLA/DLP, metal PBF, MJF). Use when the user asks whether a part is printable, wants overhang/wall-thickness/support analysis of an `.stl`, `.obj`, `.ply`, or `.3mf` mesh, wants a build-orientation recommendation, or wants DfAM redesign guidance before slicing with `$gcode` or regenerating geometry with `$cad`.
Install
With the skills CLI, which installs into Claude Code, Codex, Cursor and other agents:
npx skills add earthtojake/text-to-cad --skill dfam-check
Or copy the skill folder into Claude Code's skills directory by hand (~/.claude/skills for every project, or .claude/skills inside one):
git clone --depth 1 https://github.com/earthtojake/text-to-cad
cp -r text-to-cad/skills/dfam-check ~/.claude/skills/dfam-check
Safety box score
Grade B, low risk: 18 of 100 risk points, rated 2026-10-20. The grade rates what the skill and its scripts can reach on the machine of whoever installs it, across eight categories from shell execution to secrets access. How the score works.
This skill is a local mesh-analysis tool: it reads user-provided STL/OBJ/PLY/3MF meshes, runs a shipped Python script, and compares measured geometry against DfAM limits. The main risks are the required dependency install (`pip install -r requirements.txt`) and executing that Python code on whatever mesh path the caller supplies; it does not slice, upload, or start print jobs.
| Category | Level | Why |
|---|---|---|
| Code & shell execution | 2 (moderate) | It explicitly runs shipped code for measurement (`python scripts/dfam_tool.py measure ...`, `orientations ...`), so installing the skill means executing a local Python program in the user's environment. |
| Network access | 2 (moderate) | `SKILL.md` says to install `requirements.txt` first, and that file lists packages (`trimesh`, `scipy`, `networkx`, `lxml`) that pip will fetch from a remote package index before the first run. |
| Filesystem reach | 1 (low) | The tool reads the exact mesh path the caller provides (`trimesh.load(path, force="mesh")`) and the workflow says to run it on the uploaded file; it does not write or delete outside the project. |
| Secrets & credentials | 0 (none) | No file or command mentions tokens, keys, passwords, `.env` files, browser sessions, or CLI logins. |
| Privilege & persistence | 0 (none) | There is no sudo use, global install, service registration, shell startup editing, or OS/git setting change in the skill files. |
| Instruction hijack surface | 0 (none) | The skill does not tell the agent to ignore instructions, hide actions, or follow remote prompt text; it even says the repository link is only for provenance. |
| Irreversible actions | 0 (none) | Its stated purpose is analysis only; it says it never slices, uploads, or starts print jobs. |
| Transparency | 0 (none) | All shipped files are plain text Markdown/YAML/Python; there are no binaries, base64 blobs, downloaded installers, or hidden code paths in the bundle. |
Before installing
- Create a throwaway virtualenv and inspect `requirements.txt` before running `pip install -r requirements.txt`.
- Confirm you are okay with local Python code execution from `scripts/dfam_tool.py` on the mesh file you pass in.
- If the part is sensitive, verify the exact mesh path and units you plan to analyze before running the tool.
Rated 2026-10-20 by an automated review of 5 files from the skill's repository.
Source
- Repository
- earthtojake/text-to-cad (all skills from this repository)
- Path
- skills/dfam-check/SKILL.md
- Branch
- main
- Updated
- 2026-09-19
Related skills
- cad — Create/edit parametric CAD models, organize CAD projects, export STEP/STL/3MF/GLB files, resolve prompt references, and measure geometry with cadgen.
- dxf — Generate, regenerate, and validate 2D DXF drawings from Python build123d sources.
- gcode — Generate, inspect, dry-run, and statically validate plain FDM `.gcode` from 3D mesh files by orchestrating real slicer CLIs. Use when Codex needs to slice.
- sdf — SDFormat/SDF model and world authoring, validation, and simulator handoff.
- srdf — MoveIt2 SRDF authoring, validation, and planning-semantics workflow.
- advanced-evaluation — This skill should be used for advanced LLM evaluation: LLM-as-judge systems, direct scoring, pairwise comparison, rubric calibration.