-
Notifications
You must be signed in to change notification settings - Fork 602
Release testing plan
Paul Nechifor edited this page May 8, 2026
·
3 revisions
This is the test plan for future releases.
git checkout main
CYCLONEDDS_HOME=/opt/cyclonedds uv sync --all-extras
# Fast tests
uv run pytest
# Entire suite (fast, slow, mujoco). Everything should work. Make sure your env is set up.
uv run pytest -m 'not tool'- Download a Ubuntu 24.04 image and install it in VirtualBox.
- Follow the instructions to install the system dependencies and clone the repo.
git clone https://github.com/dimensionalOS/dimos.git
cd dimos
uv sync --all-extras --no-extra dds --no-extra unitree-dds
uv run mypy dimos
uv run pytest
uv run pytest -m 'not (tool or mujoco)'uv run dimos run unitree-go2 keyboard-teleopYou should get the Keyboard Teleop window and be able to control the robot from there.
When you Ctrl+C dimos, the robot should lay down.
uv run dimos run unitree-go2- Click on a point on the 3D view in the Rerun window. The robot should travel there.
- Control the robot with WASD. (This is a bit finicky.)
- Go to http://localhost:7779/command-center
- Click on the map and watch it go there.
- Click on "Start Keyboard Control" and teleop the robot.
uv run dimos run unitree-go2-agentic
uv run humancliAnd tell it to "move forward 2 meters" and then "move back 3 meters"
uv run dimos run unitree-go2-agentic
# Should show up in humancli too
uv run dimos agent-send "move forward 4 meters"
# You should hear it speak in the computer's speakers.
uv run dimos agent-send "say hello"uv run dimos run unitree-go2-agentic- Go to http://localhost:5555/
- Click on the microphone and say "please rotate 180 degrees" and watch it turn back. You should also see the command displayed in
humancli.
export $(grep -v '^#' .env | xargs)
uv run python...in the Python REPL:
from dimos import Dimos
app = Dimos(n_workers=8)
# Run a blueprint by name.
app.run("unitree-go2-agentic")
# Call skills.
app.skills.relative_move(forward=2.0)
# List all available skills.
print(app.skills)
# Access a module directly.
app.ReplanningAStarPlanner
# Access a private variable.
print(app.ReplanningAStarPlanner._planner._safe_goal_clearance)
# Add another module dynamically.
from dimos.robot.unitree.keyboard_teleop import KeyboardTeleop
app.run(KeyboardTeleop)
# Stop everything.
app.stop()Close that and start a connect REPL.
Start the blueprint outside:
uv run dimos run unitree-go2-agenticfrom dimos import Dimos
app = Dimos.connect()
app.skills.relative_move(forward=2.0)
# Grab the image.
img = app.peek_stream("color_image", 1.0)
# Display it in a window.
import cv2, numpy as np
cv2.imshow("color_image", np.array(img.data))
cv2.waitKey(0)
app.stop()uv run dimos run unitree-go2-agentic
sleep 10; uv run dimos agent-send "follow the person wearing ..."uv run dimos run unitree-go2-agentic
uv run dimos agent-send "show the heart symbol"uv run dimos list
uv run dimos show-config
uv run dimos run unitree-go2 --help- Each prints sensible output, no tracebacks.
uv run dimos --replay run unitree-go2
uv run dimos --replay --replay-db go2_bigoffice run unitree-go2-memoryuv run dimos --simulation run unitree-go2
uv run dimos --simulation run unitree-go2-agentic
uv run dimos --simulation run unitree-g1-simuv run dimos run demo-camera- Webcam feed appears in rerun.
uv run dimos run unitree-go2-agentic --daemon
uv run dimos status
uv run dimos log -n 50
uv run dimos log -f # Ctrl+C
uv run dimos agent-send "say hello"
uv run dimos restart
uv run dimos stopuv run dimos run unitree-go2-agentic --daemon
uv run dimos mcp list-tools
uv run dimos mcp call relative_move --arg forward=0.3
uv run dimos mcp call observe
uv run dimos mcp status
uv run dimos mcp modules
uv run dimos stopRun any blueprint, then in another terminal:
uv run lcmspyuv run dimos --dtop run unitree-go2
uv run dtop