rfx
The robotics framework for the foundation model era
Built from scratch for the workflow of collect demos, train a policy, deploy, and iterate. Rust core for real-time control, Python SDK for fast research.
Simple CLI. Any robot. Any policy.
Quickstart
Get up and running with rfx in minutes
Installation
Install rfx with pip, uv, or from source
CLI Reference
Learn the three-command CLI
API Reference
Explore the Python SDK
Why rfx?
ROS was built for message passing between components. We’re in a different era — the workflow is collect demos, train a policy, deploy, iterate. rfx is built from scratch for that loop.Minimal CLI
rfx record, rfx train, rfx deploy, rfx doctor — focused on the learning workflowThree-method robot interface
observe(), act(), reset() — same API for sim and realSelf-describing models
Save once, load anywhere, deploy with zero config
HuggingFace Hub native
Push and pull policies like you push datasets
Rust core
Real-time control with zero overhead
Zenoh transport
Invisible plumbing, there when you need it
Supported Hardware
SO-101
6-DOF robotic arm with USB serial interface
Unitree Go2
Quadruped robot with Ethernet/Zenoh transport
Custom Robots
Implement observe()/act()/reset() or write a YAML config
Key Features
Unified Robot Interface
Unified Robot Interface
Every robot — simulated or real — implements three methods:
observe(), act(), and reset().
Same API across hardware platforms and simulation backends.Self-Describing Models
Self-Describing Models
Every saved model is a self-describing directory with architecture, robot config, normalizer state, and training metadata.
Load anywhere, deploy with zero configuration.
Multiple Simulation Backends
Multiple Simulation Backends
Support for Genesis, MuJoCo MJX, and Mock backends. Same robot interface across all simulators.
HuggingFace Hub Integration
HuggingFace Hub Integration
Push and pull policies from HuggingFace Hub. Deploy directly from Hub URLs with
rfx deploy hf://user/policy.Real-Time Control
Real-Time Control
Rust core with Python bindings via PyO3. Control loop with rate control, jitter tracking, and clean shutdown.
LeRobot Dataset Integration
LeRobot Dataset Integration
Native support for LeRobot dataset format. Record demonstrations and push to HuggingFace Hub.
Community
GitHub
Source code, issues, and discussions
Discord
Join the community chat
