Skip to content

Make dimos pip-installable#731

Merged
paul-nechifor merged 28 commits intodevfrom
pip-install
Dec 30, 2025
Merged

Make dimos pip-installable#731
paul-nechifor merged 28 commits intodevfrom
pip-install

Conversation

@paul-nechifor
Copy link
Contributor

@paul-nechifor paul-nechifor commented Nov 13, 2025

New stuff

  • I've copied rxpy_backpressure in since it's so small.
  • I've tested the release of dimos-lcm to test PyPI.
  • Replaced our go2-webrtc-connect clone with the original.
  • I'm currently cloning the dev repo in order to get LFS files when using pip install dimos. I need to switch to main when we release.
  • Added fresh instructions in README_installation.md .

Old stuff

Now you can:

pip install dimos
dimos-robot --robot-ip 192.168.x.xxx run unitree-go2

or with uv:

uv add dimos
uv run dimos-robot --robot-ip 192.168.x.xxx run unitree-go2

or even better, no need to install:

uvx --from dimos dimos-robot --robot-ip=192.168.x.xxx run unitree-go2

Or even better, rename dimos-robot to dimos (#740) and it becomes just:

uvx dimos --robot-ip=192.168.x.xxx run unitree-go2

Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Copy link
Contributor

@leshy leshy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is amazing, but some issues,

Do we need a check if LFS is installed? with pip you don't get our readme etc and very possible user doesn't have LFS

I think this git clone will pull full LFS and we need to GIT_LFS_SKIP_SMUDGE=1 when checking out.

(is there some way to check out only part of the repo, only refs? idk)

@paul-nechifor
Copy link
Contributor Author

This is amazing, but some issues,

Do we need a check if LFS is installed? with pip you don't get our readme etc and very possible user doesn't have LFS

I think this git clone will pull full LFS and we need to GIT_LFS_SKIP_SMUDGE=1 when checking out.

(is there some way to check out only part of the repo, only refs? idk)

  • Your code already checks for git-lfs being installed. :) I've added a check for git as well since people who would install through PyPI might not have it.
  • Added GIT_LFS_SKIP_SMUDGE=1. It's possible to checkout just the refs, without a working directory, but then where do you store the files? I don't think size will be a big issue because it currently uses --depth 1.

if xdg_data_home:
return Path(xdg_data_home) / "dimos"
return Path.home() / ".local" / "share" / "dimos"
elif system == "Darwin": # macOS
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@paul-nechifor i assume this hasnt been tested on mac

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It hasn't, but we can do the checks once the Mac PRs are merged.

@paul-nechifor paul-nechifor requested a review from leshy November 27, 2025 01:14
@spomichter
Copy link
Contributor

@greptile

@greptile-apps
Copy link
Contributor

greptile-apps bot commented Nov 29, 2025

Greptile Overview

Greptile Summary

This PR enables pip installation of dimos by restructuring data file access patterns and package configuration.

  • Modified dimos/utils/data.py to automatically clone the repository to a user data directory when running as an installed package (rather than from source)
  • Updated dimos/simulation/mujoco/model.py to use the get_data() utility instead of relative paths for data directory access
  • Added RPC timeout extension (1200s) for "start" calls to accommodate longer module startup times when dependencies need to be downloaded
  • Configured pyproject.toml with explicit package-data paths and removed the numpy <2.0.0 upper bound constraint
  • Added MANIFEST.in to properly exclude development artifacts from source distributions
  • Added documentation for pip and uv installation workflows

Confidence Score: 4/5

  • This PR is safe to merge with minor considerations around user experience for first-time pip users.
  • The changes are well-structured and follow good patterns for making a package pip-installable. The data directory handling is platform-aware and has proper fallbacks. The only minor concern is the SSH URL for cloning which requires users to have SSH keys configured, though this may be intentional for a private repository.
  • Pay attention to dimos/utils/data.py - the SSH-based git clone URL may affect users without SSH keys configured.

Important Files Changed

File Analysis

Filename Score Overview
dimos/utils/data.py 4/5 Added platform-specific data directory detection and automatic repo cloning for pip-installed packages. Uses SSH URL for cloning which is appropriate for private repos.
dimos/simulation/mujoco/model.py 5/5 Refactored to use get_data() utility instead of relative paths, enabling pip-installed package support.
dimos/protocol/rpc/spec.py 4/5 Added special case timeout (1200s) for "start" RPC calls to handle long module startup times.
pyproject.toml 5/5 Updated package configuration for pip installability: explicit package-data paths, removed numpy upper bound, added node_modules exclusion.
MANIFEST.in 5/5 New file controlling sdist package contents, excluding dev files, tests, and build artifacts.
docs/package_usage.md 5/5 New documentation for pip and uv installation instructions with CLI usage examples.

Sequence Diagram

sequenceDiagram
    participant User
    participant CLI as dimos-robot CLI
    participant Data as dimos/utils/data.py
    participant FS as File System
    participant Git as Git

    User->>CLI: dimos-robot run unitree-go2
    CLI->>Data: get_data("mujoco_sim")
    Data->>FS: Check DIMOS_PROJECT_ROOT/.git exists
    alt Running from git repo
        Data-->>CLI: Return repo data path
    else Running as pip package
        Data->>FS: Get user data directory
        Data->>FS: Check if repo already cloned
        alt Repo not cloned
            Data->>Git: git clone --depth 1 dimos repo
            Git-->>Data: Clone complete
        end
        Data-->>CLI: Return cloned repo data path
    end
    CLI->>CLI: Load simulation models/assets
Loading

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

6 files reviewed, no comments

Edit Code Review Agent Settings | Greptile

@spomichter
Copy link
Contributor

@paul-nechifor Have we tested this via the pypi test sandbox just to make sure it all works

@paul-nechifor
Copy link
Contributor Author

@paul-nechifor Have we tested this via the pypi test sandbox just to make sure it all works

No. I tested it locally by generating the wheel, installing it in a blank venv and running it.

But I'll do this too.

@ym-han ym-han mentioned this pull request Dec 2, 2025
@paul-nechifor
Copy link
Contributor Author

I've tested publishing to https://test.pypi.org . It doesn't work currently because it doesn't allow dependencies which are not on PyPI. So it only works after I remove these packages:

"rxpy-backpressure @ git+https://github.com/dimensionalOS/rxpy-backpressure.git",
"go2-webrtc-connect @ git+https://github.com/dimensionalOS/go2_webrtc_connect.git",
"clip @ git+https://github.com/openai/CLIP.git",
"dimos-lcm @ git+https://github.com/dimensionalOS/dimos-lcm.git@3aeb724863144a8ba6cf72c9f42761d1007deda4",
"contact-graspnet-pytorch @ git+https://github.com/dimensionalOS/contact_graspnet_pytorch.git",
"detectron2 @ git+https://github.com/facebookresearch/detectron2.git@v0.6",
"torch @ https://pypi.jetson-ai-lab.io/jp6/cu126/+f/564/4d4458f1ba159/torch-2.8.0-cp310-cp310-linux_aarch64.whl",
"torchvision @ https://pypi.jetson-ai-lab.io/jp6/cu126/+f/1c0/3de08a69e9554/torchvision-0.23.0-cp310-cp310-linux_aarch64.whl",
"onnxruntime-gpu @ https://pypi.jetson-ai-lab.io/jp6/cu126/+f/4eb/e6a8902dc7708/onnxruntime_gpu-1.23.0-cp310-cp310-linux_aarch64.whl",
"xformers @ https://pypi.jetson-ai-lab.io/jp6/cu126/+f/731/15133b0ebb2b3/xformers-0.0.33+ac00641.d20250830-cp39-abi3-linux_aarch64.whl",

Solution:

  • dimos-lcm is something we can release

  • for rxpy-backpressure and go2-webrtc-connect we could use the official releases. Is there a reason they're forked?

  • for the jetson dependencies (torch, torchvision, onnxruntime-gpu, and xformers), I think we should remove these. We need a separate way of installing these. Maybe we should just have a requirements_jetson.txt and tell people to pip install that?

  • and for the rest (clip, contact-graspnet-pytorch, and detectron2), I don't know what to do. Maybe we should also tell people to install them separately.

@leshy
Copy link
Contributor

leshy commented Dec 26, 2025

* Your code already checks for `git-lfs` being installed. :) I've added a check for `git` as well since people who would install through PyPI might not have it.

ah perfect

* Added `GIT_LFS_SKIP_SMUDGE=1`. It's possible to checkout just the refs, without a working directory, but then where do you store the files? I don't think size will be a big issue because it currently uses `--depth 1`.

yes SKIP_SMUDGE is the intended way to check out dimos

@leshy
Copy link
Contributor

leshy commented Dec 29, 2025

Replaced our go2-webrtc-connect clone with the original.

we are back at the clone, legions lidar processing is too slow
legion1581/unitree_webrtc_connect#46

until this is merged (never given the other PRs) we have to use my fork

leshy
leshy previously approved these changes Dec 29, 2025
Copy link
Contributor

@leshy leshy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

just legion stuff

@leshy
Copy link
Contributor

leshy commented Dec 30, 2025

pip install unitree-webrtc-connect-leshy published

@paul-nechifor
Copy link
Contributor Author

pip install unitree-webrtc-connect-leshy published

Should we not wait for Legion?

@leshy
Copy link
Contributor

leshy commented Dec 30, 2025

pip install unitree-webrtc-connect-leshy published

Should we not wait for Legion?

I just dont know when he'll update this and want to keep moving, we can update once he updates

@paul-nechifor paul-nechifor merged commit 647b7db into dev Dec 30, 2025
24 of 25 checks passed
leshy pushed a commit that referenced this pull request Jan 5, 2026
# New stuff

* I've copied rxpy_backpressure in since it's so small.
* I've tested the release of dimos-lcm to test PyPI.
* Replaced our go2-webrtc-connect clone with the original.
* I'm currently cloning the `dev` repo in order to get LFS files when using `pip install dimos`. I need to switch to `main` when we release.
* Added fresh instructions in README_installation.md .

---

# Old stuff

Now you can:

```bash
pip install dimos
dimos-robot --robot-ip 192.168.x.xxx run unitree-go2
```

or with `uv`:

```bash
uv add dimos
uv run dimos-robot --robot-ip 192.168.x.xxx run unitree-go2
```

or even better, no need to install:

```bash
uvx --from dimos dimos-robot --robot-ip=192.168.x.xxx run unitree-go2
```

Or even better, rename `dimos-robot` to `dimos` (#740) and it becomes just:

```bash
uvx dimos --robot-ip=192.168.x.xxx run unitree-go2
```
spomichter added a commit that referenced this pull request Jan 8, 2026
Release v0.0.6: Pre-Launch Unitree Go2 Release

## What's Changed
* Added is_flying_to_target agent skill and fly_to now return string for agent feeback by @spomichter in #635
* Release v0.0.5 by @spomichter in #697
* Rebase ivan g1 by @paul-nechifor in #709
* Navspec by @leshy in #648
* Remove depth module from base unitree go2 blueprints by @spomichter in #712
* Fix Unitree Go2 (replay and spatial memory) by @paul-nechifor in #714
* Add G1 blueprints, and simulation by @paul-nechifor in #724
* New g1 blueprint runfiles by @spomichter in #706
* Update G1/Go2 skills and remove some Robot interfaces by @paul-nechifor in #717
* Add dimos-robot end-to-end test with agents by @paul-nechifor in #716
* Run DimOS and ROS nav in Docker by @paul-nechifor in #700
* Anim experiment by @leshy in #701
* G1 navigation documentation fixes by @spomichter in #738
* Rename dimos-robot to dimos by @paul-nechifor in #740
* Use a process for MuJoCo by @paul-nechifor in #747
* Remove unneeded code files by @paul-nechifor in #718
* Make pygame G1JoystickModule usable for all modules by @paul-nechifor in #741
* error on conflicts by @paul-nechifor in #763
* Hosted Moondream 3 for VLM queries by @alexlin2 in #751
* transport: Remove DaskTransport dead code by @ym-han in #767
* Add editorconfig by @paul-nechifor in #769
* add `type: ignore` by @paul-nechifor in #768
* exclude .md changes from CICD builds by @spomichter in #770
* Working Ivan g1 detection in blueprints by @spomichter in #737
* small env fixes on a fresh install by @leshy in #778
* autofixes by @paul-nechifor in #744
* Support running local agents by @paul-nechifor in #739
* pin major version of langchain packages by @paul-nechifor in #789
* Deduplicate Unitree connections/entrypoints. by @paul-nechifor in #749
* Add TTS and STT by @paul-nechifor in #753
* fix mypy errors by @paul-nechifor in #791
* Use structlog and store JSON logs on disk by @paul-nechifor in #715
* Rpc fixes merge by @paul-nechifor in #801
* transport improvements by @leshy in #713
* Added concurrency check by @spomichter in #803
* make connections work with string annotations by @paul-nechifor in #807
* Run mypy checks in GitHub Actions by @paul-nechifor in #805
* Fix incorrect `= None` by @paul-nechifor in #802
* increase mujoco timeout by @paul-nechifor in #823
* MacOS Support: tests + devShell + mujoco by @jeff-hykin in #745
* nix flake revert by @leshy in #824
* fix mypy issues by @paul-nechifor in #827
* PRODUCTION Nav skills on drone with tracking by @spomichter in #640
* Fix added memory limit to blueprint global config by @spomichter in #856
* models/ refactor by @leshy in #819
* Point Detections by @leshy in #859
* Add generic ignore to gitignore by @jeff-hykin in #864
* fix set transport by @paul-nechifor in #866
* cli-precedence by @paul-nechifor in #857
* show `get_data` progress by @paul-nechifor in #873
* skip if OPENAI_API_KEY not defined by @paul-nechifor in #872
* build foxglove extension by @paul-nechifor in #871
* New planner by @paul-nechifor in #792
* Use `uv` by @paul-nechifor in #870
* Add direnv to gitignore by @Kaweees in #875
* Cuda mapper by @leshy in #862
* rename agents to agents_deprecated by @paul-nechifor in #877
* new planner new mapper by @paul-nechifor in #879
* odom ts parsing by @leshy in #882
* Sim fix by @paul-nechifor in #881
* navigation tuning by @leshy in #883
* Fix: Module init and agents by @leshy in #876
* Remove old setup.sh by @paul-nechifor in #888
* Release planner by @leshy in #887
* fix replay leak by @paul-nechifor in #890
* first pass on large file deletions by @leshy in #891
* Generalized manipulator driver by @mustafab0 in #831
* Restore MacOS Support (flake.nix) by @jeff-hykin in #863
* check-uv by @paul-nechifor in #902
* Make dimos pip-installable by @paul-nechifor in #731
* Revert "Restore MacOS Support (flake.nix)" by @leshy in #907
* jeff flake without py env stuff by @leshy in #911
* remove deprecated docker files by @paul-nechifor in #912
* command center stop and home by @leshy in #893
* use packages by @paul-nechifor in #915
* Fix agents prompt by @paul-nechifor in #914
* fix manifest by @paul-nechifor in #916
* fix move skill by @paul-nechifor in #913
* Ignore individual errors by @paul-nechifor in #919
* Feat/rerun latency panels by @Nabla7 in #917
* WIP Release detections by @leshy in #889
* Remove old navigation modules by @paul-nechifor in #923
* Feat/rerun latency panels by @Nabla7 in #925
* Repair camera module by @leshy in #929
* Repair Stream by @leshy in #932
* Docs Clean by @leshy in #933
* docs: sensor streams by @leshy in #934
* Docs: bugfixes by @leshy in #940
* Fixed doclinks to use git ls by @spomichter in #943
* Examples: third party language interop by @leshy in #946
* DOCS: temporal alignment docs improvements by @leshy in #944
* filter bots from commits by @leshy in #947
* Fix skills by @paul-nechifor in #950
* Limit Rerun viewer memory to 4GB default by @Nabla7 in #949
* Working dimensional MCP server - tested with Claude Code MCP client by @spomichter in #945
* allow registration of different agents by @paul-nechifor in #951
* Pre commit large files by @leshy in #953
* Proper Realsense and ZED Camera Drivers by @alexlin2 in #935
* Granular deps by @leshy in #894
* class VLMAgent(AgentSpec, Module) for streamed VLM queries over Transport by @spomichter in #960
* mac compatible commit filter by @paul-nechifor in #961

## New Contributors
* @ym-han made their first contribution in #767
* @jeff-hykin made their first contribution in #745
* @Kaweees made their first contribution in #875
* @mustafab0 made their first contribution in #831
* @Nabla7 made their first contribution in #917

**Full Changelog**: v0.0.5...v0.0.6
spomichter pushed a commit that referenced this pull request Jan 8, 2026
# New stuff

* I've copied rxpy_backpressure in since it's so small.
* I've tested the release of dimos-lcm to test PyPI.
* Replaced our go2-webrtc-connect clone with the original.
* I'm currently cloning the `dev` repo in order to get LFS files when using `pip install dimos`. I need to switch to `main` when we release.
* Added fresh instructions in README_installation.md .

---

# Old stuff

Now you can:

```bash
pip install dimos
dimos-robot --robot-ip 192.168.x.xxx run unitree-go2
```

or with `uv`:

```bash
uv add dimos
uv run dimos-robot --robot-ip 192.168.x.xxx run unitree-go2
```

or even better, no need to install:

```bash
uvx --from dimos dimos-robot --robot-ip=192.168.x.xxx run unitree-go2
```

Or even better, rename `dimos-robot` to `dimos` (#740) and it becomes just:

```bash
uvx dimos --robot-ip=192.168.x.xxx run unitree-go2
```


Former-commit-id: 647b7db
spomichter added a commit that referenced this pull request Jan 8, 2026
Release v0.0.6: Pre-Launch Unitree Go2 Release

## What's Changed
* Added is_flying_to_target agent skill and fly_to now return string for agent feeback by @spomichter in #635
* Release v0.0.5 by @spomichter in #697
* Rebase ivan g1 by @paul-nechifor in #709
* Navspec by @leshy in #648
* Remove depth module from base unitree go2 blueprints by @spomichter in #712
* Fix Unitree Go2 (replay and spatial memory) by @paul-nechifor in #714
* Add G1 blueprints, and simulation by @paul-nechifor in #724
* New g1 blueprint runfiles by @spomichter in #706
* Update G1/Go2 skills and remove some Robot interfaces by @paul-nechifor in #717
* Add dimos-robot end-to-end test with agents by @paul-nechifor in #716
* Run DimOS and ROS nav in Docker by @paul-nechifor in #700
* Anim experiment by @leshy in #701
* G1 navigation documentation fixes by @spomichter in #738
* Rename dimos-robot to dimos by @paul-nechifor in #740
* Use a process for MuJoCo by @paul-nechifor in #747
* Remove unneeded code files by @paul-nechifor in #718
* Make pygame G1JoystickModule usable for all modules by @paul-nechifor in #741
* error on conflicts by @paul-nechifor in #763
* Hosted Moondream 3 for VLM queries by @alexlin2 in #751
* transport: Remove DaskTransport dead code by @ym-han in #767
* Add editorconfig by @paul-nechifor in #769
* add `type: ignore` by @paul-nechifor in #768
* exclude .md changes from CICD builds by @spomichter in #770
* Working Ivan g1 detection in blueprints by @spomichter in #737
* small env fixes on a fresh install by @leshy in #778
* autofixes by @paul-nechifor in #744
* Support running local agents by @paul-nechifor in #739
* pin major version of langchain packages by @paul-nechifor in #789
* Deduplicate Unitree connections/entrypoints. by @paul-nechifor in #749
* Add TTS and STT by @paul-nechifor in #753
* fix mypy errors by @paul-nechifor in #791
* Use structlog and store JSON logs on disk by @paul-nechifor in #715
* Rpc fixes merge by @paul-nechifor in #801
* transport improvements by @leshy in #713
* Added concurrency check by @spomichter in #803
* make connections work with string annotations by @paul-nechifor in #807
* Run mypy checks in GitHub Actions by @paul-nechifor in #805
* Fix incorrect `= None` by @paul-nechifor in #802
* increase mujoco timeout by @paul-nechifor in #823
* MacOS Support: tests + devShell + mujoco by @jeff-hykin in #745
* nix flake revert by @leshy in #824
* fix mypy issues by @paul-nechifor in #827
* PRODUCTION Nav skills on drone with tracking by @spomichter in #640
* Fix added memory limit to blueprint global config by @spomichter in #856
* models/ refactor by @leshy in #819
* Point Detections by @leshy in #859
* Add generic ignore to gitignore by @jeff-hykin in #864
* fix set transport by @paul-nechifor in #866
* cli-precedence by @paul-nechifor in #857
* show `get_data` progress by @paul-nechifor in #873
* skip if OPENAI_API_KEY not defined by @paul-nechifor in #872
* build foxglove extension by @paul-nechifor in #871
* New planner by @paul-nechifor in #792
* Use `uv` by @paul-nechifor in #870
* Add direnv to gitignore by @Kaweees in #875
* Cuda mapper by @leshy in #862
* rename agents to agents_deprecated by @paul-nechifor in #877
* new planner new mapper by @paul-nechifor in #879
* odom ts parsing by @leshy in #882
* Sim fix by @paul-nechifor in #881
* navigation tuning by @leshy in #883
* Fix: Module init and agents by @leshy in #876
* Remove old setup.sh by @paul-nechifor in #888
* Release planner by @leshy in #887
* fix replay leak by @paul-nechifor in #890
* first pass on large file deletions by @leshy in #891
* Generalized manipulator driver by @mustafab0 in #831
* Restore MacOS Support (flake.nix) by @jeff-hykin in #863
* check-uv by @paul-nechifor in #902
* Make dimos pip-installable by @paul-nechifor in #731
* Revert "Restore MacOS Support (flake.nix)" by @leshy in #907
* jeff flake without py env stuff by @leshy in #911
* remove deprecated docker files by @paul-nechifor in #912
* command center stop and home by @leshy in #893
* use packages by @paul-nechifor in #915
* Fix agents prompt by @paul-nechifor in #914
* fix manifest by @paul-nechifor in #916
* fix move skill by @paul-nechifor in #913
* Ignore individual errors by @paul-nechifor in #919
* Feat/rerun latency panels by @Nabla7 in #917
* WIP Release detections by @leshy in #889
* Remove old navigation modules by @paul-nechifor in #923
* Feat/rerun latency panels by @Nabla7 in #925
* Repair camera module by @leshy in #929
* Repair Stream by @leshy in #932
* Docs Clean by @leshy in #933
* docs: sensor streams by @leshy in #934
* Docs: bugfixes by @leshy in #940
* Fixed doclinks to use git ls by @spomichter in #943
* Examples: third party language interop by @leshy in #946
* DOCS: temporal alignment docs improvements by @leshy in #944
* filter bots from commits by @leshy in #947
* Fix skills by @paul-nechifor in #950
* Limit Rerun viewer memory to 4GB default by @Nabla7 in #949
* Working dimensional MCP server - tested with Claude Code MCP client by @spomichter in #945
* allow registration of different agents by @paul-nechifor in #951
* Pre commit large files by @leshy in #953
* Proper Realsense and ZED Camera Drivers by @alexlin2 in #935
* Granular deps by @leshy in #894
* class VLMAgent(AgentSpec, Module) for streamed VLM queries over Transport by @spomichter in #960
* mac compatible commit filter by @paul-nechifor in #961

## New Contributors
* @ym-han made their first contribution in #767
* @jeff-hykin made their first contribution in #745
* @Kaweees made their first contribution in #875
* @mustafab0 made their first contribution in #831
* @Nabla7 made their first contribution in #917

**Full Changelog**: v0.0.5...v0.0.6

Former-commit-id: 26e61a70a9469f2e33e51f1296f082b470009c09 [formerly 7ffc878]
Former-commit-id: 725e628
spomichter pushed a commit that referenced this pull request Jan 8, 2026
# New stuff

* I've copied rxpy_backpressure in since it's so small.
* I've tested the release of dimos-lcm to test PyPI.
* Replaced our go2-webrtc-connect clone with the original.
* I'm currently cloning the `dev` repo in order to get LFS files when using `pip install dimos`. I need to switch to `main` when we release.
* Added fresh instructions in README_installation.md .

---

# Old stuff

Now you can:

```bash
pip install dimos
dimos-robot --robot-ip 192.168.x.xxx run unitree-go2
```

or with `uv`:

```bash
uv add dimos
uv run dimos-robot --robot-ip 192.168.x.xxx run unitree-go2
```

or even better, no need to install:

```bash
uvx --from dimos dimos-robot --robot-ip=192.168.x.xxx run unitree-go2
```

Or even better, rename `dimos-robot` to `dimos` (#740) and it becomes just:

```bash
uvx dimos --robot-ip=192.168.x.xxx run unitree-go2
```


Former-commit-id: 808f640
spomichter added a commit that referenced this pull request Jan 8, 2026
Release v0.0.6: Pre-Launch Unitree Go2 Release

## What's Changed
* Added is_flying_to_target agent skill and fly_to now return string for agent feeback by @spomichter in #635
* Release v0.0.5 by @spomichter in #697
* Rebase ivan g1 by @paul-nechifor in #709
* Navspec by @leshy in #648
* Remove depth module from base unitree go2 blueprints by @spomichter in #712
* Fix Unitree Go2 (replay and spatial memory) by @paul-nechifor in #714
* Add G1 blueprints, and simulation by @paul-nechifor in #724
* New g1 blueprint runfiles by @spomichter in #706
* Update G1/Go2 skills and remove some Robot interfaces by @paul-nechifor in #717
* Add dimos-robot end-to-end test with agents by @paul-nechifor in #716
* Run DimOS and ROS nav in Docker by @paul-nechifor in #700
* Anim experiment by @leshy in #701
* G1 navigation documentation fixes by @spomichter in #738
* Rename dimos-robot to dimos by @paul-nechifor in #740
* Use a process for MuJoCo by @paul-nechifor in #747
* Remove unneeded code files by @paul-nechifor in #718
* Make pygame G1JoystickModule usable for all modules by @paul-nechifor in #741
* error on conflicts by @paul-nechifor in #763
* Hosted Moondream 3 for VLM queries by @alexlin2 in #751
* transport: Remove DaskTransport dead code by @ym-han in #767
* Add editorconfig by @paul-nechifor in #769
* add `type: ignore` by @paul-nechifor in #768
* exclude .md changes from CICD builds by @spomichter in #770
* Working Ivan g1 detection in blueprints by @spomichter in #737
* small env fixes on a fresh install by @leshy in #778
* autofixes by @paul-nechifor in #744
* Support running local agents by @paul-nechifor in #739
* pin major version of langchain packages by @paul-nechifor in #789
* Deduplicate Unitree connections/entrypoints. by @paul-nechifor in #749
* Add TTS and STT by @paul-nechifor in #753
* fix mypy errors by @paul-nechifor in #791
* Use structlog and store JSON logs on disk by @paul-nechifor in #715
* Rpc fixes merge by @paul-nechifor in #801
* transport improvements by @leshy in #713
* Added concurrency check by @spomichter in #803
* make connections work with string annotations by @paul-nechifor in #807
* Run mypy checks in GitHub Actions by @paul-nechifor in #805
* Fix incorrect `= None` by @paul-nechifor in #802
* increase mujoco timeout by @paul-nechifor in #823
* MacOS Support: tests + devShell + mujoco by @jeff-hykin in #745
* nix flake revert by @leshy in #824
* fix mypy issues by @paul-nechifor in #827
* PRODUCTION Nav skills on drone with tracking by @spomichter in #640
* Fix added memory limit to blueprint global config by @spomichter in #856
* models/ refactor by @leshy in #819
* Point Detections by @leshy in #859
* Add generic ignore to gitignore by @jeff-hykin in #864
* fix set transport by @paul-nechifor in #866
* cli-precedence by @paul-nechifor in #857
* show `get_data` progress by @paul-nechifor in #873
* skip if OPENAI_API_KEY not defined by @paul-nechifor in #872
* build foxglove extension by @paul-nechifor in #871
* New planner by @paul-nechifor in #792
* Use `uv` by @paul-nechifor in #870
* Add direnv to gitignore by @Kaweees in #875
* Cuda mapper by @leshy in #862
* rename agents to agents_deprecated by @paul-nechifor in #877
* new planner new mapper by @paul-nechifor in #879
* odom ts parsing by @leshy in #882
* Sim fix by @paul-nechifor in #881
* navigation tuning by @leshy in #883
* Fix: Module init and agents by @leshy in #876
* Remove old setup.sh by @paul-nechifor in #888
* Release planner by @leshy in #887
* fix replay leak by @paul-nechifor in #890
* first pass on large file deletions by @leshy in #891
* Generalized manipulator driver by @mustafab0 in #831
* Restore MacOS Support (flake.nix) by @jeff-hykin in #863
* check-uv by @paul-nechifor in #902
* Make dimos pip-installable by @paul-nechifor in #731
* Revert "Restore MacOS Support (flake.nix)" by @leshy in #907
* jeff flake without py env stuff by @leshy in #911
* remove deprecated docker files by @paul-nechifor in #912
* command center stop and home by @leshy in #893
* use packages by @paul-nechifor in #915
* Fix agents prompt by @paul-nechifor in #914
* fix manifest by @paul-nechifor in #916
* fix move skill by @paul-nechifor in #913
* Ignore individual errors by @paul-nechifor in #919
* Feat/rerun latency panels by @Nabla7 in #917
* WIP Release detections by @leshy in #889
* Remove old navigation modules by @paul-nechifor in #923
* Feat/rerun latency panels by @Nabla7 in #925
* Repair camera module by @leshy in #929
* Repair Stream by @leshy in #932
* Docs Clean by @leshy in #933
* docs: sensor streams by @leshy in #934
* Docs: bugfixes by @leshy in #940
* Fixed doclinks to use git ls by @spomichter in #943
* Examples: third party language interop by @leshy in #946
* DOCS: temporal alignment docs improvements by @leshy in #944
* filter bots from commits by @leshy in #947
* Fix skills by @paul-nechifor in #950
* Limit Rerun viewer memory to 4GB default by @Nabla7 in #949
* Working dimensional MCP server - tested with Claude Code MCP client by @spomichter in #945
* allow registration of different agents by @paul-nechifor in #951
* Pre commit large files by @leshy in #953
* Proper Realsense and ZED Camera Drivers by @alexlin2 in #935
* Granular deps by @leshy in #894
* class VLMAgent(AgentSpec, Module) for streamed VLM queries over Transport by @spomichter in #960
* mac compatible commit filter by @paul-nechifor in #961

## New Contributors
* @ym-han made their first contribution in #767
* @jeff-hykin made their first contribution in #745
* @Kaweees made their first contribution in #875
* @mustafab0 made their first contribution in #831
* @Nabla7 made their first contribution in #917

**Full Changelog**: v0.0.5...v0.0.6

Former-commit-id: 7ffc878
spomichter added a commit that referenced this pull request Jan 8, 2026
Release v0.0.6: Pre-Launch Unitree Go2 Release

## What's Changed
* Added is_flying_to_target agent skill and fly_to now return string for agent feeback by @spomichter in #635
* Release v0.0.5 by @spomichter in #697
* Rebase ivan g1 by @paul-nechifor in #709
* Navspec by @leshy in #648
* Remove depth module from base unitree go2 blueprints by @spomichter in #712
* Fix Unitree Go2 (replay and spatial memory) by @paul-nechifor in #714
* Add G1 blueprints, and simulation by @paul-nechifor in #724
* New g1 blueprint runfiles by @spomichter in #706
* Update G1/Go2 skills and remove some Robot interfaces by @paul-nechifor in #717
* Add dimos-robot end-to-end test with agents by @paul-nechifor in #716
* Run DimOS and ROS nav in Docker by @paul-nechifor in #700
* Anim experiment by @leshy in #701
* G1 navigation documentation fixes by @spomichter in #738
* Rename dimos-robot to dimos by @paul-nechifor in #740
* Use a process for MuJoCo by @paul-nechifor in #747
* Remove unneeded code files by @paul-nechifor in #718
* Make pygame G1JoystickModule usable for all modules by @paul-nechifor in #741
* error on conflicts by @paul-nechifor in #763
* Hosted Moondream 3 for VLM queries by @alexlin2 in #751
* transport: Remove DaskTransport dead code by @ym-han in #767
* Add editorconfig by @paul-nechifor in #769
* add `type: ignore` by @paul-nechifor in #768
* exclude .md changes from CICD builds by @spomichter in #770
* Working Ivan g1 detection in blueprints by @spomichter in #737
* small env fixes on a fresh install by @leshy in #778
* autofixes by @paul-nechifor in #744
* Support running local agents by @paul-nechifor in #739
* pin major version of langchain packages by @paul-nechifor in #789
* Deduplicate Unitree connections/entrypoints. by @paul-nechifor in #749
* Add TTS and STT by @paul-nechifor in #753
* fix mypy errors by @paul-nechifor in #791
* Use structlog and store JSON logs on disk by @paul-nechifor in #715
* Rpc fixes merge by @paul-nechifor in #801
* transport improvements by @leshy in #713
* Added concurrency check by @spomichter in #803
* make connections work with string annotations by @paul-nechifor in #807
* Run mypy checks in GitHub Actions by @paul-nechifor in #805
* Fix incorrect `= None` by @paul-nechifor in #802
* increase mujoco timeout by @paul-nechifor in #823
* MacOS Support: tests + devShell + mujoco by @jeff-hykin in #745
* nix flake revert by @leshy in #824
* fix mypy issues by @paul-nechifor in #827
* PRODUCTION Nav skills on drone with tracking by @spomichter in #640
* Fix added memory limit to blueprint global config by @spomichter in #856
* models/ refactor by @leshy in #819
* Point Detections by @leshy in #859
* Add generic ignore to gitignore by @jeff-hykin in #864
* fix set transport by @paul-nechifor in #866
* cli-precedence by @paul-nechifor in #857
* show `get_data` progress by @paul-nechifor in #873
* skip if OPENAI_API_KEY not defined by @paul-nechifor in #872
* build foxglove extension by @paul-nechifor in #871
* New planner by @paul-nechifor in #792
* Use `uv` by @paul-nechifor in #870
* Add direnv to gitignore by @Kaweees in #875
* Cuda mapper by @leshy in #862
* rename agents to agents_deprecated by @paul-nechifor in #877
* new planner new mapper by @paul-nechifor in #879
* odom ts parsing by @leshy in #882
* Sim fix by @paul-nechifor in #881
* navigation tuning by @leshy in #883
* Fix: Module init and agents by @leshy in #876
* Remove old setup.sh by @paul-nechifor in #888
* Release planner by @leshy in #887
* fix replay leak by @paul-nechifor in #890
* first pass on large file deletions by @leshy in #891
* Generalized manipulator driver by @mustafab0 in #831
* Restore MacOS Support (flake.nix) by @jeff-hykin in #863
* check-uv by @paul-nechifor in #902
* Make dimos pip-installable by @paul-nechifor in #731
* Revert "Restore MacOS Support (flake.nix)" by @leshy in #907
* jeff flake without py env stuff by @leshy in #911
* remove deprecated docker files by @paul-nechifor in #912
* command center stop and home by @leshy in #893
* use packages by @paul-nechifor in #915
* Fix agents prompt by @paul-nechifor in #914
* fix manifest by @paul-nechifor in #916
* fix move skill by @paul-nechifor in #913
* Ignore individual errors by @paul-nechifor in #919
* Feat/rerun latency panels by @Nabla7 in #917
* WIP Release detections by @leshy in #889
* Remove old navigation modules by @paul-nechifor in #923
* Feat/rerun latency panels by @Nabla7 in #925
* Repair camera module by @leshy in #929
* Repair Stream by @leshy in #932
* Docs Clean by @leshy in #933
* docs: sensor streams by @leshy in #934
* Docs: bugfixes by @leshy in #940
* Fixed doclinks to use git ls by @spomichter in #943
* Examples: third party language interop by @leshy in #946
* DOCS: temporal alignment docs improvements by @leshy in #944
* filter bots from commits by @leshy in #947
* Fix skills by @paul-nechifor in #950
* Limit Rerun viewer memory to 4GB default by @Nabla7 in #949
* Working dimensional MCP server - tested with Claude Code MCP client by @spomichter in #945
* allow registration of different agents by @paul-nechifor in #951
* Pre commit large files by @leshy in #953
* Proper Realsense and ZED Camera Drivers by @alexlin2 in #935
* Granular deps by @leshy in #894
* class VLMAgent(AgentSpec, Module) for streamed VLM queries over Transport by @spomichter in #960
* mac compatible commit filter by @paul-nechifor in #961

## New Contributors
* @ym-han made their first contribution in #767
* @jeff-hykin made their first contribution in #745
* @Kaweees made their first contribution in #875
* @mustafab0 made their first contribution in #831
* @Nabla7 made their first contribution in #917

**Full Changelog**: v0.0.5...v0.0.6

Former-commit-id: 7ffc878
Former-commit-id: 067332a
spomichter pushed a commit that referenced this pull request Jan 8, 2026
# New stuff

* I've copied rxpy_backpressure in since it's so small.
* I've tested the release of dimos-lcm to test PyPI.
* Replaced our go2-webrtc-connect clone with the original.
* I'm currently cloning the `dev` repo in order to get LFS files when using `pip install dimos`. I need to switch to `main` when we release.
* Added fresh instructions in README_installation.md .

---

# Old stuff

Now you can:

```bash
pip install dimos
dimos-robot --robot-ip 192.168.x.xxx run unitree-go2
```

or with `uv`:

```bash
uv add dimos
uv run dimos-robot --robot-ip 192.168.x.xxx run unitree-go2
```

or even better, no need to install:

```bash
uvx --from dimos dimos-robot --robot-ip=192.168.x.xxx run unitree-go2
```

Or even better, rename `dimos-robot` to `dimos` (#740) and it becomes just:

```bash
uvx dimos --robot-ip=192.168.x.xxx run unitree-go2
```


Former-commit-id: fe292d7 [formerly 808f640]
Former-commit-id: 977f134
spomichter added a commit that referenced this pull request Jan 8, 2026
Release v0.0.6: Pre-Launch Unitree Go2 Release

## What's Changed
* Added is_flying_to_target agent skill and fly_to now return string for agent feeback by @spomichter in #635
* Release v0.0.5 by @spomichter in #697
* Rebase ivan g1 by @paul-nechifor in #709
* Navspec by @leshy in #648
* Remove depth module from base unitree go2 blueprints by @spomichter in #712
* Fix Unitree Go2 (replay and spatial memory) by @paul-nechifor in #714
* Add G1 blueprints, and simulation by @paul-nechifor in #724
* New g1 blueprint runfiles by @spomichter in #706
* Update G1/Go2 skills and remove some Robot interfaces by @paul-nechifor in #717
* Add dimos-robot end-to-end test with agents by @paul-nechifor in #716
* Run DimOS and ROS nav in Docker by @paul-nechifor in #700
* Anim experiment by @leshy in #701
* G1 navigation documentation fixes by @spomichter in #738
* Rename dimos-robot to dimos by @paul-nechifor in #740
* Use a process for MuJoCo by @paul-nechifor in #747
* Remove unneeded code files by @paul-nechifor in #718
* Make pygame G1JoystickModule usable for all modules by @paul-nechifor in #741
* error on conflicts by @paul-nechifor in #763
* Hosted Moondream 3 for VLM queries by @alexlin2 in #751
* transport: Remove DaskTransport dead code by @ym-han in #767
* Add editorconfig by @paul-nechifor in #769
* add `type: ignore` by @paul-nechifor in #768
* exclude .md changes from CICD builds by @spomichter in #770
* Working Ivan g1 detection in blueprints by @spomichter in #737
* small env fixes on a fresh install by @leshy in #778
* autofixes by @paul-nechifor in #744
* Support running local agents by @paul-nechifor in #739
* pin major version of langchain packages by @paul-nechifor in #789
* Deduplicate Unitree connections/entrypoints. by @paul-nechifor in #749
* Add TTS and STT by @paul-nechifor in #753
* fix mypy errors by @paul-nechifor in #791
* Use structlog and store JSON logs on disk by @paul-nechifor in #715
* Rpc fixes merge by @paul-nechifor in #801
* transport improvements by @leshy in #713
* Added concurrency check by @spomichter in #803
* make connections work with string annotations by @paul-nechifor in #807
* Run mypy checks in GitHub Actions by @paul-nechifor in #805
* Fix incorrect `= None` by @paul-nechifor in #802
* increase mujoco timeout by @paul-nechifor in #823
* MacOS Support: tests + devShell + mujoco by @jeff-hykin in #745
* nix flake revert by @leshy in #824
* fix mypy issues by @paul-nechifor in #827
* PRODUCTION Nav skills on drone with tracking by @spomichter in #640
* Fix added memory limit to blueprint global config by @spomichter in #856
* models/ refactor by @leshy in #819
* Point Detections by @leshy in #859
* Add generic ignore to gitignore by @jeff-hykin in #864
* fix set transport by @paul-nechifor in #866
* cli-precedence by @paul-nechifor in #857
* show `get_data` progress by @paul-nechifor in #873
* skip if OPENAI_API_KEY not defined by @paul-nechifor in #872
* build foxglove extension by @paul-nechifor in #871
* New planner by @paul-nechifor in #792
* Use `uv` by @paul-nechifor in #870
* Add direnv to gitignore by @Kaweees in #875
* Cuda mapper by @leshy in #862
* rename agents to agents_deprecated by @paul-nechifor in #877
* new planner new mapper by @paul-nechifor in #879
* odom ts parsing by @leshy in #882
* Sim fix by @paul-nechifor in #881
* navigation tuning by @leshy in #883
* Fix: Module init and agents by @leshy in #876
* Remove old setup.sh by @paul-nechifor in #888
* Release planner by @leshy in #887
* fix replay leak by @paul-nechifor in #890
* first pass on large file deletions by @leshy in #891
* Generalized manipulator driver by @mustafab0 in #831
* Restore MacOS Support (flake.nix) by @jeff-hykin in #863
* check-uv by @paul-nechifor in #902
* Make dimos pip-installable by @paul-nechifor in #731
* Revert "Restore MacOS Support (flake.nix)" by @leshy in #907
* jeff flake without py env stuff by @leshy in #911
* remove deprecated docker files by @paul-nechifor in #912
* command center stop and home by @leshy in #893
* use packages by @paul-nechifor in #915
* Fix agents prompt by @paul-nechifor in #914
* fix manifest by @paul-nechifor in #916
* fix move skill by @paul-nechifor in #913
* Ignore individual errors by @paul-nechifor in #919
* Feat/rerun latency panels by @Nabla7 in #917
* WIP Release detections by @leshy in #889
* Remove old navigation modules by @paul-nechifor in #923
* Feat/rerun latency panels by @Nabla7 in #925
* Repair camera module by @leshy in #929
* Repair Stream by @leshy in #932
* Docs Clean by @leshy in #933
* docs: sensor streams by @leshy in #934
* Docs: bugfixes by @leshy in #940
* Fixed doclinks to use git ls by @spomichter in #943
* Examples: third party language interop by @leshy in #946
* DOCS: temporal alignment docs improvements by @leshy in #944
* filter bots from commits by @leshy in #947
* Fix skills by @paul-nechifor in #950
* Limit Rerun viewer memory to 4GB default by @Nabla7 in #949
* Working dimensional MCP server - tested with Claude Code MCP client by @spomichter in #945
* allow registration of different agents by @paul-nechifor in #951
* Pre commit large files by @leshy in #953
* Proper Realsense and ZED Camera Drivers by @alexlin2 in #935
* Granular deps by @leshy in #894
* class VLMAgent(AgentSpec, Module) for streamed VLM queries over Transport by @spomichter in #960
* mac compatible commit filter by @paul-nechifor in #961

## New Contributors
* @ym-han made their first contribution in #767
* @jeff-hykin made their first contribution in #745
* @Kaweees made their first contribution in #875
* @mustafab0 made their first contribution in #831
* @Nabla7 made their first contribution in #917

**Full Changelog**: v0.0.5...v0.0.6

Former-commit-id: 26e61a70a9469f2e33e51f1296f082b470009c09 [formerly 7ffc878]
Former-commit-id: 725e628
Former-commit-id: 2e5f1d4
spomichter pushed a commit that referenced this pull request Jan 8, 2026
# New stuff

* I've copied rxpy_backpressure in since it's so small.
* I've tested the release of dimos-lcm to test PyPI.
* Replaced our go2-webrtc-connect clone with the original.
* I'm currently cloning the `dev` repo in order to get LFS files when using `pip install dimos`. I need to switch to `main` when we release.
* Added fresh instructions in README_installation.md .

---

# Old stuff

Now you can:

```bash
pip install dimos
dimos-robot --robot-ip 192.168.x.xxx run unitree-go2
```

or with `uv`:

```bash
uv add dimos
uv run dimos-robot --robot-ip 192.168.x.xxx run unitree-go2
```

or even better, no need to install:

```bash
uvx --from dimos dimos-robot --robot-ip=192.168.x.xxx run unitree-go2
```

Or even better, rename `dimos-robot` to `dimos` (#740) and it becomes just:

```bash
uvx dimos --robot-ip=192.168.x.xxx run unitree-go2
```


Former-commit-id: fe292d7 [formerly 808f640]
Former-commit-id: 977f134
spomichter added a commit that referenced this pull request Jan 8, 2026
Release v0.0.6: Pre-Launch Unitree Go2 Release

## What's Changed
* Added is_flying_to_target agent skill and fly_to now return string for agent feeback by @spomichter in #635
* Release v0.0.5 by @spomichter in #697
* Rebase ivan g1 by @paul-nechifor in #709
* Navspec by @leshy in #648
* Remove depth module from base unitree go2 blueprints by @spomichter in #712
* Fix Unitree Go2 (replay and spatial memory) by @paul-nechifor in #714
* Add G1 blueprints, and simulation by @paul-nechifor in #724
* New g1 blueprint runfiles by @spomichter in #706
* Update G1/Go2 skills and remove some Robot interfaces by @paul-nechifor in #717
* Add dimos-robot end-to-end test with agents by @paul-nechifor in #716
* Run DimOS and ROS nav in Docker by @paul-nechifor in #700
* Anim experiment by @leshy in #701
* G1 navigation documentation fixes by @spomichter in #738
* Rename dimos-robot to dimos by @paul-nechifor in #740
* Use a process for MuJoCo by @paul-nechifor in #747
* Remove unneeded code files by @paul-nechifor in #718
* Make pygame G1JoystickModule usable for all modules by @paul-nechifor in #741
* error on conflicts by @paul-nechifor in #763
* Hosted Moondream 3 for VLM queries by @alexlin2 in #751
* transport: Remove DaskTransport dead code by @ym-han in #767
* Add editorconfig by @paul-nechifor in #769
* add `type: ignore` by @paul-nechifor in #768
* exclude .md changes from CICD builds by @spomichter in #770
* Working Ivan g1 detection in blueprints by @spomichter in #737
* small env fixes on a fresh install by @leshy in #778
* autofixes by @paul-nechifor in #744
* Support running local agents by @paul-nechifor in #739
* pin major version of langchain packages by @paul-nechifor in #789
* Deduplicate Unitree connections/entrypoints. by @paul-nechifor in #749
* Add TTS and STT by @paul-nechifor in #753
* fix mypy errors by @paul-nechifor in #791
* Use structlog and store JSON logs on disk by @paul-nechifor in #715
* Rpc fixes merge by @paul-nechifor in #801
* transport improvements by @leshy in #713
* Added concurrency check by @spomichter in #803
* make connections work with string annotations by @paul-nechifor in #807
* Run mypy checks in GitHub Actions by @paul-nechifor in #805
* Fix incorrect `= None` by @paul-nechifor in #802
* increase mujoco timeout by @paul-nechifor in #823
* MacOS Support: tests + devShell + mujoco by @jeff-hykin in #745
* nix flake revert by @leshy in #824
* fix mypy issues by @paul-nechifor in #827
* PRODUCTION Nav skills on drone with tracking by @spomichter in #640
* Fix added memory limit to blueprint global config by @spomichter in #856
* models/ refactor by @leshy in #819
* Point Detections by @leshy in #859
* Add generic ignore to gitignore by @jeff-hykin in #864
* fix set transport by @paul-nechifor in #866
* cli-precedence by @paul-nechifor in #857
* show `get_data` progress by @paul-nechifor in #873
* skip if OPENAI_API_KEY not defined by @paul-nechifor in #872
* build foxglove extension by @paul-nechifor in #871
* New planner by @paul-nechifor in #792
* Use `uv` by @paul-nechifor in #870
* Add direnv to gitignore by @Kaweees in #875
* Cuda mapper by @leshy in #862
* rename agents to agents_deprecated by @paul-nechifor in #877
* new planner new mapper by @paul-nechifor in #879
* odom ts parsing by @leshy in #882
* Sim fix by @paul-nechifor in #881
* navigation tuning by @leshy in #883
* Fix: Module init and agents by @leshy in #876
* Remove old setup.sh by @paul-nechifor in #888
* Release planner by @leshy in #887
* fix replay leak by @paul-nechifor in #890
* first pass on large file deletions by @leshy in #891
* Generalized manipulator driver by @mustafab0 in #831
* Restore MacOS Support (flake.nix) by @jeff-hykin in #863
* check-uv by @paul-nechifor in #902
* Make dimos pip-installable by @paul-nechifor in #731
* Revert "Restore MacOS Support (flake.nix)" by @leshy in #907
* jeff flake without py env stuff by @leshy in #911
* remove deprecated docker files by @paul-nechifor in #912
* command center stop and home by @leshy in #893
* use packages by @paul-nechifor in #915
* Fix agents prompt by @paul-nechifor in #914
* fix manifest by @paul-nechifor in #916
* fix move skill by @paul-nechifor in #913
* Ignore individual errors by @paul-nechifor in #919
* Feat/rerun latency panels by @Nabla7 in #917
* WIP Release detections by @leshy in #889
* Remove old navigation modules by @paul-nechifor in #923
* Feat/rerun latency panels by @Nabla7 in #925
* Repair camera module by @leshy in #929
* Repair Stream by @leshy in #932
* Docs Clean by @leshy in #933
* docs: sensor streams by @leshy in #934
* Docs: bugfixes by @leshy in #940
* Fixed doclinks to use git ls by @spomichter in #943
* Examples: third party language interop by @leshy in #946
* DOCS: temporal alignment docs improvements by @leshy in #944
* filter bots from commits by @leshy in #947
* Fix skills by @paul-nechifor in #950
* Limit Rerun viewer memory to 4GB default by @Nabla7 in #949
* Working dimensional MCP server - tested with Claude Code MCP client by @spomichter in #945
* allow registration of different agents by @paul-nechifor in #951
* Pre commit large files by @leshy in #953
* Proper Realsense and ZED Camera Drivers by @alexlin2 in #935
* Granular deps by @leshy in #894
* class VLMAgent(AgentSpec, Module) for streamed VLM queries over Transport by @spomichter in #960
* mac compatible commit filter by @paul-nechifor in #961

## New Contributors
* @ym-han made their first contribution in #767
* @jeff-hykin made their first contribution in #745
* @Kaweees made their first contribution in #875
* @mustafab0 made their first contribution in #831
* @Nabla7 made their first contribution in #917

**Full Changelog**: v0.0.5...v0.0.6

Former-commit-id: 7ffc878
Former-commit-id: 067332a
spomichter added a commit that referenced this pull request Jan 8, 2026
Release v0.0.6: Pre-Launch Unitree Go2 Release

## What's Changed
* Added is_flying_to_target agent skill and fly_to now return string for agent feeback by @spomichter in #635
* Release v0.0.5 by @spomichter in #697
* Rebase ivan g1 by @paul-nechifor in #709
* Navspec by @leshy in #648
* Remove depth module from base unitree go2 blueprints by @spomichter in #712
* Fix Unitree Go2 (replay and spatial memory) by @paul-nechifor in #714
* Add G1 blueprints, and simulation by @paul-nechifor in #724
* New g1 blueprint runfiles by @spomichter in #706
* Update G1/Go2 skills and remove some Robot interfaces by @paul-nechifor in #717
* Add dimos-robot end-to-end test with agents by @paul-nechifor in #716
* Run DimOS and ROS nav in Docker by @paul-nechifor in #700
* Anim experiment by @leshy in #701
* G1 navigation documentation fixes by @spomichter in #738
* Rename dimos-robot to dimos by @paul-nechifor in #740
* Use a process for MuJoCo by @paul-nechifor in #747
* Remove unneeded code files by @paul-nechifor in #718
* Make pygame G1JoystickModule usable for all modules by @paul-nechifor in #741
* error on conflicts by @paul-nechifor in #763
* Hosted Moondream 3 for VLM queries by @alexlin2 in #751
* transport: Remove DaskTransport dead code by @ym-han in #767
* Add editorconfig by @paul-nechifor in #769
* add `type: ignore` by @paul-nechifor in #768
* exclude .md changes from CICD builds by @spomichter in #770
* Working Ivan g1 detection in blueprints by @spomichter in #737
* small env fixes on a fresh install by @leshy in #778
* autofixes by @paul-nechifor in #744
* Support running local agents by @paul-nechifor in #739
* pin major version of langchain packages by @paul-nechifor in #789
* Deduplicate Unitree connections/entrypoints. by @paul-nechifor in #749
* Add TTS and STT by @paul-nechifor in #753
* fix mypy errors by @paul-nechifor in #791
* Use structlog and store JSON logs on disk by @paul-nechifor in #715
* Rpc fixes merge by @paul-nechifor in #801
* transport improvements by @leshy in #713
* Added concurrency check by @spomichter in #803
* make connections work with string annotations by @paul-nechifor in #807
* Run mypy checks in GitHub Actions by @paul-nechifor in #805
* Fix incorrect `= None` by @paul-nechifor in #802
* increase mujoco timeout by @paul-nechifor in #823
* MacOS Support: tests + devShell + mujoco by @jeff-hykin in #745
* nix flake revert by @leshy in #824
* fix mypy issues by @paul-nechifor in #827
* PRODUCTION Nav skills on drone with tracking by @spomichter in #640
* Fix added memory limit to blueprint global config by @spomichter in #856
* models/ refactor by @leshy in #819
* Point Detections by @leshy in #859
* Add generic ignore to gitignore by @jeff-hykin in #864
* fix set transport by @paul-nechifor in #866
* cli-precedence by @paul-nechifor in #857
* show `get_data` progress by @paul-nechifor in #873
* skip if OPENAI_API_KEY not defined by @paul-nechifor in #872
* build foxglove extension by @paul-nechifor in #871
* New planner by @paul-nechifor in #792
* Use `uv` by @paul-nechifor in #870
* Add direnv to gitignore by @Kaweees in #875
* Cuda mapper by @leshy in #862
* rename agents to agents_deprecated by @paul-nechifor in #877
* new planner new mapper by @paul-nechifor in #879
* odom ts parsing by @leshy in #882
* Sim fix by @paul-nechifor in #881
* navigation tuning by @leshy in #883
* Fix: Module init and agents by @leshy in #876
* Remove old setup.sh by @paul-nechifor in #888
* Release planner by @leshy in #887
* fix replay leak by @paul-nechifor in #890
* first pass on large file deletions by @leshy in #891
* Generalized manipulator driver by @mustafab0 in #831
* Restore MacOS Support (flake.nix) by @jeff-hykin in #863
* check-uv by @paul-nechifor in #902
* Make dimos pip-installable by @paul-nechifor in #731
* Revert "Restore MacOS Support (flake.nix)" by @leshy in #907
* jeff flake without py env stuff by @leshy in #911
* remove deprecated docker files by @paul-nechifor in #912
* command center stop and home by @leshy in #893
* use packages by @paul-nechifor in #915
* Fix agents prompt by @paul-nechifor in #914
* fix manifest by @paul-nechifor in #916
* fix move skill by @paul-nechifor in #913
* Ignore individual errors by @paul-nechifor in #919
* Feat/rerun latency panels by @Nabla7 in #917
* WIP Release detections by @leshy in #889
* Remove old navigation modules by @paul-nechifor in #923
* Feat/rerun latency panels by @Nabla7 in #925
* Repair camera module by @leshy in #929
* Repair Stream by @leshy in #932
* Docs Clean by @leshy in #933
* docs: sensor streams by @leshy in #934
* Docs: bugfixes by @leshy in #940
* Fixed doclinks to use git ls by @spomichter in #943
* Examples: third party language interop by @leshy in #946
* DOCS: temporal alignment docs improvements by @leshy in #944
* filter bots from commits by @leshy in #947
* Fix skills by @paul-nechifor in #950
* Limit Rerun viewer memory to 4GB default by @Nabla7 in #949
* Working dimensional MCP server - tested with Claude Code MCP client by @spomichter in #945
* allow registration of different agents by @paul-nechifor in #951
* Pre commit large files by @leshy in #953
* Proper Realsense and ZED Camera Drivers by @alexlin2 in #935
* Granular deps by @leshy in #894
* class VLMAgent(AgentSpec, Module) for streamed VLM queries over Transport by @spomichter in #960
* mac compatible commit filter by @paul-nechifor in #961

## New Contributors
* @ym-han made their first contribution in #767
* @jeff-hykin made their first contribution in #745
* @Kaweees made their first contribution in #875
* @mustafab0 made their first contribution in #831
* @Nabla7 made their first contribution in #917

**Full Changelog**: v0.0.5...v0.0.6

Former-commit-id: 26e61a70a9469f2e33e51f1296f082b470009c09 [formerly 7ffc878]
Former-commit-id: 725e628
Former-commit-id: 2e5f1d4
paul-nechifor added a commit that referenced this pull request Jan 8, 2026
# New stuff

* I've copied rxpy_backpressure in since it's so small.
* I've tested the release of dimos-lcm to test PyPI.
* Replaced our go2-webrtc-connect clone with the original.
* I'm currently cloning the `dev` repo in order to get LFS files when using `pip install dimos`. I need to switch to `main` when we release.
* Added fresh instructions in README_installation.md .

---

# Old stuff

Now you can:

```bash
pip install dimos
dimos-robot --robot-ip 192.168.x.xxx run unitree-go2
```

or with `uv`:

```bash
uv add dimos
uv run dimos-robot --robot-ip 192.168.x.xxx run unitree-go2
```

or even better, no need to install:

```bash
uvx --from dimos dimos-robot --robot-ip=192.168.x.xxx run unitree-go2
```

Or even better, rename `dimos-robot` to `dimos` (#740) and it becomes just:

```bash
uvx dimos --robot-ip=192.168.x.xxx run unitree-go2
```


Former-commit-id: 2671087 [formerly 647b7db]
Former-commit-id: d446553
jeff-hykin pushed a commit that referenced this pull request Jan 9, 2026
# New stuff

* I've copied rxpy_backpressure in since it's so small.
* I've tested the release of dimos-lcm to test PyPI.
* Replaced our go2-webrtc-connect clone with the original.
* I'm currently cloning the `dev` repo in order to get LFS files when using `pip install dimos`. I need to switch to `main` when we release.
* Added fresh instructions in README_installation.md .

---

# Old stuff

Now you can:

```bash
pip install dimos
dimos-robot --robot-ip 192.168.x.xxx run unitree-go2
```

or with `uv`:

```bash
uv add dimos
uv run dimos-robot --robot-ip 192.168.x.xxx run unitree-go2
```

or even better, no need to install:

```bash
uvx --from dimos dimos-robot --robot-ip=192.168.x.xxx run unitree-go2
```

Or even better, rename `dimos-robot` to `dimos` (#740) and it becomes just:

```bash
uvx dimos --robot-ip=192.168.x.xxx run unitree-go2
```


Former-commit-id: 0802899 [formerly 647b7db]
Former-commit-id: d446553
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants