Skip to content

First agent

python3 -m pip install "strands-robots[sim,agent]"
from strands import Agent
from strands_robots.tools import STRANDS_ROBOTS_TOOLS

agent = Agent(tools=STRANDS_ROBOTS_TOOLS)
agent("list the robots, then observe so101 in simulation and move shoulder_pan to 0.3")

Fourteen tools, all plain functions first, all over RobotLike:

list_robots - observe - move - preflight - list_policies - run_policy - record_episode - dataset_info - mesh_fleet - mesh_ask - camera_list - camera_snap - mhs_fleet - mhs_invoke

default meaning
mode="sim" nothing touches hardware unless asked
dry_run=True a mutating tool reports what it would write and writes nothing
confirm=True required for any real write once dry_run=False; without it the tool refuses CONFIRM_REQUIRED
HITL with strands-agents installed the tool layer asks the operator before hardware motion

Every tool returns one envelope: {"ok": true, ...} or {"ok": false, "refusal": {"code", "value", "cause", "remedy"}}. The codes are the closed set in strands_robots.core.refusals. The full list of tools and their parameters is generated from the source.