démarrersans clé api · sans compte
Essayez mojulo en headless dans un agent web, ou installez-le en local.
Vous n'installez pas mojulo vous-même ; c'est votre agent qui le fait, en demandant avant chaque étape. Il peut le faire à deux endroits : en headless, dans la machine Linux jetable qu'un agent web se donne — rien sur votre machine, et la machine disparaît à la fin de la session — ou sur votre propre machine, où vit toute la boucle. Même installation, mêmes recettes, mêmes exports. Vous lui demandez ensuite une petite chose. Ce qui revient est conservé sous forme de recette — un petit fichier qui le refait à l'identique, et qui survit au chat et à la machine. Sans clé API, sans compte, sans télémétrie externe, dans les deux cas.
npx mojulo init
deux voies d'entréeen headless dans un bac à sable · ou la boucle complète sur votre machine
Essayez-le en headless
dans le bac à sable d'un agent web · rien sur votre machine
Un agent web — Claude Code sur le web, ChatGPT, Grok chat, Meta Muse — se donne une machine Linux, jetable sur la plupart des hôtes. Mojulo s'y installe, et l'agent est la seule surface : pas de tableau de bord, pas de fenêtre, pas d'images fixes. Ce que vous faites revient sous forme de fichiers par la porte dont l'agent dispose, et sous forme de recette dans son rapport. La machine disparaît à la fin de la session ; la recette est ce que vous gardez, et tout mojulo la refrappe à l'octet près.
Exige un bac à sable Linux avec Node 22.12+ et npm joignable. Que le bac à sable ait accès à internet est la règle de l'hôte, pas celle de mojulo. Tant qu'il vit, ce que vous avez fabriqué se trouve sur la machine de ce fournisseur, sous sa politique ; mojulo lui-même n'envoie toujours rien nulle part.
npx -y mojulo init --yes --no-ui
Installez-le en local
macOS · windows · linux · la boucle complète
Votre propre agent — Claude Code, Codex, Grok Build, Hermes, tout hôte MCP — l'installe sur
votre machine. C'est la boucle complète : le tableau de bord sur localhost:3001,
les images fixes, les ouvriers sur votre PATH — Blender, un slicer, un moteur —
et tout sous un seul répertoire, ~/.mojulo/.
C'est aussi là qu'une recette venue d'un bac à sable rentre à la maison : collez-la, et la même chose repousse ici, à l'identique.
npx mojulo init
quatre étapesinstaller · s'orienter · frapper · modifier
Collez la consigne correspondant à l'endroit où se trouve votre agent
N'installez rien vous-même — confiez la tâche à l'agent que vous utilisez déjà. Dans un agent web, la consigne tient en une phrase ; celle pour votre machine vérifie d'abord et demande avant chaque étape.
En headless, dans un agent web. La phrase est presque la même partout. Ce qui change, c'est la porte par laquelle le fichier revient, et la ligne sous chaque hôte dit laquelle, et ce qui a été vu lors d'une exécution. Puis demandez une petite chose, et demandez le JSON de la recette dans la réponse — c'est la seule porte que tout bac à sable possède, et tout ce dont une installation locale a besoin pour faire repousser la chose.
Claude Code sur le webheadless · porte : l'outil artefact
a tourné · 2026-09-21
open a linux box and install mojulo npm package in it
Cette phrase est toute l'installation : l'agent ouvre sa machine,
lance init --yes sans clavier, et rend compte. Le 2026-09-21, une
session web de Claude Code l'a fait, a frappé un téléphone de 47 pièces à l'échelle réelle, et
a renvoyé le glTF ; l'outil d'artefacts est la porte, une page autonome
à la fois.
ChatGPTMCP connecté, ou headless en mode travail · porte : le rapport
a tourné · 2026-09-22
on work mode, open a linux box and install mojulo npm package in it
ChatGPT demande avant d'ouvrir la machine — cliquez sur accepter. Le 2026-09-22, en mode travail, il a installé mojulo, l'a branché, a atteint le tableau de bord loopback et a frappé une chose sans clé. Hors du mode travail, sa machine n'avait pas d'internet, donc rien n'y a été installé — la sortie réseau de la machine relève de la règle du forfait, pas de mojulo. Sortir un fichier de cette machine n'a pas encore été essayé ; la recette dans la réponse est la porte. Si un serveur MCP mojulo est déjà connecté, ChatGPT utilise celui-là ; le guide ChatGPT couvre les deux.
Grok chatheadless · shell seulement · porte : une carte de fichier
a tourné · 2026-09-21
open a linux box and install mojulo npm package in it
Le bac à sable de Grok chat a un shell et pas de client MCP, donc après
l'installation il pilote le même registre depuis la ligne de commande —
npx mojulo call <tool>. Le 2026-09-21, il a frappé une ville et
l'a exportée ainsi ; la carte de fichier est la porte, et world.html
s'ouvre depuis le disque sans serveur. Il s'agit de Grok chat, pas de Grok Build — la CLI
est un vrai hôte MCP sur votre propre machine, et prend la consigne locale ci-dessous.
Meta Museheadless · VM persistante · CLI uniquement · porte : Artifacts et la Library
a tourné · 2026-09-23
open a linux box and install mojulo npm package in it
Muse pilote une seule VM Linux persistante derrière tous ses clients, avec un
shell et sans client MCP, donc elle lance mojulo en ligne de commande —
npx mojulo call <tool>, en commençant par
npx mojulo orient. Contrairement aux autres machines, cette VM conserve
~/.mojulo/ d'une conversation à l'autre. Les pages sortent par son outil
Artifacts et les fichiers par sa Library.
Sur votre propre machine. Ouvrez Claude Code ou Codex et collez cette consigne. Il vérifie d'abord la machine, rapporte ce qu'il a trouvé et demande votre permission avant d'installer quoi que ce soit — rien n'entre sur votre machine sans un oui.
Aide-moi à installer mojulo — une usine 3D gratuite, que tu piloteras via MCP. Repères, si tu peux les récupérer : https://mojulo.ai/llms.txt (miroir si le site est hors ligne : https://github.com/zombico/mojulo) 1. Commence par vérifier : lance `node --version`. Mojulo exige Node 22.12+. Dis-moi ce que tu as trouvé avant de changer quoi que ce soit. 2. Si Node est absent ou trop ancien, demande-moi la permission, puis installe-le comme cette machine l'attend (brew / winget / nvm / apt). 3. Avec mon accord, lance `npx mojulo init`. Cela câble mojulo dans les agents de code de cette machine (un oui/non par hôte) et ouvre un tableau de bord sur localhost:3001. 4. Quand c'est terminé, dis-moi d'ouvrir une nouvelle session et de te demander : "what is this?" N'installe jamais quoi que ce soit sur ma machine sans me le demander d'abord.
Ce qui est téléchargé, dans les deux cas : un paquet de 6.7 MB qui
occupe environ 227 MB sur le disque avec ses dépendances, mesuré sur une
machine, et aucun modèle — la recherche classe selon les mots de votre demande jusqu'à ce que vous
activiez mojulo install recall. Le tableau de bord est un paquet séparé,
récupéré seulement quand vous l'ouvrez. Le navigateur qui cuit les images fixes
n'est pas dans l'installation : un rendu explicite en récupère un la première fois qu'il en a besoin
(environ un demi-gigaoctet) s'il n'y en a aucun sur la machine, jamais à l'installation, et un
Chrome, Chromium, Edge ou Brave déjà présent est utilisé à la place. Les chiffres mesurés, et tout le reste de ce dont la
machine a besoin, sont dans les prérequis techniques ci-dessous.
Vous préférez le piloter vous-même ? Installez Node.js 22.12+ depuis
nodejs.org et lancez npx mojulo init. Sur votre machine, le tableau de bord
s'ouvre sur localhost:3001 (ou le port libre suivant ; l'installeur
affiche l'URL) et l'état atterrit dans ~/.mojulo/. Pas de compte, aucun
identifiant à remettre ; relancer init répare l'ancien câblage
au lieu de le dupliquer. La même installation sert aussi de ligne de commande —
npx mojulo tools liste ce qu'elle contient,
npx mojulo call <tool> exécute n'importe lequel, sans agent dans la boucle.
Cette voie par le shell est exactement celle du bac à sable de Grok chat. Quand
init n'a pas de terminal pour demander — un pipe, la CI, la machine d'un agent — il ne modifie
rien sans --yes : il affiche son plan et sort avec le code 2.
npx -y mojulo init --yes --no-ui est la forme explicite.
Dans Claude Code, le plugin. /plugin marketplace add
zombico/mojulo, puis /plugin install mojulo@mojulo, démarre le même
serveur épinglé à une version. Utilisez le plugin ou init pour Claude Code, pas
les deux : deux enregistrements lancent deux serveurs.
Déjà en 2.x ? Un npx mojulo non épinglé passe en 3.0 à
son prochain démarrage, et la 3.0 rechiffre vos clés de fournisseur enregistrées dans un seul sens, donc sauvegardez d'abord
~/.mojulo/secret.key avec la base de données. La fabrique de chatbots ne fait
plus partie de mojulo à partir de la 3.0 et migre vers son propre projet. Les versions 2.x antérieures
qui l'incluent ne sont plus maintenues et présentent des failles de sécurité connues. Les étapes se trouvent dans
Upgrading from 2.x.
Demandez à votre agent ce qu'il a sous les yeux
Ouvrez une nouvelle session d'agent — le nouveau câblage est pris en compte au démarrage — et tapez une ligne. Mojulo lit son propre index de routage et s'oriente à voix haute — sans clé de fournisseur, sans appel au nuage, rien de construit encore. En headless, l'agent pose la même question depuis son bac à sable et rapporte la réponse.
qu'est-ce que c'est ?
forward_context — l'usine qui s'explique elle-même. C'est l'interface prévue : vous demandez, votre agent découvre le bon outil et s'en saisit.
Demandez une petite chose
Demandez ensuite quelque chose qui est à vous. Votre agent le rédige, mojulo le conserve en petite recette déterministe et vous tend une URL à ouvrir.
modélise un mug à café en centimètres réels que je puisse orbiter → mint_solid
la recette est l'artefact conservé — quelques lignes lisibles qui refont pousser la même tasse à chaque ouverture. le rendu en est dérivé et jetable ; la recette reste pour la reprendre la semaine prochaine — sur votre disque, ou dans le rapport que le bac à sable a rendu.
En headless, demandez la page, pas une image fixe : le bac à sable n'a peut-être pas de
navigateur pour cuire une image, mais le world.html exporté est
autonome et s'ouvre depuis le disque. Chaque export que l'agent écrit lui dit
quelle porte cet hôte possède, pour qu'il sache comment rendre le fichier. Et gardez la
recette — le bac à sable, lui, ne la gardera pas.
Si un outil 3D refuse un jour et nomme mojulo install creative,
lancez-le. Les bibliothèques de rendu sont livrées dans l'installation par défaut, mais un
npm install --omit=optional ou une compilation native échouée peut les laisser
de côté — et le refus le dit au lieu d'échouer en silence.
Puis modifiez-la
« Rends-la plus haute. » « Change la teinte. » Votre agent modifie quelques lignes de la même recette sur place et elle est rendue à nouveau ; rien n'est régénéré depuis une boîte noire, et les lignes qu'il a changées sont là, à lire.
épaissis l'anse et passe l'émail en noir mat → update_sketch
Une tasse est le plancher, pas le plafond. Ce que l'usine fabrique d'autre — et où une chose finie peut aller ensuite — l'atelier le nomme quand vous avez quelque chose en main, ou quand vous le demandez. Cette page cesse de promettre ici, volontairement.
le premier voldemander → frapper → regarder → garder
Voici comment un objet réel a vraiment été fait, y compris le moment où la première tentative était fausse. La correction n'est pas un échec de la méthode ; elle est la méthode.
modélise une lanterne tempête à l'échelle réelle que je puisse orbiter en 3D
frappe en cours — sept profils tournés empilés et une poignée balayée : laiton, cuivre, verre, 40 cm de haut. Ouvre /sketches/sk_jon77cn4ud et orbite-la.
la poignée flotte
en effet — les extrémités de l'anneau sont à ±6,5 cm au-dessus d'un collier de 3,6 cm. Je repositionne le balayage… v2 frappée. L'anneau se pose sur le collier.
garde-la
mint_solid — la demande est en langage courant, une chose et une échelle. personne n'a tapé de coordonnée : les pièces sont placées par relations déclarées (sur / écart / radial), et l'usine les résout.
ce qui est conservé, c'est la recette — 1,8 Ko de profils et un tracé. la lanterne que vous faites tourner en est dérivée à chaque rendu, et le rendu est jetable.
« la poignée flotte », c'est la porte des yeux — quelqu'un regarde vraiment avant qu'une chose soit gardée. la recette a rendu le raté bon marché : un tracé modifié, v2 frappée, et les deux versions persistent en recettes que vous pouvez comparer.
et après « garde-la », les portes — une chose gardée peut sortir : un fichier pour une imprimante, une page que vous pouvez héberger, des pièces plus grandes que ça. personne ne les liste d'avance ; l'atelier nomme les portes qui conviennent à la chose que vous tenez, au moment où vous la tenez. les portes ouvrent sur des outils que vous utilisez déjà — blender, un moteur de jeu, un slicer — sous forme de fichiers qu'ils lisent déjà, et ce que vous y affinez peut revenir se lier à la même recette.
prérequis techniquesce qu'il faut · ce que ça pèse · ce qui est optionnel
La version courte de ce que mojulo demande à une machine. Chaque chiffre a été mesuré sur une machine à une date indiquée ; la fiche complète, jusqu'à la taille de chaque dépendance, est dans le dépôt.
Node.js 22.12 ou plus récent. Le seul plancher strict ; un Node plus ancien s'arrête avec un message au lieu de fonctionner à moitié.
Un hôte MCP, ou un shell. Claude Code ou Codex en tirent le plus ;
Claude Desktop et les autres hôtes se câblent par profil déclaré. Sans aucun client
MCP, npx mojulo call pilote le même registre.
Votre machine. Construit et vérifié sur macOS, Apple Silicon.
Linux : la suite de tests tourne sous Ubuntu en CI, et une installation à froid a été
vérifiée sur Linux x64 et arm64 ; les vérifications de moteurs plus bas n'y sont pas vérifiées.
Windows : vérifié sur une machine Windows native avec Claude Code —
npx mojulo init est allé au bout et un premier rendu est arrivé ; Codex là-bas,
et les vérifications de moteurs plus bas, ne l'ont pas été.
Ou la machine de votre agent. Une machine Linux avec Node et npm accessibles, headless : pas de tableau de bord à ouvrir, pas d'images fixes, fichiers et recette sortis par la porte de l'hôte. A tourné sur Claude Code sur le web (2026-09-21), sur ChatGPT en mode travail (2026-09-22), dans le bac à sable de Grok chat, shell seul (2026-09-21), et sur la VM persistante de Meta Muse, shell seul (2026-09-23). Une tâche cloud Codex : d'après sa documentation, internet désactivé par défaut. Blender s'installe dans ces machines ; les slicers et les moteurs de jeu non, et les packs d'export sont écrits dans les deux cas.
Pas de GPU, pas de clé de fournisseur, pas de compte. Les images fixes cuisent sur le CPU. Votre agent est la boucle de raisonnement ; une clé n'entre en jeu que lorsque quelque chose doit peindre.
6.7 MB d'archive, 21.3 MB décompressés, ~227 MB installés avec
ses dépendances (153 paquets) — mesuré le 2026-09-30 sur mojulo 3.0.0 sous
macOS arm64. Un démarrage à froid télécharge environ 79 MB et laisse environ
140 MB dans le cache de npm, et a répondu à initialize en 4.5 s en médiane
via un substitut de registre local ; le vrai registre est plus lent. Les assistants
créatifs (audio, booléens exacts, images) sont compris dans ce chiffre ;
npm install --omit=optional en retire environ 115 MB. Le
tableau de bord, mojulo-ui, pèse 12.7 MB compressé et 57.0 MB décompressé,
récupéré seulement quand vous l'ouvrez.
Aucun modèle. Une installation par défaut n'en récupère aucun ; la recherche répond quand même, en classant selon les mots de votre demande. Le modèle d'embedding est l'option ci-dessous.
Des kilooctets par recette. Tout ce que vous fabriquez tient dans un fichier SQLite sous ~/.mojulo/data/.
~500 MB de Chrome headless, la première fois qu'un rendu explicite en a besoin — ignoré quand Chrome, Chromium, Edge ou Brave est déjà sur la machine.
~19 Mo de ffmpeg, la première fois que des clips sont assemblés en MP4 — ignoré si ffmpeg est déjà dans votre PATH.
Rien n'est téléchargé à l'installation. Ces deux éléments se mettent en cache sous
~/.mojulo/ ; la fiche complète nomme les variables qui les déplacent. Avec
le plugin Claude, aucun des deux n'est jamais récupéré de lui-même : il utilise un navigateur et un
ffmpeg que vous avez déjà.
Godot 4.5 ou plus récent (gratuit) ouvre un pack de jeu comme projet. Blender 4.x ou plus récent (gratuit) prend la passe artistique et la cuisson. Unity 6, activé, avec le paquet glTFast du Package Manager. Unreal 5.4 ou plus récent ; un pack de jeu compile du C++, donc Xcode sur macOS ou Visual Studio sur Windows.
Un slicer — PrusaSlicer ou Bambu Studio — estampille une vérification d'impression headless à côté du STL ou du 3MF ; n'importe quel slicer ouvre le fichier.
Une recherche qui classe par le sens — mojulo install recall
ajoute le modèle d'embedding : ~480 MB de runtime et un modèle de ~130 MB sous
~/.mojulo/, conservés d'une mise à niveau à l'autre. La plupart des sessions n'en ont jamais besoin ;
l'agent lit directement l'index des outils.
Chaque export fonctionne sans aucun d'eux : le pack et son guide d'import pas à pas sont écrits dans tous les cas, et la vérification machine signale « skipped » avec la raison. Les moteurs sont des installations de plusieurs gigaoctets sous leurs propres licences ; mojulo n'en télécharge ni n'en configure jamais un.
Des installations séparées que vous faites tourner vous-même ; mojulo ne les démarre jamais et n'en dépend pas, et leur absence éteint une boucle sans rien casser. ComfyUI avec Qwen-Image-Edit peint quand votre agent ne le peut pas — ~31 Go, ou un quant de ~17 Go sur Apple Silicon. Kokoro dit la narration — ~92 Mo. TripoSR sculpte le détail de surface sur le greybox — ~1,4 Go.
Aucune télémétrie externe. Démarrer le serveur ne fait aucun appel
réseau. Le trafic sortant n'a lieu que sur une action nommée : npm qui récupère le paquet,
les téléchargements ponctuels ci-dessus, check_for_updates quand votre agent
l'appelle, le paquet du tableau de bord quand vous l'ouvrez, et ce que fait le
fournisseur de votre agent — ce trafic est celui de l'agent, pas de mojulo. Le seul journal que
le logiciel tient, de ses propres appels d'outils, reste sur votre machine ; la
liste
complète est dans le dépôt.
Dans un bac à sable, la sortie réseau est la règle de l'hôte. Une tâche Codex cloud est livrée internet coupé ; le bac à sable de ChatGPT hors du mode « work » n'en avait pas. Mojulo a besoin de npm joignable une fois, à l'installation, et de rien ensuite.
Décâblez-le de la configuration de l'hôte, retirez le paquet npm, supprimez ~/.mojulo/ et les deux caches ci-dessus. Les moteurs et ouvriers que vous avez installés vous-même vous appartiennent, à garder ou à retirer.