Robot Harness
A harness for embodied intelligence.
From intent to action. Back with evidence.
Website · Quick start · Documentation · Examples · Contribute
Robot Harness is building the execution foundation between agents, robot skills and the physical world. The aim is to make actions observable, interruptible and composable—and make their outcomes useful for the next decision and future improvement.
Its experimental C++17 Core starts with three questions: May this action run? May this result be used? Is the previous work settled enough to proceed? Applications choose goals; robot stacks retain control and device protection.
See it move
Observe → decide → act → observe again. Robot Agent makes three actual model proposals to visit A, visit B and assess completion through Harness and Nav2.
model-navigation.mp4
Earlier local M6 candidate · Gazebo simulation · 70.9 seconds at original speed. A releases before B starts; B settlement remains pending at the end.
Current real-model shared coordination and waiting-task withdrawal · Shared coordination: navigation, ACT manipulation and decision withdrawal · In-motion instructions: stop or redirect to B · Checkpoint: finish at A or continue to B · More demos: manipulation, cancellation, handoff and Owner loss · Recording notes and same-run evidence
Build
Requires a C++17 compiler and CMake 3.16+. No model or robot is needed for this first run.
git clone https://github.com/xiao-yang25/robot-harness.git cd robot-harness cmake -S . -B build -DBUILD_TESTING=ON -DCMAKE_BUILD_TYPE=Debug cmake --build build --parallel 2 (cd build && ctest --output-on-failure) ./build/robot_harness_normal_execution
Expect sums 29 and 61, with accepted results and settled work. Continue with two-step tasks, cancellation, or the Ubuntu container. Build troubleshooting. For robot motion, follow the Humble/Gazebo simulation tutorial, or use the local live viewer to watch navigation, cancellation and replacement.
Current scope
| Available today | Entry point |
|---|---|
| Execution authority, guarded results, cancellation and deadlines | C++ Core |
| Shared task execution with ALOHA/ACT and Nav2 consumers | Python Runtime |
| Simulated navigation, cancellation, replacement and bounded loss isolation | Humble/Gazebo |
| Existing-agent tools and embodied business applications | MCP · Robot Agent |
Run the navigation business tutorial with controlled or host model proposals. The M6 delivery scope covers the two-consumer slice and its recorded qualifications.
Next: broaden task/skill consumers and qualify a third backend combination. Broader skills, learning and self-improvement remain future directions.
Early-stage software, validated in limited simulation profiles. No physical-robot integration or hard stop guarantee yet. Recovery requires a surviving, polled Owner; the optional finite motion profile can expire outlet permission after Owner loss; cancellation does not by itself prove native stop or settlement. See validation and supported combinations and architecture and limits.
Interfaces and compatibility
C++17 · ROS-independent Core · CMake installation and source-tree adapters/examples. APIs are evolving; there is no stable SDK/API/ABI or published release yet. Start with the architecture guide or backend integration.
Contributing
Report a bug, discuss an integration, or read CONTRIBUTING. The kingfisher is our preview identity and may evolve.
License
Except for third-party material with its own notices, Robot Harness is licensed under MIT OR Apache-2.0, at your option. See the license declaration, contribution terms and simulation third-party notices.