Batch and automation
The same conversions, run many times or without thinking about them: folders, profiles, right-click actions and scripts.
Convert a whole folder of mixed files
Section titled “Convert a whole folder of mixed files”“I’ve got a folder full of downloads in all different file types. I just want them all ready to use, without doing them one at a time.”
| Input | A folder (subfolders included) of any supported files |
| Output | A DXF for each piece of art, a STEP for each mesh, in an output folder |
| Works with | Downloads from Printables, MakerWorld, Thingiverse, icon packs |
| Available in | Web app · App · Shortcuts · CLI |
shapemason -r ~/Downloads/models -d ~/CAD/convertedWhat it does. Converts each file by its kind: vector art to a DXF sketch, meshes to a STEP solid, going into subfolders.
Why. One action instead of dozens of drag-and-drops.
Tips
- If any output already exists, the CLI refuses the whole batch before
writing anything. Empty the output folder, or pass
--overwriteon purpose. The app and web app ask first. - A batch exits with its worst result, so one broken file reports failure even though the rest converted. Check each file’s result.
- Add
--previewpictures in the same pass if you’re building a catalog.
Save settings for jobs you repeat
Section titled “Save settings for jobs you repeat”“I use the same settings every single time. I want to save them so I can just pick ‘my usual’ and go.”
A laser shop uses the same kerf, DXF version and layers for every customer file; a printer owner always converts downloads the same way.
| Input | Any |
| Output | Any |
| Works with | Any recurring job |
| Available in | Web app · App · Shortcuts · CLI (by saving the command) |
What it does. Turns a set of options, and optionally what to make, into one named choice. See Profiles.
Why. The same result every time, without a forgotten setting.
Tips
- A profile stores only the options you changed, so a better default later reaches profiles that didn’t override it.
- Name profiles for the job, not the settings: “Laser shop: plywood”, not “Offset 0.1 R12”.
Convert from the Finder right-click menu
Section titled “Convert from the Finder right-click menu”“I want to right-click a file on my Mac and choose ‘make this ready for my design app’, without opening anything.”
| Input | Files selected in Finder |
| Output | Converted files next to the originals |
| Works with | Finder |
| Available in | Shortcuts · CLI (Mac only) |
shapemason install-quick-action --name "Extrude 3 mm" --args "extrude --depth 3"shapemason install-quick-action --dry-run # see what it would installshapemason uninstall-quick-action --name "Extrude 3 mm"What it does. Adds a Finder menu item that converts the selected files in the background and posts a notification with any warnings or errors.
Why. Conversion becomes one right-click where the files already are.
Tips
- The CLI’s Quick Action doesn’t need the app; the Shortcuts one uses the app’s profiles.
- On iPad and iPhone, the same shortcut can go in the share sheet instead.
Chain conversion into a bigger automation
Section titled “Chain conversion into a bigger automation”“When a new order comes in, I want the file converted and sent where it needs to go on its own, so I don’t have to babysit it.”
A print farm wants new orders converted, then moved, renamed and handed on automatically.
| Input | Any |
| Output | Any, passed to the next step |
| Works with | Shortcuts actions (Files, AirDrop, Mail), shell scripts, Makefiles, job runners |
| Available in | Shortcuts · CLI |
shapemason mesh-to-solid order.stl --json > result.json || notify-failureshapemason extrude logo.svg --stdout | upload-stepWhat it does. Makes ShapeMason one step in a larger flow.
Why. No human hand-off between download, conversion and the next tool.
Tips
-qkeeps output quiet except for warnings.- Treat exit code 2 (warnings) apart from 1 (failure) in scripts.
Try it before writing anything
Section titled “Try it before writing anything”“I’m about to do a big batch and I’m worried about overwriting files I already have. Can I see what it would do first?”
| Input | Any |
| Output | None until you’re happy |
| Works with | Any |
| Available in | Web app · App · Shortcuts · CLI |
shapemason -r models/ -d out/ --dry-run # reports what it would writeshapemason validate -r models/ # silent unless something needs attentionWhat it does. Runs the conversion and reports, without writing files.
Why. No surprises, and no accidental overwrites.
Tips
- Existing files are never replaced without permission:
--overwriteon the CLI, a question in the app and web app (unless turned off in Settings), Replace Existing Files in Shortcuts.
Keep generated files in version control
Section titled “Keep generated files in version control”“We share all our project files online. I want the ready-to-use versions to come out exactly the same every time, so it doesn’t look like everything changed when nothing did.”
An open-hardware project keeps source SVGs and meshes in Git, with the generated DXF and STEP files beside them for people without ShapeMason.
| Input | Source files in a repository |
| Output | Generated DXF and STEP files, committed |
| Works with | Git, GitHub, CI |
| Available in | Web app · App · CLI |
shapemason -r src/ -d generated/ --overwritegit add generated/ && git commit -m "Regenerate CAD files"What it does. Makes exactly the same bytes for the same input and options, every run, on every platform and in every front end.
Why. Diffs show only real changes, and anyone can reproduce the files.
Tips
- Pin the ShapeMason version; a new version may change output.
- Combine with validation in CI to catch generated files that are out of date.
Move from the app to scripting
Section titled “Move from the app to scripting”“I worked out the right settings by clicking around in the app. Now I want my computer to do the same thing automatically.”
| Input | A conversion set up in the app or web app |
| Output | The equivalent command line |
| Works with | Shell scripts, CI, Quick Actions |
| Available in | Web app · App → CLI |
shapemason command; click Copy.shapemason command; click Copy, or Convert › Copy as Command (⇧⌘C).install-quick-action --args.What it does. Shows the exact CLI command for what the app is doing.
Why. The app is the easiest place to find the right options; the CLI is the easiest place to repeat them.
Tips
- The help text in the options form is the CLI’s, so option names map one to one (Options).