OmniLink × OmniSim

The default playground for OmniLink agents.

OmniSim is the open-source robotics simulator built by OmniLink, for OmniLink — the first simulator designed from the ground up around agentic development and control. Describe what you want in natural language; an agent builds the world, the controllers, and the bridges for you.

  • Open source · Apache 2.0
  • Built on Webots
  • 60+ robots out of the box
  • Headless / agent-native

A simulator you talk to — not configure, not program.

Every OmniLink agent eventually needs a body. OmniSim is where they get one. It is purpose-built as the default simulation environment for the OmniLink platform: an agent describes a scenario, OmniSim spins up the world, the controllers, and the local HTTP bridges, and another OmniLink agent drives the robots in real time. No hand-wiring, no `.wbt` archaeology, no licensing fees — it is free, open-source, and yours to ship in commercial or academic work.

What OmniSim does

Everything Webots does — physics, sensors, actuators, 60+ robots — plus an agentic authoring layer on top.

Full robot simulation

ODE physics, OpenGL/Wren graphics, and a complete sensor suite — cameras, lidar, GPS, IMU, distance, recognition — with actuators and joints out of the box.

60+ robots, ready to drive

Husky, UR5e, e-puck, hexapods, soccer robots, drones, vehicles, and your own URDF imports. Pick one by name; an agent wires the controller.

Controller APIs in 5 languages

C, C++, Python, Java, MATLAB. Controllers are typically written by an agent rather than hand-authored — OmniSim is the first simulator where that is the expected workflow.

Procedural worlds (omniworld)

Mars, forest, desert, urban, warehouse, indoor — generated deterministically from a seed. Same recipe, same world, every time. Invoked by name, not by editing scene files.

Headless & agent-native

Worlds run windowless for batch validation, regression testing, and CI — the default execution mode for agents. Structured exit codes, no flaky GUI waits.

HTTP bridges to OmniLink

Sample bridges expose robot control over a local HTTP API on 127.0.0.1:6060, so an OmniLink agent can drive a robot arm at runtime without ever touching controller code.

Authoring harness for agents

A long-running HTTP service wraps a headless Webots subprocess and lets a coding agent author worlds in a tight loop: load → screenshot → inspect → adjust → hot-reload in ~600 ms.

Structured diagnostics

Load failures come back as typed codes (PROTO_NOT_FOUND, WORLD_PARSE_SYNTAX_ERROR, …) instead of free-text stderr — so an agent can actually act on them.

How you use it

The expected workflow is conversational, not procedural.

  1. 01

    Describe the scenario.

    Tell your building agent what you want to simulate — "a Husky exploring a warehouse with three obstacles," or "a UR5e picking blocks off a table." It picks or generates the world, wires up controllers, and runs it.

  2. 02

    Iterate by talking.

    Ask for changes — different terrain, more robots, a new sensor, a different control law. The agent edits the right files and re-runs. Hot reload in ~600 ms.

  3. 03

    Hand off to runtime agents.

    Once the scene is alive, OmniLink agents drive the robots over local HTTP bridges — reasoning about tasks and operating the system in real time.

Built on Webots, extended for agents

OmniSim is built on top of Webots, originally developed at EPFL in 1996 and later by Cyberbotics Ltd. Webots was open-sourced under Apache 2.0 in December 2018; OmniSim inherits every feature, robot, sensor, and physics capability and adds OmniLink's own contributions on top.

Both projects are distributed under the Apache License 2.0 — free to use, modify, and ship in commercial or academic work as long as attribution is preserved.

Spin up your first world.

Clone, build, and launch the warehouse Husky demo with one command. Then point your OmniLink agent at it and watch the robot move on its own.