openscad-generator

Generates parametric OpenSCAD models from Python templates and compiles them to STL files.

Updated Sep 2, 2026
One-click install
npx skills add https://github.com/nbiish/tts-mcp --skill openscad-generator-nbiish
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: openscad-generator
Source: https://github.com/nbiish/tts-mcp/tree/main/.agents/skills/openscad-generator
Command: npx skills add https://github.com/nbiish/tts-mcp --skill openscad-generator-nbiish

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Manually writing and compiling dozens of OpenSCAD files for model variations is repetitive and error-prone. This Skill automates the generation of parameterized 3D model catalogs and their compilation into STL files for 3D printing. ## Core Features & Use Cases - Template-Based Generation: A Python script injects parameters into an OpenSCAD template to produce multiple .scad model variants. - Automated STL Compilation: A Makefile detects the OpenSCAD executable across platforms (including macOS /Applications paths) and incrementally compiles only modified .scad files into .stl files. - Use Case: You need a catalog of enclosure boxes in 20 different size combinations for 3D printing. Define the variants in Python, run make, and receive a folder of ready-to-print STL files. ## Quick Start Ask the AI to generate a parametric OpenSCAD catalog with your desired dimensions and compile all variants into STL files using the Makefile workflow.

Frequently Asked Questions about openscad-generator

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I generate multiple STL files from one OpenSCAD template?▼

Write a Python script that loops over parameter combinations and formats an OpenSCAD template string, writing one .scad file per variant. Then use a Makefile to compile each .scad file into an .stl with the OpenSCAD CLI.

How to automate OpenSCAD compilation with a Makefile?▼

Define a pattern rule mapping scad_models/%.scad to stl_models/%.stl and invoke openscad with -o output input. Use wildcard and patsubst so only modified .scad files are recompiled on each run.

Why does Python string formatting break my OpenSCAD code?▼

OpenSCAD uses curly braces for blocks, which Python's str.format interprets as placeholders. Double every literal brace ({{ and }}) in the template so only your named parameters are substituted.

Does OpenSCAD CLI work on macOS for batch STL export?▼

Yes, but the binary lives inside the app bundle at /Applications/OpenSCAD.app/Contents/MacOS/OpenSCAD rather than on the PATH. The Makefile detects this location automatically when the openscad command is not found.

What are the limitations of generating STLs with OpenSCAD?▼

OpenSCAD is code-only with no interactive modeling, so complex organic shapes are difficult to express. Compilation of large catalogs can also be slow since each variant renders independently through the CLI.