Control OctoPrint 3D printer — monitor status, capture webcam snapshots, manage prints, analyze gcode, and detect errors. Use when the user asks about their 3D printer, print status, filament, temperatures, or wants to start/pause/cancel a print.
Helper script: scripts/octoprint.py (relative to this skill directory).
Config: config.json (same directory) with octoprint_url and api_key.
Resolve all paths relative to this skill's directory.
All commands: python3 <skill-dir>/scripts/octoprint.py <command> [args]
status-pretty — Formatted status with temps, progress bar, ETA (show this to users)status — Raw JSONcheck-errors — Returns JSON with errors/warnings (temp anomalies, stalls, connection issues)print <filename> — Start a printcontrol <pause|resume|cancel> — Control active printtemp <tool0|bed> <temperature> — Set temperaturelist-files — List uploaded filesupload <local-path> [remote-name] — Upload gcodeanalyze <filepath> — Extract gcode metadata (layers, time, filament, temps, dimensions)snapshot [output-path] — Capture webcam image (default: /tmp with timestamp)telegram-status — Send formatted status to Telegramtelegram-snapshot — Send webcam snapshot with progress captiontelegram-msg "message" — Send custom messageCheck on a print: status-pretty → optionally snapshot → check-errors
Start a print: status-pretty (verify Operational) → list-files or upload → optionally analyze → print <file>
Error detection: check-errors returns critical errors (>15°C deviation, connection lost) and warnings (5-15°C deviation, stalled prints). Recommend pausing on temp issues, cancelling on critical errors.
status-pretty output for user display