soar_ros
- Software
- Middleware
- Library
A ROS 2 package that wraps the Soar cognitive architecture so Soar agents can publish, subscribe, offer services and call them, without blocking the Soar kernel.
Made by THA - Embedded Systems Lab.
Source on GitHub: github.com/THA-Embedded-Systems-Lab/soar_ros (opens in a new tab). Facts read at commit be5b947 (opens in a new tab).
Licenses
- Code
- Apache-2.0 (opens in a new tab)
Read by Robotheca from LICENSE (opens in a new tab) (Apache-2.0) at commit be5b947 (opens in a new tab), on 22 Oct 2026.
- Commercial use
- Yes
What it does
- Runs the Soar kernel in continuous mode on a separate thread so it does not block ROS 2 callbacks.
- Provides wrapper classes for ROS 2 publishers, subscribers, services, clients and action clients.
- Supports multiple Soar agents in one kernel.
- Includes ready-made converters between common std_msgs and geometry_msgs types and Soar working memory.
- Action servers are not supported yet.
- Relies on a forked Soar version built with cmake instead of scons.
Written by Robotheca from the project's README (opens in a new tab) at commit be5b947.
Getting started
- Difficulty
- Advanced
- How to start
- The project's website (opens in a new tab)
Maintenance
- Status
- Active: a commit in the last 90 days
- Newest commit
- 17 Sept 2026 on main
- Latest release
- 0.2.0 (26 Jun 2026)
Checked on GitHub on 22 Oct 2026.
Links
Robots that can run it
No robot on Robotheca is linked to it yet. Links come from a robot's robot.yaml, from its dependency files read as text, or from Robotheca's editors.
Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.