Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

simforge — Robot Simulation Environment Generator

Describe your robot in plain English. Get a simulation-ready MuJoCo scene in 30 seconds.

simforge is a developer tool that bridges the gap between "I have a robot idea" and "I'm training it in simulation." It converts natural language descriptions into complete MuJoCo/Isaac Lab simulation environments with working physics, assets, and RL training scripts.

The Problem

Setting up a robotics simulation environment in 2026 still takes 2-4 weeks of manual configuration:

  • URDF → MuJoCo conversion silently drops visual meshes
  • package:// URIs don't resolve in MuJoCo
  • Physics parameters need manual tuning
  • Quality simulation-ready 3D assets are scarce
  • Isaac Lab has a massive setup overhead (Reddit)

Quick Start

# Install
npm install -g simforge

# Generate a simulation from natural language
simforge create "a 6-DOF robot arm on a table picking up a red cube"

# Convert and fix URDF files for MuJoCo
simforge convert my_robot.urdf --fix-all --output ./mjcf/

# Preview in MuJoCo viewer
simforge view scene.xml

# Export RL training script
simforge export --rl-framework rsl_rl --output train.py

Commands

Command Description
simforge create "<description>" Generate MJCF scene from natural language
simforge convert <urdf_path> Convert URDF → MJCF with auto-fixes
simforge view <xml_path> Launch MuJoCo viewer
simforge export Generate RL training script
simforge gallery Browse built-in sim-ready assets
simforge validate <xml_path> Check physics constraints

Natural Language Examples

# Quadruped robot
simforge create "a quadruped robot walking on uneven terrain with height sensors"

# Manipulation
simforge create "two robot arms cooperating to carry a large box on a conveyor belt"

# Navigation
simforge create "a wheeled robot navigating a maze with LiDAR and depth camera"

# Dexterous manipulation
simforge create "a robot hand with 5 fingers picking up a deformable cloth"

URDF Auto-Fix

The convert command automatically solves the 3 most common issues:

  1. package:// URI resolution — Converts ROS package paths to relative paths
  2. Visual mesh restoration — MuJoCo discards visual meshes by default; simforge restores them
  3. Actuator/sensor generation — Auto-generates missing <actuator> and <sensor> definitions
simforge convert my_robot.urdf --fix-all --verbose

Asset Gallery

simforge includes 50+ physics-calibrated assets:

Category Assets
Furniture Table, chair, shelf, desk, cabinet
Objects Cube, sphere, cylinder, mug, bottle, box
Terrain Flat, stairs, ramp, uneven, gaps
Sensors Camera mount, LiDAR mount, force plate
# List available assets
simforge gallery list

# Preview an asset
simforge gallery preview table_round

# Import custom mesh
simforge gallery import my_mesh.obj --add-collision --material wood

Supported Backends

Backend Status Notes
MuJoCo ✅ Full Primary backend, MJCF native
MuJoCo Warp ✅ Full GPU-accelerated via Isaac Lab
Isaac Lab ✅ Export Generates compatible environment scripts
Isaac Sim 🔄 Planned USD export in v0.2

Configuration

simforge.config.yaml:

# Default backend
backend: mujoco  # or "isaac_lab"

# LLM provider for natural language generation
llm:
  provider: anthropic  # or "openai", "ollama"
  model: claude-sonnet-4-20250514
  api_key_env: ANTHROPIC_API_KEY

# Physics defaults
physics:
  gravity: [0, 0, -9.81]
  timestep: 0.002
  iterations: 4

# Asset search paths
asset_paths:
  - ./assets
  - ~/.simforge/assets

Development

git clone https://github.com/your-user/simforge.git
cd simforge
npm install
npm run build
npm test

Architecture

User Input (Natural Language / URDF)
         │
         ▼
┌─────────────────┐
│  Scene Generator │ ← LLM + MJCF templates
│  (NL → MJCF)     │
└────────┬────────┘
         │
         ▼
┌─────────────────┐
│  Asset Resolver  │ ← Built-in gallery + mesh import
│  (mesh + physics)│
└────────┬────────┘
         │
         ▼
┌─────────────────┐
│  Physics Validator│ ← Constraint checking
│  (contact/joint) │
└────────┬────────┘
         │
         ▼
┌─────────────────┐
│  RL Exporter     │ ← rsl_rl / stable-baselines3 / custom
│  (train scripts) │
└─────────────────┘

License

MIT


From idea to simulation in 30 seconds.

About

Describe a robot in plain English, get a simulation-ready MuJoCo scene with physics, assets and RL training scripts

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages