Code2Form : concevoir une pièce 3D en code, et la confier à un agent
Nous publions Code2Form, un logiciel libre de modélisation 3D paramétrique. La pièce s'écrit en quelques lignes, la vue 3D suit pendant la frappe, et un agent IA peut la rendre, la regarder et l'exporter. Ce qu'il fait, un exemple complet, et ses limites.
· 7 min de lecture
Cet article s'adresse aux bureaux d'études, aux ateliers et aux équipes techniques de PME qui conçoivent des pièces fonctionnelles (boîtiers, supports, gabarits) et les impriment en 3D, et aux développeurs qui veulent qu'un agent IA produise autre chose que du code. Il ne s'adresse pas à ceux qui cherchent un modeleur pour des formes libres : Code2Form décrit des pièces par leurs cotes.
Réponse directe : Code2Form décrit une pièce par un court programme. Les cotes sont des variables, les formes se combinent par union, différence et intersection, et la vue 3D se met à jour 400 ms après la dernière frappe. Il ouvre les fichiers .scad existants, exporte en STL, 3MF, SVG et DXF, vérifie un câblage électronique avant soudure, et embarque un serveur MCP pour les agents IA. Il est écrit en Rust, sous licence MIT ou Apache 2.0. Le code est sur GitHub.
Pourquoi un cabinet data et IA publie-t-il un logiciel de CAO ? Parce qu'on y retrouve les trois exigences de nos missions, sur un autre terrain : un format que l'on peut relire et versionner, une vérification automatique avant l'action qui coûte (ici, l'impression ou la soudure), et un outil qu'un agent peut utiliser sans qu'on lui décrive l'écran.
La pièce est un programme
Un logiciel de CAO classique enregistre une suite de clics. Code2Form enregistre un texte : un cube de 60 × 40 × 20 mm, un cylindre retiré pour percer un trou, une variable « paroi = 2 » reprise partout où l'épaisseur compte. Changez la variable, la pièce entière suit.
Trois conséquences pratiques. Une variante se fait en changeant un chiffre, pas en redessinant. Le fichier se compare d'une version à l'autre et se range dans Git, avec un historique qui dit ce qui a changé. Et les paramètres déclarés en commentaire deviennent dans l'application des curseurs, des listes et des cases à cocher, avec des préréglages enregistrés à côté de la pièce : une personne qui ne lit pas le code peut produire sa variante.
Code2Form ouvre tels quels les fichiers .scad, un format répandu pour ce type de conception. Sa compatibilité est vérifiée contre l'implémentation de référence (version 2021.01) sur les 86 exemples et bibliothèques qu'elle fournit : même arbre syntaxique, même arbre CSG, même sortie, et mêmes volumes sur tous les modèles exportables sauf un. Ces résultats sont figés dans les tests du dépôt et revérifiés à chaque modification.
Les opérations booléennes passent par Manifold, une bibliothèque de géométrie robuste, et les exports STL et 3MF sont vérifiés avec le chargeur de PrusaSlicer. La fonction pause(z, message) ajoute une pause d'impression à une hauteur donnée, pour glisser un aimant ou un écrou dans une cavité avant qu'elle ne se referme ; le 3MF la transmet à PrusaSlicer, et la vue par couches permet de la déplacer à la souris.
Un exemple : la plaque qui suit son circuit
Le dépôt contient un exemple complet, Grogu : une carte XIAO ESP32-S3 qui écoute (un micro INMP441), parle (un amplificateur MAX98357A et un haut-parleur), bouge (un pilote DRV8833 et un moteur) et réagit au toucher (une plaque de cuivre).
Chaque composant est un fichier .c2f qui le dessine, avec ses broches, ses trous de fixation et ses ports déclarés en commentaire, à leur position en millimètres. Un fichier de circuit (.c2fc) place les composants et relie leurs broches : 23 fils, posés dans l'ordre, l'alimentation d'abord.
Avant de souder, Code2Form vérifie le câblage : une alimentation plus forte que ce qu'une broche accepte, deux alimentations reliées entre elles ou à la masse, une alimentation ou une masse laissée en l'air, une broche à ne pas connecter qui l'est. Dans l'exemple, le rail 5 V alimente l'amplificateur et le pilote moteur, et le micro seul prend du 3,3 V : une erreur sur ce point est signalée avant le fer à souder, pas après.
La plaque imprimée qui porte le tout ne répète aucune cote : elle déclare son circuit et en tire ses entretoises, ses perçages et ses ouvertures (le port USB-C, la grille du haut-parleur, le trou du micro). Déplacez une carte dans le circuit, la plaque suit. L'application affiche ensuite les composants et leurs fils en couleur, et un mode montage déroule les fils un par un en gardant la progression.
Ce qu'un agent peut en faire
C'est la partie qui nous intéresse le plus. La commande c2f mcp expose Code2Form comme serveur MCP (Model Context Protocol), le protocole qui permet à un agent comme Claude Code d'utiliser un outil. Une ligne suffit pour l'ajouter : claude mcp add code2form -- c2f mcp.
L'agent ne pilote pas l'application ouverte : il travaille sur des fichiers. Il rend une pièce et reçoit soit l'erreur avec sa ligne et sa colonne, soit le volume et l'encombrement. Il liste les paramètres, obtient une image PNG sous l'angle de son choix, exporte en STL, 3MF, SVG ou DXF. Côté électronique, il liste les composants de la bibliothèque, lit leurs broches, vérifie un circuit, en obtient une image, la liste des fils et la nomenclature.
L'image compte plus qu'il n'y paraît. Comme nous l'écrivions dans nos bonnes pratiques Claude Code, un agent qui peut vérifier son travail corrige ses erreurs avant de vous les montrer. Un rendu sans erreur ne dit pas qu'un perçage est du bon côté ; une image, si. Pour le circuit, le contrôle est encore plus net : check_circuit dit si le montage est bon à souder, et l'agent corrige jusqu'à ce qu'il le soit.
La décision reste humaine. L'agent propose un circuit vérifié et une liste de fils ; c'est une personne qui ouvre le fichier dans l'application, le regarde en 3D, lance l'impression et soude. C'est la règle de nos autres articles : l'agent prépare, le contrôle est automatique, et l'action qui coûte reste à une personne.
Ce qu'il faut savoir avant de l'installer
La version 0.3 se télécharge pour macOS 11 et suivants : une seule application pour les Mac à puce Apple et Intel, et la ligne de commande c2f à part. L'application n'est pas encore notarisée par Apple : au premier lancement, macOS la bloque, et il faut l'autoriser une fois dans Réglages Système, Confidentialité et sécurité. Sous Windows et Linux, elle se compile depuis les sources avec Rust 1.85 ou plus récent ; les tests tournent sur les trois systèmes.
Les écarts connus sont documentés : un cas de projection() qui garde ouverts des trous que l'implémentation de référence remplit (0,3 % du volume sur l'exemple concerné), certaines polices à grande taille qui diffèrent d'une fraction de pourcent, et des cas limites avec des valeurs NaN ou infinies. Les broches d'un composant sont des nombres fixes, qui ne suivent pas encore ses paramètres, et certaines cotes de la bibliothèque sont estimées, ce que chaque fichier précise.
C'est un logiciel jeune : la première version publique date du 21 octobre 2026. Pour une pièce qui part en production, gardez votre chaîne de contrôle habituelle. Pour un prototype, un gabarit ou le boîtier d'un démonstrateur, c'est exactement son terrain.
Sources, consultées le 22 octobre 2026
Code2Form, dépôt et documentation : README, guide électronique, exemple Grogu. Code source, guide électronique.
Code2Form 0.3.0, notes de version du 22 octobre 2026 : téléchargements, notarisation, limites connues. Notes de version.
Model Context Protocol, documentation officielle. modelcontextprotocol.io.
En une phrase
Code2Form traite une pièce 3D comme du code : un texte qui se relit, une variante qui se fait en changeant un chiffre, et un contrôle automatique avant d'imprimer ou de souder.
Son serveur MCP en fait un outil qu'un agent peut utiliser de bout en bout, en regardant ce qu'il produit. C'est ce que nous cherchons dans tout outil confié à un agent : un format lisible, un contrôle exécutable, et une personne au moment qui compte.
Un outil interne à rendre pilotable par un agent ?
Un tableur que l'on recopie, un logiciel métier sans API, une vérification faite à l'œil : en trente minutes, on regarde si un format lisible et un contrôle automatique suffisent, ou si un agent a vraiment sa place.
La fiche Code2Form
Ce qu'il fait, ce qu'il faut savoir, et le lien pour le télécharger.
Claude Code : les bonnes pratiques qui tiennent en production
Un agent de code n'écrit pas du bon logiciel parce qu'il est puissant. Il en écrit quand on lui donne du contexte, un plan, un moyen de vérifier son travail, et des droits bornés. Ce que nous appliquons sur nos propres livraisons.