What runs on your robot.
Rust, Apache 2.0, lower priority than every autonomy process. Under pressure it degrades its own sampling before it delays a control loop.
< 5%
of one CPU core
< 250 MB
memory
< 10%
of disk write speed
0
allocations on the hot path
Design budgets, enforced as CI tests on reference hardware. The benchmark harness ships with the agent.
How it knows something went wrong.
Signals the robot already sends. The agent watches for things the robot reports on its own: a program stops, someone hits the e-stop, a sensor stops sending data. You do not have to set any of this up.
Rules you write. You tell the agent what counts as a problem on your robots. A robot that sits at a dock for more than 90 seconds is one. A robot drawing odd current while it is parked is another.
Patterns it learns. Once you have a few robots running, the agent learns how each one normally behaves and compares it to the others on the same software version.
What leaves the robot when something breaks.
The network cannot carry everything, so the selection of what to keep runs on the machine.
100 to 300 MB / min
on a modest robot's bus. You cannot ship that.
60 s
held in memory. Configurable from 15 to 120.
One MCAP file
content addressed, so it is tamper evident. Opens in the viewers you already run.
What replay does today.
You open the capture in a viewer and watch the minute before the failure.
Re-running a program against its recorded data is what we are building next.
An install section with a one line install command pointing at the install script in the repo and an icon button that copies it.
Install the agent
The agent runs alongside your existing ROS 2 stack. No broker to deploy and no changes to your nodes.
$ curl -fsSL …/sndsh404/exomantle/main/install.sh | sh
Also available via cargo, Docker, and .deb
OUTPUT
agent 0.4.1 running on AMR-041
34 topics discovered, 8 subscribed
rolling buffer 60 s over 8 topics, 41 MB resident
registered to site ATL-1
A supported platforms section listing the ROS 2 distributions, operating systems, hardware, and DDS implementations the agent supports, plus roadmap items.
Supported platforms
ROS 2 on Linux, arm64 or x86_64. The agent is tested against each of the following on every release.
SUPPORTED
ROADMAP
A section comparing rosbag and Exomantle across how recording starts, robot scope, capture size, and where data is retrieved.
Compared to rosbag
rosbag records a session you start. The agent holds a continuous buffer on every robot and uploads only the window around a failure. Captures export to MCAP, so rosbag2 and the viewers you already run still work.
ROSBAG
Started manually before the run
One robot per recording
Full session written to disk
Retrieved over SSH, per robot
EXOMANTLE
Always running, no operator step
Robots within 25 m capture the same window
60 s window over the subscribed topics, 41 MB per capture
Grouped into issues across the fleet