From dora-skills
Records and replays robot sensor data using dora-rs and LeRobot for imitation learning and dataset management. Useful for data collection and training pipelines.
How this skill is triggered — by the user, by Claude, or both
Slash command
/dora-skills:data-pipelineThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
> Recording and replaying robot data with dora-rs
Recording and replaying robot data with dora-rs
Dora supports data pipelines for:
Note: dora-lerobot is from a separate repository, not PyPI. Install from source:
git clone https://github.com/dora-rs/dora-lerobot cd dora-lerobot pip install -e dora_lerobot
nodes:
# Camera
- id: camera
build: pip install opencv-video-capture
path: opencv-video-capture
inputs:
tick: dora/timer/millis/33
outputs:
- image
# Robot arm
- id: arm
build: pip install dora-rustypot
path: dora-rustypot
inputs:
command: teleop/command
outputs:
- state
- feedback
# LeRobot recorder (install from dora-lerobot repo first)
- id: recorder
path: dora-lerobot-recorder
inputs:
image: camera/image
state: arm/state
action: teleop/command
env:
DATASET_NAME: my_robot_dataset
EPISODE_INDEX: "0"
nodes:
# LeRobot replay (install from dora-lerobot repo first)
- id: replay
path: dora-lerobot-replay
inputs:
tick: dora/timer/millis/33
outputs:
- image
- state
- action
env:
DATASET_NAME: my_robot_dataset
EPISODE_INDEX: "0"
# Visualization
- id: plot
build: pip install dora-rerun
path: dora-rerun
inputs:
image: replay/image
# 1. Start recording session
dora run record_dataflow.yml
# 2. Perform teleoperation
# 3. Press Ctrl+C to stop and save
# 4. Repeat for multiple episodes
EPISODE_INDEX=1 dora run record_dataflow.yml
EPISODE_INDEX=2 dora run record_dataflow.yml
# 5. Train policy
python train_policy.py --dataset my_robot_dataset
| Node | Install | Purpose |
|---|---|---|
| dora-lerobot-recorder | From dora-lerobot repo | Record data |
| dora-lerobot-replay | From dora-lerobot repo | Replay data |
| llama-factory-recorder | pip install llama-factory-recorder | Record for LLM/VLM training |
| lerobot-dashboard | pip install lerobot-dashboard | Pygame recording interface |
| dora-rdt-1b | pip install dora-rdt-1b | VLA policy inference |
# Run teleoperation dataflow
dora run record_dataflow.yml
# Mark episodes
# Press 'n' for new episode, 'f' for failed
# The recorder automatically saves in LeRobot format
# Dataset saved to: ~/.lerobot/datasets/<dataset_name>
# Using LeRobot CLI
python lerobot/train.py \
--dataset my_robot_dataset \
--policy diffusion \
--output_dir outputs/my_policy
nodes:
- id: camera
path: opencv-video-capture
inputs:
tick: dora/timer/millis/33
outputs:
- image
- id: policy
build: pip install dora-rdt-1b
path: dora-rdt-1b
inputs:
image: camera/image
outputs:
- action
- id: robot
path: dora-piper
inputs:
joint_positions: policy/action
npx claudepluginhub zhanghandong/dora-skills --plugin dora-skillsGuides completion of development work by verifying tests, detecting environment, and presenting structured options for merge, PR, or cleanup.
Enforces test-driven development: write failing test first, then minimal code to pass. Use when implementing features or bugfixes.
Guides creation and editing of skills using test-driven development with pressure scenarios and subagents to verify agent compliance.