Advanced Visual Studio Code toolkit for Klipper 3D printer configuration, diagnostics, and Moonraker management.


Overview
Klipper Tools integrates modern IDE capabilities directly into your Klipper configuration workflow. It provides real-time schema validation, intelligent autocompletion, macro navigation, and direct bidirectional communication with 3D printers running Moonraker.
Whether managing complex multi-extruder setups, CAN-bus toolheads, or modular macro libraries, Klipper Tools ensures clean, error-free configurations and eliminates the friction of context-switching between the editor and web interfaces.
Key Capabilities
🧠 Intelligent IntelliSense & Diagnostics
- Schema-Driven Autocomplete: Context-aware completion for standard and dynamic Klipper sections (
[stepper_*], [extruder*], [fan*], [temperature_sensor*], etc.).
- Smart Typo Detection: Distinguishes genuine typographical errors from valid extended/custom parameters (zero false-positives on custom hardware pin definitions).
- G-Code & Macro Intelligence: Syntax highlighting and parameter inspection for G-Code commands and Jinja2 templating syntax.
- Go to Definition: Instantly navigate across multi-file macro architectures.
🌐 Direct Moonraker Integration
- Live Thermal Monitoring: Real-time temperature readings for hotends, heated bed, chamber sensors, MCUs, and CAN-bus boards.
- Multi-Extruder & Multi-MCU Architecture: Dynamic discovery of all active toolheads and auxiliary temperature sensors.
- Status Bar Telemetry: Continuous display of printer state (
Printing, Ready, Shutdown, Error) and target temperatures.
☁️ Bidirectional Remote Configuration Sync
- Workspace Synchronization: Pull the complete active configuration directory from Moonraker into VS Code with one click.
- Direct Upload: Push edited
.cfg files directly to the printer without relying on manual web uploads.
- Workspace Reset: Cleanly purge cached local configuration copies when switching printers.
🎮 Printer Operation & Safety Controls
- Safety Prompts: Critical actions enforce verification to prevent unintended interruptions during active operations.
- Firmware Commands: Trigger
FIRMWARE_RESTART and SAVE_CONFIG with automated session reconnect.
- Emergency Actions: Immediate access to Emergency Stop (
M112) and Axis Homing (G28).
Configuration Settings
| Setting |
Type |
Default |
Description |
klipper.moonraker.url |
string |
http://localhost:7125 |
Moonraker API endpoint (e.g., http://192.168.1.100:7125 or http://mainsail.local) |
klipper.moonraker.apiKey |
string |
"" |
Optional API key for authenticated Moonraker instances |
Command Palette
All core features can be invoked via the Command Palette (Ctrl+Shift+P / Cmd+Shift+P) or through dedicated action buttons in the Klipper sidebar:
| Command |
Identifier |
Description |
| Klipper: Connect to Printer |
klipper.connect |
Establishes connection to the configured Moonraker host |
| Klipper: Disconnect |
klipper.disconnect |
Terminates the active Moonraker session |
| Klipper: Sync All Configs to Workspace |
klipper.syncConfigs |
Downloads remote .cfg files to local workspace |
| Klipper: Upload Current File to Printer |
klipper.uploadFile |
Pushes the active editor file directly to the printer |
| Klipper: Firmware Restart |
klipper.firmwareRestart |
Executes FIRMWARE_RESTART with confirmation prompt |
| Klipper: Save Config |
klipper.saveConfig |
Executes SAVE_CONFIG and reloads configuration |
| Klipper: Home All Axes (G28) |
klipper.homeAll |
Homes all physical axes with safety prompt |
| Klipper: Emergency Stop (M112) |
klipper.emergencyStop |
Immediately halts printer operations |
| Klipper: Clear / Reset Workspace Configs |
klipper.clearLocalConfigs |
Resets cached local workspace configuration files |
Getting Started
- Open your Klipper configuration folder in VS Code.
- Open Settings (
Ctrl+,), search for klipper.moonraker.url, and enter your printer's IP address.
- Click the Connect icon in the Klipper sidebar or the status bar to initiate the session.
Development
# Clone repository
git clone https://github.com/payamnoorzad/vscode-klipper-tools.git
# Install dependencies
npm install
# Compile & bundle
npm run build
# Launch development host
# Press F5 in VS Code
License & Maintainer
This project is licensed under the MIT License.
Developed and maintained by Payam Noorzad.