Initial YAGI Implementation in C++

YAGI Interpreter

The YAGI Interpreter is available as a stand-alone CMake package. Currently we recommend only Linux as base system. We haven’t ┬átested YAGI extensively with other platforms.

The YAGI interpreter is available via our git repository:

The package contains:

  • the YAGI interpreter
  • the standard data base back-end
  • a cin/cout basic system interface
  • a system interface to Fawkes (if Fawkes is properly installed on your system)
  • a system interface to Asrael (if Asreal is properly installed on your system)

YAGI System Interfaces

System interfaces are realized as plug-ins (shared library). YAGI basically supports out of the box system interface for simple cin/cout communication, Fawkes (if installed) and Asrael (if installed).

YAGI-ROS Interface

Yagi is fully integrated with ROS.  The YAGI-ROS interface library is provides as a separated ROS catkin package. Actions are handle via a action service while exogenous events a reported via a dedicated topic.

The YAGY-ROS interface is available via our git repository:

git clone

Alternative YAGI Implementation in Java

The C++ implementation of YAGI faced some run time issues in particular when using the plan operator. Here you can find the JAVA implementation of Thomas Eckstein.