openscad

OpenSCAD Design Skill

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "openscad" with this command: npx skills add iancanderson/openscad-agent/iancanderson-openscad-agent-openscad

OpenSCAD Design Skill

Create versioned OpenSCAD files, render previews, and compare iterations for 3D printing designs.

Workflow

  1. Determine the Next Version Number

Before creating a new .scad file, find existing versions:

.claude/skills/openscad/scripts/version-scad.sh <name>

This returns the next version number and filename. For example, if piano_001.scad exists, it returns piano_002 .

  1. Create the Versioned .scad File

Write the OpenSCAD code to the versioned filename (e.g., piano_002.scad ).

  1. Render the Preview

.claude/skills/preview-scad/scripts/render-scad.sh <name><version>.scad --output <name><version>.png

This creates a PNG with the matching version number (e.g., piano_002.png ).

  1. Compare with Previous Version

Read both the current and previous PNG images to visually compare:

  • Current: piano_002.png

  • Previous: piano_001.png (if exists)

Evaluate what changed and whether the new version better matches requirements.

  1. Iterate

If the design needs improvement:

  • Analyze what's wrong

  • Create the next version (e.g., piano_003.scad )

  • Render and compare again

File Naming Convention

<model-name><version>.scad -> <model-name><version>.png

Examples:

  • phone_stand_001.scad -> phone_stand_001.png

  • phone_stand_002.scad -> phone_stand_002.png

  • gear_001.scad -> gear_001.png

Use underscores in model names, and always use 3-digit zero-padded version numbers.

Example Session

User asks for a piano model:

Check for existing versions:

.claude/skills/openscad/scripts/version-scad.sh piano

Output: piano_001 (no existing files)

Write piano_001.scad with initial design

Render preview:

.claude/skills/preview-scad/scripts/render-scad.sh piano_001.scad --output piano_001.png

Read piano_001.png to inspect the result

If improvements needed, create piano_002.scad , render to piano_002.png

Read both piano_001.png and piano_002.png to compare iterations

Render Options

See /preview-scad for full rendering options:

  • --size <WxH>

  • Image dimensions (default: 800x600 )

  • --camera <x,y,z,tx,ty,tz,d>

  • Camera position

  • --colorscheme <name>

  • Color scheme (default: Cornfield )

  • --render

  • Full render mode (slower, more accurate)

  • --preview

  • Preview mode (faster, default)

Next Steps

Once the design looks correct in PNG previews:

  • Export to STL: Use /export-stl to convert the final version to STL format

  • The export includes geometry validation to catch printability issues

Full Pipeline

/openscad → /preview-scad → /export-stl (with validation)

Tips

  • Start simple and add complexity in iterations

  • Use meaningful model names that describe the object

  • Keep each version's changes focused on specific improvements

  • Document what changed between versions in your response to the user

  • Only export to STL once the preview looks correct

  • Always run slice-check before considering a model print-ready

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

export-stl

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

preview-scad

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

openscad

No summary provided by upstream source.

Repository SourceNeeds Review