Skip to content
@openrois

OpenRoIS

Open-source middleware for the OMG RoIS Framework 2.0. Control robots, avatars, and digital agents from one SDK.

OpenRoIS logo

OpenRoIS

A community-driven open-source middleware implementing the OMG Robotic Interaction Service (RoIS) Framework 2.0
Write a service application once. Run it on physical robots, virtual avatars, and AI services.

OMG RoIS 2.0 Paper on arXiv: 2609.21178 License: Apache-2.0 Status: alpha Website: openrois.org

Website · OpenRoIS GitHub Organization · OpenRoIS arXiv Preprint · OMG RoIS Specification · Documentation · Roadmap


Why OpenRoIS

Service applications for human-robot interaction are usually written against the hardware-specific interface of one platform, so every change of hardware forces a rewrite. The OMG RoIS Framework 2.0 solves this at the level of the standard: applications talk to HRI Engines through five platform-independent interfaces and exchange symbolic messages such as "a person was detected" or "navigate to the kitchen".

A specification alone does not provide the maintained implementation, SDKs, and adapters that adoption requires. OpenRoIS is that implementation: community-driven, open-source, and released under the Apache-2.0 license.

Without a standard interface, N applications and M platforms need N times M integrations. With OpenRoIS, they need N plus M.

What OpenRoIS Provides

  • A recursive engine. One Engine class realizes both the main and the sub HRI Engine roles of RoIS, so the gateway and every adapter share a single dispatch implementation.
  • A five-method Component Contract (discover, invoke, query, subscribe, unsubscribe) that keeps the engine independent of ROS 2, gRPC, game engines, or any other middleware.
  • A JSON-RPC 2.0 mapping of the five RoIS interfaces over WebSocket (rois.system, rois.command, rois.query, rois.event, rois.stream), usable from browsers and across the internet.
  • A single-source-of-truth type pipeline. RoIS types are authored once as Python Pydantic models, exported to JSON Schema, and generated into TypeScript and C#, with tests that check them against the normative RoIS machine-readable files (not redistributed, so those tests run only where the OMG files are present).
  • SDKs for every side of the system: TypeScript for web applications, C# for Unity and .NET, and a Python adapter SDK with ROS 2 support.

OpenRoIS architecture: service applications, the gateway hosting the main HRI Engine, adapters hosting sub HRI Engines, and their hosts.

Repositories

Repository Description
openrois Core middleware: interface types, recursive engine, adapter SDK, reference components, client SDKs, and examples
openrois-docs Source of the openrois.org website and documentation

Project Status

OpenRoIS is alpha, pre-1.0, with an unstable API. The foundations are in place and demonstrated with a physical robot. The rest of the RoIS surface is being built in the open.

Area Status
RoIS interface types (Python, JSON Schema, TypeScript, C#) Available
Recursive engine, WebSocket server and client, and adapter SDK (Python) Available, hardening
TypeScript client SDK and web component inspector Available
Reference components for the Preferred Robotics Kachaka (gRPC and ROS 2) Available
C# client SDK for Unity Available
Open reference platform based on the Pollen Robotics Reachy Mini In progress, simulated first
Authentication (JWT), authorization (RBAC), and TLS at the gateway Available, off by default
Streaming Interface control plane (rois.stream.*) Available
WebRTC media on the data plane (signaling through streaming components) Planned
Packages on PyPI, npm, NuGet, and the Unity Package Manager Planned
All 17 basic RoIS HRI Components (v1.0) Planned

See the roadmap for the full plan.

Get Involved

Contributions are welcome, and reference components for new robots are the natural entry point. Read the contributing guide, browse the open issues, or open a new one to discuss an idea.

License

OpenRoIS is released under the Apache License 2.0. It is stewarded by Coarobo GK and developed with the OpenRoIS community. OpenRoIS is a trademark of Coarobo GK. RoIS is a trademark of the Object Management Group.

Pinned Loading

  1. openrois openrois Public

    Open-source middleware for the OMG RoIS Framework 2.0. Control robots, avatars, and digital agents from one SDK.

    Python 2 1

  2. openrois-docs openrois-docs Public

    Website of OpenRoIS at openrois.org, with the white paper, the architecture, and the roadmap, built with Docusaurus.

    TypeScript

Repositories

Showing 4 of 4 repositories

Top languages

Loading…

Most used topics

Loading…