ntg-bambu-gpt
v1.0.9
Published
Terminal assistant that guides Bambu Studio print settings with GPT-5 suggestions.
Maintainers
Readme
Bambu Assistant CLI
Command-line helper that walks you through nozzle/material/filament selection and asks a GPT-5 assistant specialized in Bambu Studio for precise settings.
Strumento da terminale per configurare in modo guidato il contesto di stampa (ugello, materiale, filamento) e interrogare un assistente GPT-5 specializzato in Bambu Studio.
🇬🇧 English
Overview
- Guided startup asks for your language (Italian or English) before anything else.
- Interactive API-key helper: if no key is found, you can paste it, pick Terminal vs PowerShell, and get the command to persist it.
- Structured menus (process → group → subcategory) with
back/exitnavigation. - Responses are always JSON with the three required fields plus a colorized console summary.
- Current release (v1.0.8) is battle-tested both in the CLI and in the browser UI.
Requirements
- Node.js 18+
- OpenAI API key with access to
gpt-5-mini-2025-08-07 - Internet connectivity (HTTPS requests)
Stability
This version is intentionally conservative: CLI prompts guard every choice, the browser UI validates every field, and OpenAI requests include timeouts/retries to avoid hanging sessions. You can rely on it for daily use or to onboard teammates without worrying about hidden flags or experimental flows.
Quick start (no Node experience required)
- Install Node.js 18 or newer from nodejs.org (download, click “Next” until it completes).
- Open your terminal (on Windows use PowerShell, on macOS use Terminal).
- Run
npx ntg-bambu-gptand follow the guided questions; it asks for the language, API key, and every menu step. - Prefer the web UI? Still in the project folder run
npm run web, then open http://localhost:4173 and follow the same guided panels—no extra setup needed. - If you ever forget a variable or click the wrong option, type
back/exit(CLI) or use the dropdown reset (web). The assistant protects you from invalid combinations.
Installation
Quick try:
npx ntg-bambu-gptGlobal install:
npm install -g ntg-bambu-gpt
ntg-bambu-gptLocal run:
node bambu-gpt.jsVersion & updates
- Check the globally installed version (if any):
npm list -g ntg-bambu-gpt. - See the latest version published on npm:
npm view ntg-bambu-gpt version. - Update your global install:
npm update -g ntg-bambu-gpt.
Web interface
- Start the HTML UI with
npm run web(serves on http://localhost:4173). - After a global install you can launch it from anywhere with
ntg-bambu-gpt-ui(same default port, override withPORT=4300 ntg-bambu-gpt-ui). - The browser view mirrors the CLI flow (language, API key, print context with nozzle type/material/diameter + filament, process → group → subcategory, field configuration).
- The UI stores the API key only in your browser if you enable the toggle; otherwise it is sent for the active session only.
- Responses render as JSON with the same three fields required by the CLI.
Recommended setup
- Clone the repo.
- (Optional)
chmod +x bambu-gpt.js. - Export
NTG_BAMBU_GPT_API_KEYorOPENAI_API_KEY. If missing, the CLI will ask for it interactively. - Customize the per-language data files:
data/assistant-data-*.json→ processes, groups, subcategories.data/print-context-options-*.json→ nozzle/material/filament lists.data/chat-instructions-*.json→ system prompt and response constraints.
CLI flow
- Language selection.
- API key check / interactive input if needed.
- Print-context selection (nozzle type → nozzle material → nozzle diameter → filament) with
back/exit. - Process → group → subcategory navigation.
- Field configuration (checkbox/dropdown/numeric/text) to provide precise context to the assistant.
- API call with spinner and JSON output in the chosen language.
Customizable files
| File | Description | Notes |
| --- | --- | --- |
| data/assistant-data-it.json, data/assistant-data-en.json | process hierarchy with groups/subcategories | displayName appears in the menus |
| data/print-context-options-it.json, data/print-context-options-en.json | nozzle type / material / diameter / filament options | order defines menu numbering |
| data/chat-instructions-it.json, data/chat-instructions-en.json | system prompt and instructions | adjust tone, style, limits |
| localization.js | CLI text + file mapping per language | extend here to add more locales |
Troubleshooting
API error (401)→ invalid or missing key.Empty response from model→ model unavailable or quota exhausted.- Empty menus → ensure the active language’s data file contains groups/subcategories.
- Wrong language answers → rerun the CLI and pick the correct language; the prompt forwarded to OpenAI follows that choice.
🇮🇹 Italiano
Panoramica
- Avvio guidato con scelta iniziale della lingua (Italiano o English).
- Gestione interattiva della API key: se non trovata puoi inserirla, scegliere Terminal/Powershell e ricevere il comando per salvarla.
- Menu strutturati per processo → gruppo → sottocategoria, con supporto a
backedexit. - Output sempre in JSON con tre campi (
aCosaServe,quandoApplicarla,valoreConsigliato) più riepilogo colorato sul terminale. - La versione corrente (v1.0.8) è estremamente stabile sia via terminale sia dalla UI web.
Requisiti
- Node.js 18+
- Chiave API OpenAI con accesso al modello
gpt-5-mini-2025-08-07 - Connessione internet (richieste HTTPS)
Stabilità
Questa release privilegia l’affidabilità: ogni prompt controlla gli input, la UI blocca errori prima dell’invio e le chiamate OpenAI hanno timeout per evitare blocchi. Puoi usarla quotidianamente o passarla a colleghi non tecnici senza sorprese.
Avvio rapido (anche per chi non conosce Node)
- Installa Node.js 18+ da nodejs.org (basta seguire l’installatore “Avanti > Avanti > Fine”).
- Apri il terminale (su Windows PowerShell, su macOS Terminale).
- Esegui
npx ntg-bambu-gpte rispondi alle domande guidate: lingua, API key, menu strutturati. - Preferisci il browser? Dalla cartella del progetto avvia
npm run webe apri http://localhost:4173: l’interfaccia replica gli stessi step senza comandi complicati. - Se sbagli qualcosa puoi usare
back/exitnel terminale oppure cambiare selezione nel browser: l’assistente impedisce combinazioni non valide.
Installazione
Uso veloce con npx:
npx ntg-bambu-gptInstallazione globale:
npm install -g ntg-bambu-gpt
ntg-bambu-gptEsecuzione locale:
node bambu-gpt.jsVersione e aggiornamenti
- Controlla la versione installata globalmente (se presente):
npm list -g ntg-bambu-gpt. - Verifica l’ultima versione pubblicata su npm:
npm view ntg-bambu-gpt version. - Aggiorna l’installazione globale:
npm update -g ntg-bambu-gpt.
Interfaccia web
- Avvia la UI HTML con
npm run web(server su http://localhost:4173). - Dopo l’installazione globale puoi avviarla da qualunque cartella con
ntg-bambu-gpt-ui(stessa porta di default, modificabile conPORT=4300 ntg-bambu-gpt-ui). - Il browser replica il flusso della CLI (lingua, API key, contesto di stampa con tipo/materiale/diametro ugello + filamento, processo → gruppo → sottocategoria, configurazione campo).
- La chiave API resta nel browser solo se attivi il toggle; altrimenti viene usata per la sola sessione corrente.
- La risposta resta in JSON con i tre campi richiesti dalla CLI.
Setup consigliato
- Clona il repository.
- (Opzionale)
chmod +x bambu-gpt.js. - Imposta
NTG_BAMBU_GPT_API_KEYoppureOPENAI_API_KEY. Se mancano, il programma ti guiderà a inserirle. - Personalizza i file dati (uno per lingua):
data/assistant-data-*.json→ processi, gruppi e sottocategorie.data/print-context-options-*.json→ liste di ugelli/materiali/filamenti.data/chat-instructions-*.json→ prompt di sistema e vincoli sul formato.
Flusso dell’interfaccia
- Selezione lingua.
- Controllo API key con eventuale inserimento guidato.
- Scelta del contesto di stampa (tipo ugello → materiale → diametro → filamento) con possibilità di
back/exit. - Navigazione processo → gruppo → sottocategoria.
- Configurazione del campo (checkbox/dropdown/numerico/testo) per contestualizzare la richiesta.
- Chiamata API con spinner e stampa del JSON generato nella lingua selezionata.
Struttura file personalizzabili
| File | Descrizione | Note |
| --- | --- | --- |
| data/assistant-data-it.json / data/assistant-data-en.json | definizione processi, gruppi, sottocategorie | displayName usato nei menu |
| data/print-context-options-it.json / data/print-context-options-en.json | liste tipo/materiale/diametro ugello + filamento | l’ordine definisce l’indice mostrato |
| data/chat-instructions-it.json / data/chat-instructions-en.json | prompt di sistema e istruzioni | puoi forzare tono, stile e vincoli |
| localization.js | testi dell’interfaccia e mapping dei file | aggiungi qui nuove lingue |
Risoluzione problemi rapida
API error (401)→ chiave errata o assente.Empty response from model→ modello non disponibile o quota terminata.- Menu vuoti → verifica di aver aggiunto gruppi/sottocategorie nei file dati della lingua corrente.
- Testo in lingua sbagliata → assicurati di scegliere la lingua corretta all’avvio; i prompt API seguono quella selezione.
Keywords / Ricerca
- Bambu Studio assistant, Bambu slicer AI helper, Bambu Studio web UI, Bambu slicer GPT, ntg bambu gpt, AI slicing companion, 3D printing parameter tuner, nozzle material filament guide, OpenAI printing assistant, GPT-5 Bambu guide, interfaccia web Bambu, assistente AI stampa 3D, configuratore parametri slicer, guida GPT per ugelli materiali, Bambu Studio CLI + UI.
Donazioni volontarie / Voluntary donations
Giuseppe Antonio Diviggiano — Frontend Developer
Torre Santa Susanna (Br), Italy
“I’m a web developer passionate about emerging technologies: I experiment with artificial intelligence and bring my ideas to life through 3D printing, using my Bambu Lab A1 Mini. I enjoy combining creativity and innovation to turn ideas into real projects.”
- Gravatar: https://gravatar.com/steadybravely81e7d49729
- LinkedIn: https://www.linkedin.com/in/giuseppe-antonio-diviggiano
- PayPal.me: https://www.paypal.me/giuseppeantoniodivi
- ETH wallet:
0xfcebddcc57bf1745791928ee79f4376c407e9cc5
Happy printing / Buone stampe! 🎛️🛠️
