Skip to content

Releases: dimensionalOS/dimos

Release v0.0.13.post1

Choose a tag to compare

@dimos-release-bot dimos-release-bot released this 01 Jul 06:36
e022d80

v0.0.13.post1

Patch release for v0.0.13 with packaging fixes and a few features that landed after the initial cut.


What's new in this patch

Bug Fixes & Packaging

  • Pin support to Python <3.13 (#2640)
  • Bump minimum version of typing_extensions (#2639)
  • Fix release wheel builds (#2629)
  • Skip musllinux builds (#2661)
  • Fix release 13 issues (#2671)

Features

  • Introduce runtime scene packages for MuJoCo and Rerun (#2594)
  • Roboplan integration (#2478)
  • Point-LIO: mirror FAST-LIO cleanups — no-YAML config, memory2 Recorder, frame scheme (#2559)

Full v0.0.13 Changelog

banner_bordered_trimmed
The Agentive Operating System for Physical Space

Highlights

This is the Navigation, Relocalization, and Loop closure release.

160 commits, 17 contributors, 969 files changed.

Any lidar-enabled robot can now build a clean, loop-closed global map from its own recordings and relocalize against it on later runs. A new Rust voxel ray-tracing mapper with per-voxel normals stops moving objects and grazing rays from corrupting the map, so floors, stairs, and slopes stay dense and stable. PGO loop closure reconstructs a full global map in seconds from a sampled slice of memory2 recordings, and a dimos map tool builds, inspects, and exports the relocalization pointclouds. At runtime the robot loads a saved map, publishes the map -> world transform, and plans on the global costmap, with low-confidence matches filtered out and AprilTag/ArUco markers flowing through the same 3D pipeline as anchors.

⚠️ Breaking Changes

  • Foxglove viewer support removed (~15k lines); Rerun is the sole viewer backend. (#2122)
  • RPyC removed as a transport and dependency. (#2094)
  • Docker modules have been removed. (#2224)
  • Robot catalogue (RobotConfig) removed. Hardware metadata now comes from a _hardware.py factory. (#2550)
  • Manipulation viz config: visualization_backend / visualization_options replaced by a single visualization block (none / meshcat / viser). (#2475)

✨ New Features

Navigation

  • Per-platform nav blueprints: unitree-g1-nav-simple raytracing nav for the G1 (#2327), the i2rt FlowBase base from WASD teleop to full MID-360 + FastLio2 + click-to-drive (#2090), and alfred-nav for the new Alfred wheeled base (#2100). by @jeff-hykin, @mustafab0
  • 3D multi-level-surface (MLS) path planner that places nodes on map surfaces and plans over a cached graph, plus a path-planner-eval blueprint to score any planner against synthetic and mesh-derived scenarios. (#2310, #2302) by @aclauer
  • unitree-go2-nav-3d blueprint wires the Rust ray-tracer to the MLS planner for click-to-navigate 3D nav: incremental planner-artifact builds off the ingest path, per-frame replanning, string-pulled paths with tunable cost/safety, and a set_motion_mode() to disable stock obstacle avoidance. (#2570) by @aclauer
  • vis_throttle works out of the box and nav logging is much quieter (FastLIO, PGO, A*). (#2108, #2095) by @jeff-hykin

Mapping, SLAM & relocalization

  • Rust voxel ray-tracing mapper that clears stale voxels along rays so global maps handle moving objects (dimos run mid360-fastlio-ray-trace); per-voxel normals and a recency gate keep grazing rays from eroding floors, stairs, and slopes. (#2163, #2462, #2275) by @aclauer
  • Publishes a local_map slice of the global map around the robot for downstream nav. (#2257) by @aclauer
  • Pose-graph loop closure and global map reconstruction, plus a dimos map tool to visualize mem2 maps, run offline loop closure, and export relocalization pointclouds. (#2242, #2241, #2306) by @leshy
  • Go2 relocalization against a prebuilt map: load a saved map, publish map->world, and plan on the global costmap. (#2160) by @arkluc
  • Point-LIO native module as an alternative to FAST-LIO, plus a Virtual Mid-360 that records and replays Livox pcaps offline; FAST-LIO supports the same pcap record/replay, and Point-LIO inherits the same no-YAML config, memory2 Recorder, and frame scheme. (#2486, #2498, #2559) by @jeff-hykin
  • PyO3 Python bindings and a mem2 transform pipeline for the Rust ray-tracer and 3D planner. (#2351, #2368) by @aclauer

Robot support

  • A-750 arm: initial support with a keyboard-teleop-a750 blueprint and gripper bindings. (#1911) by @adob
  • G1 GR00T whole-body walking policy as a first-class coordinator task (unitree-g1-groot-wbc); --simulation selects 500 Hz hardware vs 50 Hz Mujoco, and Twists on /g1/cmd_vel drive it. (#2300, #2239) by @Nabla7
  • Go2 rage mode is now a bidirectional set_rage_mode(enable) toggle (restores the normal velocity envelope on disable), the lowstate stream is part of Go2ConnectionProtocol and implemented on the sims, and a get_battery_soc() skill reads battery level. (#2569) by @ruthwikdasyam
  • Support for current Unitree firmware (G1 >= 1.5.1, Go2 >= 1.1.15) via an optional aes_128_key; connect() now fails fast with an actionable error instead of hanging. (#2476) by @KrishnaH96

Manipulation

  • Viser visualizer with a MoveIt-style plan/preview/execute UI; the loose viz options collapse into one validated visualization config. (#2475) by @TomCC7
  • Pink IK backend (kinematics_name=pink) for faster IK, and a visualization protocol routed through WorldMonitor with trajectory-timed preview playback. (#2481, #2460) by @TomCC7
  • Roboplan integration: a single backend implements both world and planner specs (world_backend=roboplan), usable with roboplan's planner or the generic planners (e.g. planner_name=rrt_connect). (#2478) by @TomCC7
  • Skills return a structured SkillResult (success, message, error_code, duration) with domain error enums, exposed to the LLM as JSON for structured retries; all 18 skills migrated. (#2091) by @mustafab0
  • xArm teleop syncs to the robot's real joint state at startup and moves to a default pose on activate/deactivate. (#2425) by @TomCC7

Simulation

  • Runtime scene packages: a scene.meta.json contract resolves MuJoCo XML/.mjb, Rerun/browser visuals, entities, and frame alignment from one cooked package so consumers stop hardcoding folder layouts. Selectable with --scene (none / office / supermarket); unitree-g1-groot-wbc is the first end-to-end consumer (spawn, lidar, map, plan, Rerun robot/scene viz, WASD velocity). (#2594) by @Nabla7

Teleoperation

  • Hosted teleoperation over WebRTC via a Cloudflare Realtime SFU: a HostedTeleopModule (cmd/state datachannels + camera video) that drops into existing blueprints, with recording and latency/jitter/loss stats (dimos run teleop-hosted-go2 teleop-recorder). ([#2411](https:...
Read more

Release v0.0.13: Navigation, Relocalization, Loop closure, Map loading/saving, realtime mapping,

Choose a tag to compare

@dimos-release-bot dimos-release-bot released this 30 Jun 22:26
821b8ee
banner_bordered_trimmed
The Agentive Operating System for Physical Space

Highlights

This is the Navigation, Relocalization, and Loop closure release.

160 commits, 17 contributors, 969 files changed.

Any lidar-enabled robot can now build a clean, loop-closed global map from its own recordings and relocalize against it on later runs. A new Rust voxel ray-tracing mapper with per-voxel normals stops moving objects and grazing rays from corrupting the map, so floors, stairs, and slopes stay dense and stable. PGO loop closure reconstructs a full global map in seconds from a sampled slice of memory2 recordings, and a dimos map tool builds, inspects, and exports the relocalization pointclouds. At runtime the robot loads a saved map, publishes the map -> world transform, and plans on the global costmap, with low-confidence matches filtered out and AprilTag/ArUco markers flowing through the same 3D pipeline as anchors.

⚠️ Breaking Changes

  • Foxglove viewer support removed (~15k lines); Rerun is the sole viewer backend. (#2122)
  • RPyC removed as a transport and dependency. (#2094)
  • Docker modules have been removed. (#2224)
  • Robot catalogue (RobotConfig) removed. Hardware metadata now comes from a _hardware.py factory. (#2550)
  • Manipulation viz config: visualization_backend / visualization_options replaced by a single visualization block (none / meshcat / viser). (#2475)

✨ New Features

Navigation

  • Per-platform nav blueprints: unitree-g1-nav-simple raytracing nav for the G1 (#2327), the i2rt FlowBase base from WASD teleop to full MID-360 + FastLio2 + click-to-drive (#2090), and alfred-nav for the new Alfred wheeled base (#2100). by @jeff-hykin, @mustafab0
  • 3D multi-level-surface (MLS) path planner that places nodes on map surfaces and plans over a cached graph, plus a path-planner-eval blueprint to score any planner against synthetic and mesh-derived scenarios. (#2310, #2302) by @aclauer
  • unitree-go2-nav-3d blueprint wires the Rust ray-tracer to the MLS planner for click-to-navigate 3D nav: incremental planner-artifact builds off the ingest path, per-frame replanning, string-pulled paths with tunable cost/safety, and a set_motion_mode() to disable stock obstacle avoidance. (#2570) by @aclauer
  • vis_throttle works out of the box and nav logging is much quieter (FastLIO, PGO, A*). (#2108, #2095) by @jeff-hykin

Mapping, SLAM & relocalization

  • Rust voxel ray-tracing mapper that clears stale voxels along rays so global maps handle moving objects (dimos run mid360-fastlio-ray-trace); per-voxel normals and a recency gate keep grazing rays from eroding floors, stairs, and slopes. (#2163, #2462, #2275) by @aclauer
  • Publishes a local_map slice of the global map around the robot for downstream nav. (#2257) by @aclauer
  • Pose-graph loop closure and global map reconstruction, plus a dimos map tool to visualize mem2 maps, run offline loop closure, and export relocalization pointclouds. (#2242, #2241, #2306) by @leshy
  • Go2 relocalization against a prebuilt map: load a saved map, publish map->world, and plan on the global costmap. (#2160) by @arkluc
  • Point-LIO native module as an alternative to FAST-LIO, plus a Virtual Mid-360 that records and replays Livox pcaps offline; FAST-LIO supports the same pcap record/replay, and Point-LIO inherits the same no-YAML config, memory2 Recorder, and frame scheme. (#2486, #2498, #2559) by @jeff-hykin
  • PyO3 Python bindings and a mem2 transform pipeline for the Rust ray-tracer and 3D planner. (#2351, #2368) by @aclauer

Robot support

  • A-750 arm: initial support with a keyboard-teleop-a750 blueprint and gripper bindings. (#1911) by @adob
  • G1 GR00T whole-body walking policy as a first-class coordinator task (unitree-g1-groot-wbc); --simulation selects 500 Hz hardware vs 50 Hz Mujoco, and Twists on /g1/cmd_vel drive it. (#2300, #2239) by @Nabla7
  • Go2 rage mode is now a bidirectional set_rage_mode(enable) toggle (restores the normal velocity envelope on disable), the lowstate stream is part of Go2ConnectionProtocol and implemented on the sims, and a get_battery_soc() skill reads battery level. (#2569) by @ruthwikdasyam
  • Support for current Unitree firmware (G1 >= 1.5.1, Go2 >= 1.1.15) via an optional aes_128_key; connect() now fails fast with an actionable error instead of hanging. (#2476) by @KrishnaH96

Manipulation

  • Viser visualizer with a MoveIt-style plan/preview/execute UI; the loose viz options collapse into one validated visualization config. (#2475) by @TomCC7
  • Pink IK backend (kinematics_name=pink) for faster IK, and a visualization protocol routed through WorldMonitor with trajectory-timed preview playback. (#2481, #2460) by @TomCC7
  • Roboplan integration: a single backend implements both world and planner specs (world_backend=roboplan), usable with roboplan's planner or the generic planners (e.g. planner_name=rrt_connect). (#2478) by @TomCC7
  • Skills return a structured SkillResult (success, message, error_code, duration) with domain error enums, exposed to the LLM as JSON for structured retries; all 18 skills migrated. (#2091) by @mustafab0
  • xArm teleop syncs to the robot's real joint state at startup and moves to a default pose on activate/deactivate. (#2425) by @TomCC7

Simulation

  • Runtime scene packages: a scene.meta.json contract resolves MuJoCo XML/.mjb, Rerun/browser visuals, entities, and frame alignment from one cooked package so consumers stop hardcoding folder layouts. Selectable with --scene (none / office / supermarket); unitree-g1-groot-wbc is the first end-to-end consumer (spawn, lidar, map, plan, Rerun robot/scene viz, WASD velocity). (#2594) by @Nabla7

Teleoperation

  • Hosted teleoperation over WebRTC via a Cloudflare Realtime SFU: a HostedTeleopModule (cmd/state datachannels + camera video) that drops into existing blueprints, with recording and latency/jitter/loss stats (dimos run teleop-hosted-go2 teleop-recorder). (#2411) by @ruthwikdasyam
  • Stream a robot or sim camera (MuJoCo, RealSense, Go2) into the Quest VR headset during teleop. (#2198) by @ruthwikdasyam

Learning & datasets

  • Teleop-to-dataset pipeline: an EpisodeMonitorModule turns Quest/keyboard buttons into start/save/discard episodes and a CollectionRecorder captures obs/action/status to a session DB (learning-collect-quest-xarm7 / -piper); dimos dataprep build / inspect then time-syncs the streams and exports LeRobot v2 or HDF5 datasets with per-feature stats. (#2446) by @ruthwikdasyam

Perception & fiducials

  • AprilTag 3D detector plus a camera-calibration CLI that generates camera_info.yaml, with a desk-marker-tf blueprint; calibration also works with the Go2 (live topic source, fi...
Read more

Release v0.0.12: memory2 streaming engine, async modules, OpenArm + G1 low-level, MuJoCo manipulation, slimmer install

Choose a tag to compare

@paul-nechifor paul-nechifor released this 09 May 00:47
4ef4e83
banner_bordered_trimmed
The Agentive Operating System for Physical Space

Highlights

108 commits, 11 contributors, 972 files changed.

memory2 lands as a typed streaming observation engine. Modules can now be async def. Three new robots: OpenArm bimanual, G1 whole-body low-level, Go2 over Unitree SDK2. Manipulation now runs in MuJoCo. The base install drops several hundred MB: perception, sim, and whisper are now opt-in extras.

⚠️ Breaking Changes

Most breakers are import / config renames. The install shrinkage requires opting into extras you used to get for free.

  • Perception (and torch, bitsandbytes) removed from base install — pip install 'dimos[perception]' to opt in. (#1888)
  • Sim removed from base install (~550 MB) — pip install 'dimos[sim]'. (#1878)
  • faster-whisper is the default STT — pip install 'dimos[whisper]' for full Whisper. (#1877)
  • Blueprint.build removed — use ModuleCoordinator.build(blueprint) and import from dimos.core.coordination. (#1744)
  • Module Config must be a pydantic.BaseModel; module __init__ signature standardized. (#1510)
  • __init__.py re-exports removed — import directly from defining modules. (#1545)
  • Blueprint aliases removed — use MyModule.blueprint() instead of my_module(). (#1606)
  • Old Agent class removed — now agent communication is just through MCP. (#1657)
  • Teleop blueprints regrouped under teleop_*; VisualizingTeleopModule removed. (#1602)
  • Manipulation: joint names use / (arm/joint1); WorldStateMonitorRobotStateMonitor; _hardware.py removed in favor of RobotConfig. (#1728, #1725)
  • use_mesh_obstacles default flipped to False; ObjectDB no longer matches by name. (#1656)

🚀 Upgrade

pip install -U 'dimos[perception,sim,whisper]'

Drop extras you don't use.

✨ New Features

memory2

Typed streaming observation engine. memory2 replaces per-blueprint perception buffers with first-class streams that record, query, and visualize together.

  • Stream/Observation primitives, SQLite + R*Tree + vec0 backends, codecs, live channels. (#1536) by @leshy
  • Recorder/Query modules, semantic search, 3D detection projections, ~10× smaller replay files. (#1769) by @leshy
  • StreamModules + Go2 auto-recorder + visualization scaffolding. (#1682, #1925, #1637) by @leshy

Async modules & agent API

Modules can now be async def. New surface area for scripting and tool-calling agents.

  • Async modules: async def handlers/RPCs, async @rpc, self.spawn, latest-only dispatch. (#1920) by @paul-nechifor
  • Porcelain Python API: connect() to script against a running DimOS. (#1779) by @paul-nechifor
  • app.peek_stream(name, timeout) for one-shot stream samples. (#1909) by @paul-nechifor
  • MCP tool streams: tools push progress back to agents during a single tool call. (#1713) by @paul-nechifor
  • Modules can be restarted at runtime; multiple blueprints can start after startup. (#1755, #1744) by @paul-nechifor
  • New patrolling module + unitree-go2-security agentic patrol blueprint; patrol rewritten as an async module. (#1488, #1619, #1939) by @paul-nechifor
  • Blueprint config via CLI -o key=value, __ env vars, and --config=foo.json; --help lists options. (#1543) by @Dreamsorcerer

Robot support

  • OpenArm bimanual: from-scratch CAN driver, adapter, blueprints, mock + real planner. (#1897) by @mustafab0
  • G1 humanoid: 500 Hz whole-body low-level coordinator + unitree-g1-coordinator blueprint. (#1954) by @mustafab0
  • Go2 over Unitree SDK2 (dimos[unitree-dds]) with Nix-based cyclonedds setup. (#1885) by @ruthwikdasyam
  • Go2 rage mode (~2.5 m/s) over WebRTC + dedicated keyboard-teleop blueprint. (#1903) by @ruthwikdasyam
  • Go2 WebRTC TwistAdapter integrated with ControlCoordinator. (#1362) by @mustafab0
  • dimos go2tool discover / connect-wifi: find Go2s on LAN or over Bluetooth and configure Wi-Fi without the vendor app. (#1990) by @leshy
  • New Hong Kong office Go2 replay datasets. (#1991) by @leshy

Manipulation in MuJoCo

Any manipulation blueprint can now run in sim with --simulation.

dimos --simulation run coordinator-xarm7
  • Manipulation in MuJoCo: --simulation spins up a sim arm; coordinator and teleop blueprints (xArm6/xArm7/Piper) honor the flag, replacing per-arm sim blueprints. (#1639, #2027) by @ruthwikdasyam
  • Quest teleop in MuJoCo for xArm6 + Piper, with eye-in-hand sim cameras. (#1958) by @ruthwikdasyam
  • Sim assets for xArm6 and Piper + MujocoCamera (drop-in RealSense replacement in sim). (#1642, #1694) by @ruthwikdasyam
  • Unified RobotConfig: parse joints/DOF/limits from URDF/MJCF instead of hand-wiring. (#1699) by @mustafab0
  • Drake loader supports MJCF; configured home pose + EE orientation honored when planning. (#1722) by @mustafab0
  • Manipulation demo: look/drop_on skills, distance-adaptive grasps, structured agent prompt. (#1656) by @mustafab0
  • Control blueprints split into a package; hardcoded IPs replaced with env vars (XARM7_IP, …). (#1601) by @ruthwikdasyam
  • Unity simulator as a DimOS module (dimos run unity-sim); auto-downloads on Linux x86. (#1539) by @jeff-hykin

Core & visualizer

  • Rust native modules: write performance-critical modules in Rust (LCM transport, NativeModule API). (#1794) by @aclauer
  • Watchdog kills all DimOS child processes (and grandchildren) when the parent exits. (#1886) by @paul-nechifor
  • DockerModules restored: parallel deploy, image pull, build args, rebuild on Dockerfile change. (#1431) by @jeff-hykin
  • Voxel maps render as Rerun Points3D spheres (~10× faster at high point counts). (#1793) by @ruthwikdasyam
  • Rerun pipeline latency: PointCloud2 ~350 ms → ~5 ms; costmap ~40 ms → ~5 ms. (#1747) by @ruthwikdasyam
  • Blueprint module dependency graph auto-rendered as a Graph tab in Rerun. (#1705) by @ruthwikdasyam
  • Viewer remote --connect works again — clicks/teleop flow over websockets. (#1784) by [@jeff-hykin](https://gith...
Read more

Release v0.0.11: Dimensional now fully Agent-native, Interactive Visualizer, Drones, Temporal Memory, Fleet control

Choose a tag to compare

@spomichter spomichter released this 12 Mar 00:26
24c6c58

banner

The Agentive Operating System for Physical Space
https://discord.gg/dimos

Highlights

82 commits, 10 contributors, 396 files changed.

Production CLI and daemon, MCP tooling, temporal-spatial memory, and first-class support for coding agents. Dask has been removed entirely. The full stack now runs from dimos run through dimos stop.

🚀 New Features

Agent-Native Development

DimOS is now built to be driven by coding agents. Point OpenClaw, Claude Code, or Cursor at AGENTS.md and they can build, run, and debug Dimensional applications using the CLI and MCP interfaces directly.

  • AGENTS.md — comprehensive onboarding doc: architecture, CLI reference, skill rules, blueprint quick-reference. Your agent reads this and starts coding. (#1495) by @spomichter

  • MCP server — all @skill methods exposed as HTTP tools. External agents call dimos mcp call relative_move --arg forward=0.5 or connect via JSON-RPC. (#1300) by @PaulNechifor

  • MCP CLI — dimos mcp list-tools, dimos mcp call, dimos mcp status, dimos mcp modules. (#1451) by @spomichter

  • Agent context logging — MCP tool calls and agent messages logged to per-run JSONL for debugging and replay. (#1499) by @spomichter

CLI & Daemon

Full process lifecycle — no more Ctrl-C in tmux.

  • Daemon mode — dimos run --daemon with health checks and run registry. dimos stop, dimos status, dimos restart. (#1436) by @spomichter

  • Structured logs — dimos log -f with per-run JSONL, follow mode, JSON output, and filtering. (#1497) by @spomichter

  • Show config — dimos show-config prints resolved GlobalConfig with source tracing.

Temporal-Spatial Memory

Robots in physical space ingest hours of video and lidar. Temporal-spatial memory gives them a human-like understanding of the world — causal object relationships, entity tracking through time and physical space, and the ability to answer complex temporal queries.

Who spends the most time in the kitchen? What time on average do I wake up? Which set of switches toggles the main lights? Who was at the office at 9am last Thursday?

Traditional frame-level embeddings (CLIP, ViT) lose temporal context and don't scale beyond a handful of frames. Video transformers are expensive and don't operate in RGB-D. Dimensional agents work with video + lidar natively, tracking entities across hours and days.

dimos --replay --replay-dir unitree_go2_office_walk2 run unitree-go2-temporal-memory

(#1511) by @spomichter

Interactive Viewer

Custom Rerun fork (dimos-viewer) is now the default. Click-to-navigate: click a point in the 3D view → PointStamped → A* planner → robot moves. (#1414, #1394) by @spomichter

Drone Support

Drone blueprints modernized to match Go2 composition pattern. drone-basic and drone-agentic work with replay, Rerun, and the full CLI. (#1520) by @spomichter

Perception

Robot Support

Installation & Platform

Core Architecture

Documentation

🐛 Bug Fixes

⚠️ Breaking Changes

  • --viewer-backend renamed to --viewer
  • Dask removed — blueprints using Dask workers need migration to native worker pool
  • Default viewer changed from rerun-web to rerun (native dimos-viewer)

What's Changed

Read more

Packaging update to v0.0.10 — no major feature changes

Choose a tag to compare

@spomichter spomichter released this 21 Feb 16:12
8e0f31a

Packaging update to v0.0.10 — no major feature changes.

  • Restored README banner image
  • G1 rerun visualization support
  • G1 sim video stream and camera_info
  • Logging color improvements
  • Docs updates (nix, testing)

See v0.0.10 for the full release notes.

What's Changed

Full Changelog: v0.0.10...v0.0.10.post1

Release v0.0.10: Manipulation Stack, MuJoCo Simulation, DDS Transport, Web and Native Visualization

Choose a tag to compare

@spomichter spomichter released this 20 Feb 23:29
f101945

Dimensional

Release v0.0.10

The Agentive Operating System for Generalist Robotics

Discord


Highlights

88+ commits, 20 contributors, 700+ files changed.

The TLDR: a complete manipulation stack, MuJoCo simulation, DDS transport, and a rewritten visualization pipeline. Agents are no longer bolted on top — they're refactored as native modules with direct stream access. The entire ROS message dependency has been removed from core DimOS, and we've added VR, phone, and arm teleoperation stacks. You can now vibecode a pick-and-place task from natural language to motor commands. Installation has been significantly streamlined — no more direnv, simpler setup, and the web viewer is now the default.


🚀 New Features

Simulation

  • MuJoCo simulation module — Run any DimOS blueprint in simulation with no hardware. Supports xArm and Unitree embodiments, parses MJCF/URDF for robot properties, monotonic clock timing (no time.sleep). dimos --simulation run unitree-go2 (#1035) by @jca0
  • Simulation teleop blueprints — Added simulation teleop blueprints for Piper, xArm6, and xArm7. (#1308) by @mustafab0

Manipulation

  • Modular manipulation stack — Full planning stack with Drake: FK/IK solvers (Jacobian + Drake optimization), RRT path planning, world model with obstacle monitoring, multi-robot management. xArm6/7 and Piper support. (#1079) by @mustafab0
  • Joint servo and cartesian controllers — Joint position/velocity controllers and cartesian IK task with Pinocchio solver. PoseStamped stream input for real-time control. (#1116) by @mustafab0
  • GraspGen integration — Grasp generation via Docker-hosted GPU model. Lazy container startup, thread-safe init, RPC generate_grasps() returns ranked PoseArray. (#1119, #1234) by @JalajShuklaSS
  • Gripper control — Gripper RPC methods on control coordinator, exposed adapter property for custom implementations. (#1213) by @mustafab0
  • Detection3D and Object support — Object input topics, TF support on manipulation module, pointcloud-to-convex-hull for Drake imports. (#1236) by @mustafab0
  • Agentic pick and place — Reimplemented manipulation skills for agent-driven pick-and-place workflows. (#1237) by @mustafab0

Teleoperation

  • Quest VR teleoperation — Full WebXR + Deno bridge stack. Quest controller data (pose, trigger, grip) streamed to DimOS modules. Monitor-style locking for control loops. (#1215) by @ruthwikdasyam
  • Phone teleoperation — Control Go2 from your phone with a web-based teleop interface. (#1280) by @ruthwikdasyam
  • Arm teleop with Pinocchio IK — Single and dual arm teleoperation using Pinocchio inverse kinematics. Blueprints for xArm, Piper, and dual configurations. (#1246) by @ruthwikdasyam

Transports & Infrastructure

  • DDS transport protocol — CycloneDDS transport with configurable QoS (high-throughput and reliable profiles). Optional install, benchmark integration. (#1174) by @Kaweees
  • Pubsub pattern subscriptions — Glob and regex pattern matching for topic subscriptions. subscribe_all() for bridge-style consumers. Topic type encoding in channel strings (/topic#module.ClassName). (#1114) by @leshy
  • LCM raw bytes passthrough — Skip lcm_encode() when message is already bytes. (#1223) by @leshy
  • Unified TimeSeriesStore — Pluggable backends (InMemory, SQLite, Pickle, PostgreSQL) with SortedKeyList for O(log n) operations. Replaces the old replay system and TimestampedCollection. Collection API with slice, range, and streaming methods. (#1080) by @leshy
  • DimosROS benchmark tests — Benchmark suite for ROS transport performance. (#1087) by @leshy

Navigation

  • FASTLIO2 support — Hardware-verified localization with arm64 support. Docker deployment with FAR Planner, terrain analysis, and bagfile playback mode. Builds or-tools from source on arm64. (#1149) by @baishibona
  • Native Livox + FASTLIO2 module — First-class DimOS native module for Livox Mid-360 lidar with FASTLIO2 localization. (#1235) by @leshy

Visualization

  • RerunBridge module and CLI — New bridge that subscribes to all LCM messages and logs those with to_rerun() to Rerun viewer. GlobalConfig singleton, web viewer support. Replaces the old rerun initialization system. (#1154) by @leshy
  • Webcam rerun visualization — Camera module logs to Rerun with pinhole projection for 3D visualization. (#1117) by @ruthwikdasyam
  • Default viewer switched to rerun-web — Browser-based viewer is now the default for broader compatibility. No native viewer install needed. (#1324) by @spomichter

Agents

  • Agent refactor — Restructured agent module with cleaner imports and global config integration. (#1211) by @paul-nechifor
  • Timestamp knowledge — Agents now have timestamp awareness in prompts for temporal reasoning. (#1093) by @ClaireBookworm
  • Observe skill — Go2 can now observe (capture and describe) its environment via agent skill. (#1109) by @paul-nechifor

Platform & Hardware

  • G1 without ROS — Unitree G1 blueprints decoupled from ROS dependency. Lazy imports for fast startup. (#1221) by @jeff-hykin
  • ARM (aarch64) support — DimOS runs on ARM hardware. Platform-conditional dependencies, open3d source builds for arm64. (#1229) by @jeff-hykin
  • Universal joint/hardware schemaHardwareComponent dataclass with JointState, JointName type aliases. Backend registry with auto-discovery for SDK adapters. (#1040, #1067) by @mustafab0

🔧 Improvements

  • Optional Dask — Start without Dask using --no-dask flag. Startup time reduced from ~60s to ~45s. (#1111, #1232) by @paul-nechifor
  • RPC rework — Renamed ModuleBlueprint_BlueprintAtom, ModuleBlueprintSetBlueprint, ModuleConnectionStream. Added ModuleRef, improved type hints throughout. (#1143) by @jeff-hykin
  • Image class simplification — Rewritten as pure NumPy dataclass. Removed CUDA backend, unused methods (solve_pnp, csrt_tracker), and image_impls/ directory. (#1161) by @leshy
  • Odometry message cleanup — Simplified Odometry message type. (#1256) by @leshy
  • Remove all ROS message dependencies — Purged ROS message types from core DimOS. Refactored rosnav to use ROSTransport. Removed dead ROS bridge code. (#1230) by @alexlin2
  • Removed bad function serialization — Eliminated unnecessary serialization of Python functions. (#1121) by @paul-nechifor
  • Benchmark IEC units — Switched bandwidth benchmarks from SI to IEC units for accuracy. (#1147) by @leshy
  • Pubsub typing improvements — Thread-safety locks on subscribe_new_topics and subscribe_all. Proper type params across pubsub stack. (#1153) by @leshy
  • Autogenerated blueprint list — Blueprints are now auto-discovered and listed. (#1100) by @paul-nechifor
  • Generic Buttons message — Renamed QuestButtons to Buttons with generic field names for cross-platform teleop. (#1261) by @ruthwikdasyam
  • Dev container uses ros-dev image./bin/dev now runs the ROS-enabled dev image. (#1170) by @leshy
  • LSP support — Added python-lsp-server and python-lsp-ruff to dev dependencies. (#1169) by @leshy
  • Lazy-load pyrealsense2 — RealSense camera module uses lazy imports to avoid errors in simulation environments without the SDK. (#1309) by @spomichter
  • Removed unused mmcv and mmengine — Dead ...
Read more

Release v0.0.9: hotfixes and v0.0.8 patch

Choose a tag to compare

@spomichter spomichter released this 20 Feb 08:48
e4defcb

What's Changed

  • Pre-Release v0.0.8: Unitree Go2 Navigation & Exploration Beta, Transport Updates, Documentation updates by @spomichter in #1056
  • Fix LFS Updating Issue by @jeff-hykin in #1090
  • Launch hotfixes: Git clone change to HTTPS from SSH, get_data change to main branch by @spomichter in #1091
  • Bump version v0.0.9 by @spomichter in #1095
  • v0.0.9 Release Patch: Git clone change to HTTPS from SSH, get_data change, LFS changes by @spomichter in #1092

Full Changelog: v0.0.8...v0.0.9

Release v0.0.8: Unitree Go2 Navigation Pre-Release Patch, ROSTransport, Rerun bug fixes

Choose a tag to compare

@spomichter spomichter released this 23 Jan 15:23
a9ef865

What's Changed

New Contributors

Full Changelog: v0.0.7...v0.0.8

Release v0.0.7: Unitree Go2 Navigation Pre-Release

Choose a tag to compare

@spomichter spomichter released this 16 Jan 01:54
ce66d1b

What's Changed

New Contributors

Full Changelog: https://github.com/dimensionalOS/dimos/commits/v0.0.7

Release v0.0.6: UnitreeGo2 Pre-Release

Choose a tag to compare

@spomichter spomichter released this 08 Jan 02:18

What's Changed

New Contributors

Read more