From bambu-slicer
Unified 3D printing pipeline for Bambu Lab printers. USE WHEN user says: "print", "3d print", "slice", "slice this", "make me", "design a part", "model this", "STL", "3MF", "makerworld", "browse models", "find me a", "printer status", "check printer", "what's printing", "prepare for printing", "generate 3MF", "fit on one plate", "multi-object plate", "storage", "organizer", "mount", "holder", "bracket", "gridfinity", or provides STL files, photos of things to design, or MakerWorld links. Covers design (OpenSCAD MCP), browse (MakerWorld via agent-browser), slice (OrcaSlicer-backed CLI), multi-plate arrangement, and printer control (Bambu MCP). This is the only skill for anything 3D-printing related.
How this skill is triggered — by the user, by Claude, or both
Slash command
/bambu-slicer:bambu-slicerThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
End-to-end workflow for Bambu Lab printers: design custom models, browse MakerWorld for existing ones, slice STLs to print-ready 3MF, arrange multi-object plates, and control the printer — all from the CLI plus surrounding MCPs.
End-to-end workflow for Bambu Lab printers: design custom models, browse MakerWorld for existing ones, slice STLs to print-ready 3MF, arrange multi-object plates, and control the printer — all from the CLI plus surrounding MCPs.
Before slicing anything, verify the user has run plugin setup once:
${CLAUDE_PLUGIN_ROOT}/cli/node_modules exists. If not, instruct: cd "${CLAUDE_PLUGIN_ROOT}/cli" && bun install./Applications/OrcaSlicer.app/Contents/MacOS/OrcaSlicer, override via ORCA_CLI_PATH)..claude/bambu-slicer.local.md for printer-specific overrides (machine profile, output dir, printer IP). See plugin README.If any step fails, surface a clear error before attempting to slice.
When the user describes something they need or sends a photo, design it with the openscad MCP tools.
Best for: Functional/geometric parts — storage bins, cable organizers, shelf brackets, phone stands, gridfinity inserts, drawer dividers, wall mounts, enclosures, clips, hooks.
Not suited for: Organic/sculpted shapes (use MakerWorld instead).
Workflow:
openscad MCP → create_scad_script.render_preview. Show the user for approval.export_stl.Design tips:
$fn=64 or higher for smooth curves.For tested constants on tray/shelf/riser-style parts, see references/gotchas.md.
When the user wants to find existing models, use the agent-browser skill to drive MakerWorld.
Workflow:
https://makerworld.com/en/search/models?keyword={query}.references/gotchas.md on remixing)./tmp/makerworld/).Notes:
The core slicing engine. Takes STL files and produces print-ready 3MF using OrcaSlicer with patched Bambu Studio profiles.
CLI usage:
# Single file, default settings (0.20 mm Standard, Bambu PLA Basic)
bun run "${CLAUDE_PLUGIN_ROOT}/cli/cli.ts" --input model.stl --output model.3mf
# Custom quality
bun run "${CLAUDE_PLUGIN_ROOT}/cli/cli.ts" --input model.stl --output model.3mf --quality 0.12
# Custom filament
bun run "${CLAUDE_PLUGIN_ROOT}/cli/cli.ts" --input model.stl --output model.3mf --filament "Bambu PETG Basic"
# Multiple objects on one plate (space-separated)
bun run "${CLAUDE_PLUGIN_ROOT}/cli/cli.ts" --input "box.stl cylinder.stl hook.stl" --output plate.3mf
# List available profiles
bun run "${CLAUDE_PLUGIN_ROOT}/cli/cli.ts" --list-profiles
For the full quality + filament tables, see references/profiles.md.
Output location: Default to /tmp/ for quick prints, or whatever directory the user has configured (outputDir in .claude/bambu-slicer.local.md).
When the user has multiple STLs to print at once, combine them on one plate:
bun run "${CLAUDE_PLUGIN_ROOT}/cli/cli.ts" \
--input "part-a.stl part-b.stl part-c.stl" \
--output combined-plate.3mf
The slicer auto-arranges and auto-orients all objects. Use this for batch printing — saves time vs. printing each object separately. See references/gotchas.md for bed-margin caveats.
Use the bambu-printer MCP tools for printer interaction. These tools are available after Claude Code restart.
| Task | MCP Tool |
|---|---|
| Check printer status | get_printer_status |
| List printers | list_printers |
| Pause current print | pause_print |
| Resume paused print | resume_print |
| Stop/cancel print | stop_print |
| Connect via MQTT (local) | mqtt_connect |
| Get real-time status | printer_get_status |
| Stream camera | Camera tools |
| Check AMS filament | AMS tools |
Developer Mode required for local control: If the user enables Developer Mode on the printer touchscreen (Settings → Network → LAN Only Mode → Developer Mode), full local MQTT control is available including sending prints directly. Without it, cloud-based status monitoring still works.
When the user wants to maximize a print session:
User wants to 3D print something
├── Has specific STL file(s)? → Slice (Section 3)
├── Wants something custom? → Design (Section 1)
├── Wants to browse for a model? → MakerWorld (Section 2)
├── Multiple things to print? → Multi-plate (Section 4)
├── Asking about printer state? → Printer Control (Section 5)
└── "Print night" / batch session? → Batch Workflow (Section 6)
inherits chains are resolved inline so OrcaSlicer can read the profile out-of-tree (parent profiles like fdm_bbl_3dp_001_common carry printable_area etc., and OrcaSlicer can't follow inherits across a one-off patched file in tmp).bambu-printer MCP configured with the printer's serial and LAN IP.Read references/gotchas.md whenever the user asks for a print — especially a remix from MakerWorld. Covers:
--arrange on near-bed-sized parts.New 3D-printing lessons go in references/gotchas.md. The skill auto-loads it on next session.
Guides completion of development work by verifying tests, detecting environment, and presenting structured options for merge, PR, or cleanup.
Guides creation and editing of skills using test-driven development with pressure scenarios and subagents to verify agent compliance.
Dispatches multiple subagents concurrently for independent tasks without shared state. Use when facing 2+ unrelated failures or subsystems that can be investigated in parallel.
npx claudepluginhub aojdevstudio/agentic-utilities --plugin bambu-slicer