Did the robot actually stop? OmniSim replaces a timer with measured settling
The agent-facing robotics workshop adds gravity compensation, lift-before-move paths and honest failure reports for simulated arms, while keeping real-hardware limits explicit.
A motion result that checks the joints
OmniSim v9.2.5 changes an important answer for agents controlling simulated robot arms: settled now means every joint is within 1.5 milliradians of its target, rather than simply that 0.15 seconds have passed. The October 17 release also adds bounded gravity compensation to the OmniLink arm bridges, addressing the maintainer’s finding that the earlier spring-based servo let arms sag below commanded poses.
The release notes say a hold that fails to converge returns settled: false and the measured error. A hold interrupted by the next command instead returns settled: null, cut_short: true. That distinguishes an unsuccessful hold from an observation cut short, giving an agent more concrete feedback for its next action.
The maintainer reports sub-millimeter reaching errors in specified HEBI, UR5e and OmniArm 6 simulation tests after the change. Those are the project’s measurements on its stated machine, not independent AITrending tests or evidence of equivalent accuracy on physical robots.
Lift first, with a hardware boundary
The bridge now sends simulated arms up, across and down when a target requires more than four centimeters of sideways travel, using a six-centimeter lift by default. Returning home from a low pose also retreats upward first. This addresses the author’s observation that earlier joint-space motions skimmed objects.
It is not obstacle avoidance. The notes explicitly warn that an arm beneath a shelf can hit it while lifting. The generated path is also not forwarded to a connected real arm, because that hardware API takes no waypoints; the result reports the distinction in hardware_path.
A stop, reset or preempt arriving during planning now supersedes the pending goal before it starts. A second goal submitted while planning receives a 409 response. The engine update separately fixes the transform order for Collada meshes with instanced geometry, which the maintainer traced to misplaced Rover Robotics MEGA wheel and payload meshes.
The workshop around the agent
OmniSim is an Apache-2.0 simulator and robotics workshop, with an HTTP harness and a first-party MCP server for agents such as Claude Code and Cursor. The MCP tools can load and modify simulation scenes, run controllers and inspect what happened. The separately connected OmniLink agent requires an OmniKey and a model connection, including on its Free tier; model usage is billed separately.
Use the v9.2.5 installer when upgrading: the notes say both the bridge and engine changed. Windows 10/11 has the prebuilt package; Ubuntu 22.04 and 24.04 use a source build, and macOS is unsupported. The documented starting checks are python -m omnisim doctor and then python -m omnisim harness for the MCP workflow. A repository clone or reachable proxy alone does not establish that the engine and Newton runtime work.
These changes make simulated motion results more informative for an agent’s control loop. The project still explicitly describes simulation-to-real transfer as unproven.