Operate and troubleshoot BambuLab printers with the bambu-cli (status/watch, print start/pause/resume/stop, files, camera, gcode, AMS, calibration, motion, fans, light, config, doctor).
SkillScore100Maintained
Automatic
◆Coding pack
Last verified 8/19/2026
What it changes
Passed 22 of 22 test cases with the skill, and 8 of 22 without it.
Without skill36%
With skill100%
Checks it passed that the model alone missed
Includes the --force flag
Uses the doctor subcommand
Specifies the --plain flag
and 11 more in the full report
14 fixed8 passed either way0 still failing0 broke
Pass-rate lift
+64 pp
Tokens
-7%
Agent turns
0%
Response time
-63%
Model gemini-3.6-flashMeasured 8/19/2026v122 of 22 cases passed with skill
Tokens, turns and time describe resource use, not a dollar price.
What's inside
The instructions your model reads when the skill loads.
SKILL.md60 lines2 files
Bambu CLI
Overview
Use bambu-cli to configure, monitor, and control BambuLab printers over MQTT/FTPS/camera, producing exact commands and safe defaults.
Defaults and safety
Confirm the target printer (profile or IP/serial) and resolve precedence: flags > env > project config > user config.
Avoid access codes in flags; use --access-code-file or --access-code-stdin only.
Require confirmation for destructive actions (stop print, delete files, gcode send, calibrate, reboot); use --force/--confirm only when the user explicitly agrees.
Offer --dry-run when supported to preview actions.
Choose output format: human by default, --json for structured output, --plain for key=value output.
Quick start
Configure a profile: bambu-cli config set --printer <name> --ip <ip> --serial <serial> --access-code-file <path> --default
Camera snapshot: bambu-cli camera snapshot --out snapshot.jpg
Task guidance
Setup & config
Use config set/list/get/remove to manage profiles.
Use env vars to avoid flags in scripts: BAMBU_PROFILE, BAMBU_IP, BAMBU_SERIAL, BAMBU_ACCESS_CODE_FILE, BAMBU_TIMEOUT, BAMBU_NO_CAMERA, BAMBU_MQTT_PORT, BAMBU_FTP_PORT, BAMBU_CAMERA_PORT.
Note config locations: user ~/.config/bambu/config.json, project ./.bambu.json.
Monitoring
Use status for a one-off snapshot; use watch for periodic updates (--interval, --refresh).
Use --json/--plain for scripting.
Printing
Use print start <file> with .3mf or .gcode.
Use --plate <n|path> to select a plate number or gcode path inside a 3mf.
Use --no-upload only when the file already exists on the printer; do not use it with .gcode input.
Control AMS: --no-ams, --ams-mapping "0,1", --skip-objects "1,3".
Disable flow calibration with --flow-calibration=false if requested.
Files and camera
Use files list [--dir <path>], files upload <local> [--as <remote>].
Use files download <remote> --out <path|->; use --force to allow writing binary data to a TTY.