Il y a des soirs où je reste planté devant une pièce cassée en me disant qu’il va encore falloir ouvrir un logiciel de CAO, prendre six cotes et y passer la soirée. print3d vient de me retirer cette excuse. Ce plugin open source, publié sous licence MIT par le développeur Marco Franzon, laisse un agent IA écrire le modèle à ma place, le vérifie, le tranche pour une Bambu Lab X2D et rend un fichier .3mf prêt à imprimer. Pas une image générée, pas un nuage de points approximatif : du code Blender, exécuté, contrôlé, corrigé jusqu’à ce que ça passe.
Le dépôt a franchi les 313 étoiles et 22 forks ce week-end, un mois après sa création le 23 septembre. Ce qui a réellement changé ces derniers jours, c’est l’emballage : depuis le 23 octobre, print3d s’installe comme plugin de Hermes Agent en une seule commande, et la presse spécialisée allemande s’en est emparée le 24 octobre. Avant ça, il fallait cloner un dépôt et bricoler soi-même les fichiers de configuration.
Je préviens tout de suite : mon conteneur n’a ni Blender ni Bambu Studio, donc je ne vais pas vous raconter un test que je n’ai pas fait. En revanche le dépôt publie deux benchmarks complets, avec les photos d’origine, les cotes, les tolérances et les fichiers tranchés. C’est largement assez pour démonter le fonctionnement, l’installation et les limites de l’outil.
🧠 print3d : l’agent qui code ton modèle au lieu de le sculpter
L’essentiel : print3d transforme une idée, une photo ou la fiche produit d’un objet en projet Bambu Studio tranché. L’agent écrit un script Python pour Blender, l’outil l’exécute, vérifie le maillage, tranche, puis renvoie à l’agent la liste des défauts à corriger. La boucle tourne jusqu’à ce que tout passe. Rien ne part vers l’imprimante : tu ouvres le .3mf dans Studio et tu imprimes toi-même.

La différence avec les générateurs de maillages 3D que je croise partout, c’est que print3d ne produit pas une forme à partir de pixels. Il produit du code. L’agent écrit un script bpy, cette bibliothèque qui pilote Blender, et le script construit la pièce à partir d’un dictionnaire de cotes. C’est une nuance énorme à l’atelier : un maillage généré se répare mal, un modèle paramétré se corrige en changeant une valeur.
Concrètement, le script lit params["dims"] et ne contient aucun nombre de son propre chef. Les dimensions viennent d’une photo, d’une fiche produit ou de toi. print3d joint ensuite les objets, nettoie le maillage, le centre et le pose sur le plateau. L’orientation reste ton choix, l’auto-orientation de Bambu Studio est désactivée dans le préréglage.
Les contrôles sont ceux que je refais à la main sur chaque pièce un peu risquée : surplombs au-delà de 45 degrés, contact au plateau, pièces hautes et fines, parois trop minces. Les supports sont désactivés dans le préréglage X2D, donc un surplomb est un vrai défaut et pas un truc noyé sous un support. Chaque problème remonte avec une consigne de correction pour l’agent, et l’historique du run est écrit dans history.jsonl.
📷 Test 1 : une pince à linge de musée refaite depuis une photo
Le premier benchmark m’a accroché pour une raison bête : la photo source. Pas un objet neuf posé sur un fond blanc, mais une pince à linge en bois photographiée à plat sur un réglet par le musée d’Auckland. L’image est propre, cadrée de face, avec une référence d’échelle visible. C’est exactement le protocole que print3d réclame, et c’est aussi celui que personne ne respecte jamais quand il photographie une pièce à l’arrache.

Première étape, la grille. La commande print3d grid superpose une grille cotée en pixels sur la photo, avec un zoom par recadrage. On lit des coordonnées, on ne les estime pas. Deuxième étape, l’échelle : le réglet donne 140 mm pour 905 pixels. L’objet ne fixe jamais sa propre échelle, c’est la référence qui décide. C’est le point qui tue la plupart des tentatives maison.
Troisième étape, la mesure. Et c’est là que print3d m’a surpris, parce qu’il ne se contente pas de sortir des nombres : il garde la provenance de chacun. Longueur 114,9 mm avec une tolérance de 1,2 mm, diamètre au ressort 18,7 mm, diamètre du bouton 14,5 mm, longueur du bouton 8,2 mm, largeur de la fente 1,7 mm. Tous marqués « measured », avec les pixels et la référence. Le chanfrein de 0,8 mm, lui, est marqué « assumed », parce qu’aucune photo ne le montre vraiment.

Les inconnues sont listées noir sur blanc : le ressort est un fil d’acier enroulé, il ne sera pas imprimé, et l’autre face de la fente est cachée sur la photo. Autrement dit, l’outil dit ce qu’il ne sait pas. À l’atelier, c’est souvent plus utile que le modèle lui-même, parce que c’est exactement la liste des endroits où je vais devoir trancher.
Vient le contrôle de ressemblance, l’étape que je trouve la plus maligne. Le modèle est projeté de côté et posé sur la photo. Si la forme s’écarte trop, le run échoue. Ici le recouvrement atteint 90 %, avec une photo mesurée à 115,6 sur 14,8 mm contre un modèle à 114,9 sur 14,5 mm, et une photo redressée de 1,5 degré. Le chiffre n’est pas décoratif : c’est un garde-fou.

Le tranchage tombe ensuite : 575 couches, 48 minutes et 35 secondes, 7,2 grammes de PLA. Avec un avertissement que j’aurais mis moi aussi, la pièce est haute et fine, il faut ajouter une bordure dans Studio. Puis la comparaison avec le catalogue du musée, qui arrondit au demi-centimètre : 115 mm annoncés contre 114,9 mm mesurés, 20 mm de diamètre au ressort contre 18,7 mm, une fente « environ la moitié » contre 49 % de la longueur. Deux cotes justes, une cote où la photo est plus précise que la fiche.
🔧 Test 2 : le crochet de magasin, et le mur du PLA
Le second benchmark est plus intéressant encore, parce qu’il montre la limite. Cette fois, pas de photo de face : une fiche produit de crochet métallique, avec un « 12 cm » annoncé à la va-vite. print3d part de la photo et mesure 126,9 mm avec 4,2 mm de tolérance sur la petite patte. Il garde donc 127 mm et jette le 12 cm du vendeur. Un modèle calé sur 120 mm aurait raté la photo de 7 mm.

La largeur mesurée donne 21,6 mm contre 2 cm annoncés, l’épaisseur 3,4 mm contre 4 mm. Les trous de vis à 29 mm du coin sont mesurés, l’alésage est supposé puisque la photo le voit de chant. Le script imprime le crochet couché sur le côté, avec des trous en goutte d’eau pour éviter les ponts, et couvre 89 % du contour de la photo. Tranchage : 100 couches, 40 minutes, 25,6 grammes.
Et là, print3d écrit la phrase que j’attendais. L’acier de 4 mm tient une étagère, le PLA de 4 mm ne la tiendra pas. Le run enregistre donc cette faiblesse comme une inconnue et refuse de présenter la copie comme un remplacement à l’identique. C’est le genre de lucidité qui manque à 90 % des démos d’IA que je vois passer, où tout est génial et rien n’est jamais bancal.

Ma lecture est simple : l’outil est bon pour te dire si ta copie PLA est une blague. Un support d’étagère, une charnière de meuble, un crochet de suspension lourd, tout ça reste du métal. En revanche pour une pièce introuvable, un adaptateur, une poignée, une boîte sur mesure ou un remplacement de pièce plastique, le rapport effort sur résultat devient ridiculement bon.
⚙️ Installation : trois prérequis et une ligne de commande
Côté matériel logiciel, print3d exige Blender 4.2 ou plus, Bambu Studio et le gestionnaire de paquets Python uv sur la même machine que l’agent. Sur macOS, Blender et Studio sont trouvés tout seuls dans Applications. Ailleurs, il faut renseigner BLENDER_BIN et BAMBU_STUDIO_BIN dans l’environnement.
Pour Hermes Agent, une ligne suffit : hermes plugins install mfranzon/print3d --enable. Le plugin apporte les outils print3d sous forme de serveur MCP, plus la compétence qui décrit le déroulé du brief jusqu’à la remise. Aucun fichier de configuration à éditer, il faut juste relancer une session ensuite. Pour Claude Code, Codex, Cursor ou Gemini CLI, la voie est uv tool install puis print3d setup, qui détecte les agents présents, montre ce qu’il va modifier et sauvegarde les fichiers touchés.

Les outils exposés disent bien la philosophie : make, measure_*, likeness, handoff, view. Chacun fait une chose vérifiable, et les images produites par le plateau, les superpositions de contours ou la grille reviennent à l’agent sous forme de captures, donc il voit ce qu’il a construit. La vue 3D est un fichier HTML autonome, avec rotation, zoom, masquage des pièces et curseur Explode.
Le volet sécurité mérite deux minutes. print3d se déclare comme serveur non fiable, donc Hermes demande confirmation avant tout outil qui exécute un script ou écrit des fichiers, et laisse passer les lectures seules. L’outil ne fait aucun appel réseau, la fiche produit que tu colles est enregistrée mais jamais visitée, il n’y a pas de télémétrie. En revanche, le script de modèle est du Python lancé par Blender avec tes droits, hors du bac à sable du terminal. C’est le point à surveiller quand un agent écrit du code tout seul.
📐 Les fits : le réglage que tout le monde oublie
Voilà la partie qui distingue un outil d’atelier d’une démo. print3d ne travaille pas avec des jeux de cotes théoriques : il utilise des jeux réels, par ajustement. Presse 0,05 mm, serré 0,10 mm, glissant 0,20 mm, libre 0,35 mm par côté, pour une buse de 0,4 mm. Et surtout, il fournit le coupon qui permet de les calibrer sur ton imprimante : un axe et huit trous de 0,00 à 0,40 mm.
Tu imprimes, tu sens ce qui force et ce qui flotte, puis tu enregistres tes valeurs avec print3d fit set --slide 0.15. À partir de là, chaque script reçoit ces jeux dans params["fit"] et chaque exécution mesure contre eux. Pour les pièces multi-matériaux, il vérifie aussi les interférences entre pièces, les couleurs enterrées qui ne ressortiraient jamais, et prévient quand un ajustement déclaré est plus serré que prévu.
Le détail que j’ai adoré : la commande handoff produit une fiche imprimable A4 avec les rendus assemblés et éclatés, le temps, les grammes, le coût matière à côté du prix de la fiche produit, les pièces et couleurs, chaque ajustement mesuré, chaque cote avec sa preuve, et la liste de ce qui reste inconnu. C’est le document que je bricole à la main pour un client.
⚠️ Ce que print3d ne fera pas
Il faut le dire clairement, parce que les fils X sont déjà en train de promettre la lune. Le préréglage est verrouillé sur une Bambu Lab X2D avec buse de 0,4 mm. Une autre machine, un autre diamètre de buse, et il faut rebricoler les profils. Ce n’est pas un slicer universel.
Ce n’est pas non plus un scanner. print3d lit une photo unique, de face, avec une référence d’échelle, et reconstruit à partir de cotes. Il ne produit aucun nuage de points, aucune mesure métrologique, aucune garantie sur les faces cachées. Pour mesurer un scan ou un objet en volume, je continue d’utiliser un scanner et un outil de mesure dédié, comme je l’explique dans mon article sur ScanRuler, ou avec une machine comme l’Elegoo M1 Ultra dont je parlais la semaine dernière.
Il ne pilote pas l’imprimante, ne lance pas le print, et ne gère pas les supports. Enfin, l’agent écrit du code : un script bizarre peut sortir d’une demande floue. La relecture du script et du rapport de contrôle reste ta responsabilité, surtout si la pièce porte une charge.
🎯 Mon avis d’atelier : pour qui je l’installe
Je l’installerais sans hésiter pour trois cas. La pièce introuvable d’un appareil ménager, l’adaptateur qu’aucun catalogue ne vend, et la boîte sur mesure dont je connais les cotes intérieures mais que je n’ai pas envie de dessiner. Dans ces trois situations, le temps de CAO est le vrai coût, et print3d l’attaque de front.
Je le garderais loin des pièces chargées, des pièces de sécurité et des mécanismes qui demandent de la précision. Le benchmark du crochet le dit mieux que moi : une copie PLA crédible en photo peut être dangereuse en vrai. Ce n’est pas un défaut de l’outil, c’est le métier qui veut ça.
Ce qui me plaît vraiment, c’est la trajectoire. On a eu des noyaux CAD open source qui arrivent, des outils de mesure gratuits dans le navigateur, des assistants qui génèrent des tampons directement dans Bambu Studio. print3d ajoute la brique qui manquait : le passage d’une photo ou d’une fiche produit à un fichier tranché, avec des contrôles et des preuves. Ça se marie très bien avec Nvidia SMLib pour le dessin paramétrique, ou avec Stamp Maker quand il s’agit de marquage.
Reste une question que je me pose pour de vrai : combien de temps avant qu’un modèle de langage arrête de produire des scripts Blender bancals et se mette à sortir des pièces mécaniquement saines du premier coup ? Le jour où ça arrive, l’atelier ne sera plus un lieu où on dessine, mais un lieu où on valide.
❓ Questions fréquentes sur print3d
print3d est-il gratuit ?
Oui, le dépôt mfranzon/print3d est publié sous licence MIT, donc gratuit, y compris pour un usage commercial. Il faut en revanche Blender, Bambu Studio et uv, tous gratuits eux aussi. Le coût réel, c’est le temps d’installation et la calibration des jeux d’ajustement.
Faut-il absolument une Bambu Lab X2D ?
En pratique, oui pour l’instant. print3d embarque un préréglage taillé pour la X2D avec buse de 0,4 mm, et la commande flatten reconstruit ces profils. Sur une autre machine, il faut adapter les profils et accepter que les temps et les grammes annoncés ne soient plus fiables.
print3d peut-il remplacer un scanner 3D ?
Non. print3d reconstruit une pièce à partir de cotes lues sur une photo, pas d’un nuage de points. Il ne voit pas les faces cachées, ne mesure pas les volumes complexes et ne donne aucune garantie métrologique. Pour reproduire une forme organique ou un objet à géométrie libre, un scanner reste indispensable.
Quelle précision attendre d’une pièce refaite avec print3d ?
Sur le benchmark de la pince, la longueur sort à 114,9 mm pour une valeur catalogue de 115 mm, avec une tolérance annoncée de 1,2 mm. C’est bon pour un objet du quotidien, pas pour une pièce d’ajustement serré. Pour les ajustements, le coupon et les jeux calibrés font l’essentiel du travail.
Johan
Rejoins le Discord du CréAtelier
On y parle impression 3D, laser et scanner tous les jours, et j’y partage mes essais avant même de les publier.
🔗 Sources
- Dépôt GitHub mfranzon/print3d : licence MIT, 313 étoiles, 22 forks, README, benchmarks pince à linge et crochet, commandes et outils MCP.
- Scripts d’exemple print3d : nameplate, crochet de magasin et configurations de pièces.
- 3Druck, 24 octobre 2026 : présentation du plugin, liens avec le projet REA et compatibilité des agents.
- Hermes Agent : hôte du plugin, installation par catalogue et gestion des serveurs MCP.
- Photo du crochet métallique (Fructibus, CC0) : image utilisée pour le second benchmark.
Crédits visuels : les captures viennent du dépôt officiel print3d (docs/workflow, docs/listing, docs/viewer, social-preview) et illustrent ses propres benchmarks. La photo de la pince à linge appartient au Auckland Museum, sous licence CC BY 4.0. Aucune image générée, aucune capture d’un test que je n’aurais pas pu faire.




