A robot from ANYbotics inspects a substation in Norway. The same task — reading a gauge, scanning for thermal anomalies, logging observations — needs to work on a Unitree robot in Texas, a Boston Dynamics Spot in Abu Dhabi, and a Neura humanoid in a German factory.

Today it doesn’t. Every vendor speaks a different language. Every deployment starts from zero.

The problem

90% of robot deployment effort goes to data preparation, not model training. Every new site, every new robot, every new task starts from scratch. Task knowledge doesn’t transfer across platforms. Datasets are vendor-locked.

This is the same problem the internet had before TCP/IP. Every network spoke a different protocol. Nothing interoperated. Then a shared standard emerged, and everything changed.

What ORTO is

ORTO — Open Robot Task Ontology — is a cross-vendor vocabulary for describing physical tasks. It defines:

A task described in ORTO works on any robot. A quadruped, a wheeled robot, a cobot arm, and a humanoid can all use the same task description — their platform-specific controllers handle the execution.

Getting started

pip install orto
from orto import TaskOntology

onto = TaskOntology()
print(onto.actions.get_primitives("inspect"))
# ['visual_scan', 'thermal_scan', 'read_gauge', ...]

The ontology is extensible — you can add domain-specific actions, objects, and bindings for your vertical via YAML extension files.

What’s next

ORTO is Apache 2.0 licensed and open to contributions. We’re looking for robotics engineers to help extend the ontology for new verticals — agriculture, healthcare, logistics, construction.

Check out the GitHub repository and let us know what you think.

Describe a task once. Deploy on any robot.