Three.js model preference
For web scenes, Arka can check for an existing Three.js-compatible GLTF/GLB asset or library before generating new geometry:baryhuang/mcp-threejs:
Arka converts the request into a compact asset query, normalizes Sketchfab/MCP
style results into one candidate shape, ranks downloadable GLB/GLTF assets
first, and reports license/attribution/format metadata. If no provider is
configured, Arka returns zero candidates and tells the agent not to invent model
URLs.
For recognizable objects such as satellites, prefer a realistic licensed
GLTF/GLB model with material and texture maps. Do not replace it with simple
boxes, spheres, or cylinders when an appropriate Three.js asset is available.
Arka first applies a symbolic reality check, then gives the model a compact
verification instruction; uncertain objects require a trusted catalog or a
user-provided URL rather than a hallucinated asset URL.
Quick start
Text-to-3D providers
Usetext_to_3d when the prompt is not a procedural shape and you want an AI
text-to-mesh backend:
auto provider order is free/non-trial first:
- local Shap-E (
shap-e) when installed; - Hugging Face Shap-E (
hf-shap-e) throughgradio_clientorHF_TOKEN; - local OpenSCAD + LLM when available;
- LLM OBJ fallback.
--backend tripo, or set:
Procedural shapes (no LLM required)
Quality tiers
Use--quality to control curve smoothness (segment count):
boy, girl, person) use procedural capsule-based templates — not raw LLM vertex output — for consistent, printable meshes.
3D generation uses fallback orchestration. Configure a preferred chain when
needed, for example MODEL_3D_BACKEND_CHAIN=tripo,shap-e,openscad,llm; each
backend is tried in order and failures continue to the next backend. The LLM
OBJ generator then uses Arka’s normal model fallback, and procedural templates
remain the offline-safe fallback for supported shapes.
Free AI backends (better than procedural soup)
For organic shapes (dragon, vase with floral pattern, etc.), use external generators before the LLM OBJ fallback:
Backend priority (--backend auto)
- Local Shap-E — if
torch+diffusersinstalled (SHAP_E_DEVICE=cudaoptional) - Tripo AI —
TRIPO_API_KEY(platform.tripo3d.ai — 300 free credits) - HF Shap-E Space —
HF_TOKENand/orpip install -e '.[3d-ai]'(Gradio client) - Meshy API —
MESHY_API_KEY(API requires Pro+; web UI has 100 free credits/mo) - Procedural templates — for known shapes (
gear,boy,vase, …) - LLM OBJ — last resort vertex output from your chat LLM
gear, cube, …) stay procedural under --backend auto to save API credits. Pass --backend tripo (etc.) to force AI on a template.
Environment variables
Install optional extras:
Export formats
Models save to
~/Models/arka-generated/ by default. Override with MODEL_3D_OUTPUT_DIR.
Custom shapes (LLM fallback)
For objects when no free backend is configured, Arka asks your configured LLM to generate OBJ vertex data, then exports STL when faces parse cleanly..env (same stack as chat/compose_slides). Quality is lower than Tripo/HF — use --backend auto when possible.
Open your model
After generation, Arka prints file paths and tips:- macOS: open the OBJ/STL in Preview, or
blender <file> - GLB: gltf-viewer.donmccurdy.com or Blender
- Online: drag the file to 3dviewer.net
- 3D printing: import the STL into Cura, PrusaSlicer, or Bambu Studio
Check setup
Related
- Skills catalog —
compose_3din the Media section