Skip to content
strands-labsPublic

About

Control robots and physical hardware with natural language through Strands Agents.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

214 stars

Watchers

5 watching

Forks

Strands logo

strands-robots

A Python library for building robots.

An agent walks, turns and rolls the microduck

strands-robots runs the same code on a simulated robot and a real one. It has three main classes:

Class Is
Simulation A world. MuJoCo on CPU, Isaac Sim and Newton on GPU.
Robot A body in a world, or a real robot
Policy Turns an observation into an action
from strands_robots import Policy, Robot

duck = Robot("microduck")
duck.run(Policy("microduck?vx=0.3"), seconds=10)  # walks about 1.3 m

Features

Area Provides
Robots 76 robots by name, or your own MJCF or URDF
Hardware SO-100 and SO-101 arms, Unitree robots, with a digital twin
Policies Python functions, ONNX skills, LeRobot checkpoints, local or remote
Recording LeRobot v3 datasets
Safety A manifest, one safety chain and an e-stop for every robot
ROS 2 ros2_control robots and the Unitree G1 as a Robot, plus the use_ros agent tool
Mesh Robots on other machines, over Zenoh or AWS IoT Core
Agent tools robot.tool, sim.tool and mesh.tool for Strands agents
Dashboard A 3D view, controls, cameras, chat, voice and e-stops in the browser

Agents

from strands import Agent

Agent(tools=[duck.tool])("walk forward a bit, turn left, do a roll, then stand still")

The agent picks skills. The skills move the motors, and the safety chain checks each step.

Installation

uv venv -p 3.12 && source .venv/bin/activate
uv pip install "strands-robots[all] @ git+https://github.com/strands-labs/robots@main"
uv pip install "lerobot[remote,feetech,dataset] @ git+https://github.com/huggingface/lerobot@main"

To work on the library itself, clone it and install it editable: uv pip install -e ".[all,dev]", then pytest -q tests.

Documentation

Contributing

Open one pull request per change. Include a test that fails before the change, and a changelog.d/ fragment (how). Before you push:

pip install hatch
hatch run lint
hatch run test

Apache-2.0. See LICENSE.

About

Control robots and physical hardware with natural language through Strands Agents.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

214 stars

Watchers

5 watching

Forks

Releases

Used by

Contributors

Languages