com um clique
enclosure-export
Export OpenSCAD enclosure parts to STL files for 3D printing
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Menu
Export OpenSCAD enclosure parts to STL files for 3D printing
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Baseado na classificação ocupacional SOC
Full PCB verification loop using local kicad-cli (DRC + 3D render + gerbers)
Create a new Claude Code skill for this project. Use when you need to add a new skill, improve an existing skill, or convert a workflow into a reusable skill.
Verifies that every PCB pad-to-net assignment matches the manufacturer datasheet pin specifications. Use when changing board.py/routing.py/footprints.py, after GPIO remapping, before releases, or when adding new components. Automated guard against wiring errors like unconnected VBUS, wrong pin assignments, or missing GND connections.
Design intent adversary — cross-checks GPIO, nets, power chains, signal paths across firmware/schematic/PCB/datasheet sources to find lost connections and inconsistencies
Analyze a DFM report and fix all issues in the PCB generation scripts
Run DFM guard tests and add new regression tests after fixing PCB issues
| name | enclosure-export |
| model | claude-haiku-4-5-20251001 |
| description | Export OpenSCAD enclosure parts to STL files for 3D printing |
| disable-model-invocation | true |
| allowed-tools | Bash, Read, Glob |
| argument-hint | ["all|top|bottom|buttons|dpad|abxy"] |
Export individual enclosure parts to STL files for FDM/SLA 3D printing.
Argument (optional): all (default), or specific part name.
Docker must be running with the OpenSCAD image built:
cd /Users/pierrejonnycau/Documents/WORKS/esp32-emu-turbo
docker compose build openscad
cd /Users/pierrejonnycau/Documents/WORKS/esp32-emu-turbo
mkdir -p hardware/enclosure/stl
# Top shell (display side)
docker compose run --rm openscad \
-o /output/case_top.stl \
-D 'part="case_top"' \
/project/enclosure.scad
# Bottom shell (battery side)
docker compose run --rm openscad \
-o /output/case_bottom.stl \
-D 'part="case_bottom"' \
/project/enclosure.scad
# D-pad cap
docker compose run --rm openscad \
-o /output/dpad.stl \
-D 'part="part_dpad"' \
/project/enclosure.scad
# ABXY button caps (4 individual)
for btn in a b x y; do
docker compose run --rm openscad \
-o "/output/btn_${btn}.stl" \
-D "part=\"part_btn_${btn}\"" \
/project/enclosure.scad
done
# Start, Menu, Select caps
for cap in start menu select; do
docker compose run --rm openscad \
-o "/output/${cap}.stl" \
-D "part=\"part_${cap}\"" \
/project/enclosure.scad
done
# Shoulder buttons
docker compose run --rm openscad \
-o /output/shoulder_l.stl \
-D 'part="part_shoulder_l"' \
/project/enclosure.scad
docker compose run --rm openscad \
-o /output/shoulder_r.stl \
-D 'part="part_shoulder_r"' \
/project/enclosure.scad
docker compose run --rm openscad \
-o /output/<part_name>.stl \
-D 'part="<part_selector>"' \
/project/enclosure.scad
| Part | Selector | Print Notes |
|---|---|---|
| Top shell | case_top | Print upside-down (flat face down) |
| Bottom shell | case_bottom | Print as-is (flat face down) |
| D-pad | part_dpad | Print cap-face down |
| Button A | part_btn_a | Print cap-face down |
| Button B | part_btn_b | Print cap-face down |
| Button X | part_btn_x | Print cap-face down |
| Button Y | part_btn_y | Print cap-face down |
| Start | part_start | Print cap-face down |
| Menu | part_menu | Print cap-face down |
| Select | part_select | Print cap-face down |
| Shoulder L | part_shoulder_l | Print cap-face down |
| Shoulder R | part_shoulder_r | Print cap-face down |
ls -la website/static/img/renders/*.stl 2>/dev/null || ls -la hardware/enclosure/stl/*.stl 2>/dev/null
hardware/enclosure/enclosure.scad — Main enclosure (all part selectors)hardware/enclosure/modules/*.scad — Component modulesdocker-compose.yml — OpenSCAD Docker servicewebsite/docs/enclosure.md — Design documentation