scad-library-nopscadlib
Skill26 starsChanged 5 months agoMITView on GitHub
This skill should be used when generating OpenSCAD with NopSCADlib, especially electronics enclosures, vitamins, fasteners, boards, fans, connectors, printed assemblies, BOM-aware mechanical parts, and realistic 3D-printer or electronics hardware.
In this repository17 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- developer-workflowSkill
- scad-chatSkill
- scad-codingSkill
- scad-generationSkill
- scad-improvementSkill
- scad-intakeSkill
- scad-library-bosl2Skill
- scad-library-mcadSkill
- scad-library-policySkill
- scad-library-round-anythingSkill
- scad-library-threadsSkill
- scad-planningSkill
- scad-repairSkill
- scad-validation-reviewSkill
- scad-visual-validateSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
16 rules. About 0 are common, 13 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈13
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 13
Use NopSCADlib when include <NopSCADlib/core.scad> is listed in the runtime prompt and the requested part benefits from real-world …
- Distinctive: line 17
Start with the core include only when available:
- Very specific: line 23
Add narrower NopSCADlib vitamins/...
- Distinctive: line 27
Use for electronics enclosures, project boxes, PCB holders, fan mounts, Raspberry Pi/Arduino-style board clearances, screw bosses, inserts, …
- Distinctive: line 28
Use NopSCADlib as reference vocabulary for real components: boards, screws, bearings, fans, connectors, switches, cable glands, rails, …
- Distinctive: line 29
Prefer generated printable carrier geometry around real components rather than modeling every electronic detail.
- Distinctive: line 30
Keep non-printable purchased parts visually useful but clearly separate from the printed part when rendered.
- Distinctive: line 34
Keep the printable part self-contained and parameterized.
- Distinctive: line 61
Keep screw bosses connected to walls or ribs.
- Distinctive: line 62
Add ribs, chamfers, and strain relief where loads enter the enclosure.
- Distinctive: line 63
Do not let visual component placeholders become required printable geometry unless requested.
- Distinctive: line 64
Avoid overfitting to a named board unless exact dimensions are supplied.
- Distinctive: line 68
Do not include broad NopSCADlib files speculatively.
- Distinctive: line 69
Do not invent module names or type constants.
- Distinctive: line 70
Do not copy NopSCADlib source into generated SCAD.
- Very specific: line 71
Do not generate BOM/project automation output inside scad_source.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
SCAD Library NopSCADlib Skill
Use NopSCADlib when include <NopSCADlib/core.scad> is listed in the runtime prompt and the requested part benefits from real-world electronics or mechanical components.
Import
Start with the core include only when available:
include <NopSCADlib/core.scad>Add narrower NopSCADlib vitamins/... or printed/... includes only when the exact module and path are known. Prefer simple printable geometry if uncertain.
Best Uses
- Use for electronics enclosures, project boxes, PCB holders, fan mounts, Raspberry Pi/Arduino-style board clearances, screw bosses, inserts, spacers, and assembly-aware designs.
- Use NopSCADlib as reference vocabulary for real components: boards, screws, bearings, fans, connectors, switches, cable glands, rails, rods, and panels.
- Prefer generated printable carrier geometry around real components rather than modeling every electronic detail.
- Keep non-printable purchased parts visually useful but clearly separate from the printed part when rendered.
Generation Pattern
Keep the printable part self-contained and parameterized. Use real component placeholders only when they improve fit reasoning:
include <NopSCADlib/core.scad>
/* [Enclosure] */
width = 90; // min: 40 max: 220 step: 1
depth = 60; // min: 30 max: 180 step: 1
height = 28; // min: 12 max: 100 step: 1
wall_thickness = 2; // min: 1.2 max: 6 step: 0.2
boss_diameter = 8; // min: 4 max: 16 step: 0.5
screw_diameter = 3; // min: 2 max: 5 step: 0.1
module printable_enclosure() {
difference() {
cube([width, depth, height], center=true);
translate([0, 0, wall_thickness])
cube([width - 2*wall_thickness, depth - 2*wall_thickness, height], center=true);
}
}
printable_enclosure();Quality Rules
- Model clearances explicitly: board clearance, screw clearance, cable clearance, lid/body fit clearance.
- Keep screw bosses connected to walls or ribs.
- Add ribs, chamfers, and strain relief where loads enter the enclosure.
- Do not let visual component placeholders become required printable geometry unless requested.
- Avoid overfitting to a named board unless exact dimensions are supplied.
Avoid
- Do not include broad NopSCADlib files speculatively.
- Do not invent module names or type constants.
- Do not copy NopSCADlib source into generated SCAD.
- Do not generate BOM/project automation output inside
scad_source; keep output focused on renderable OpenSCAD.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

