Get started / ROS 2 interface package Edit on GitHubMarkdown

Cookwala ROS 2 interfaces

cookwala_msgs is a ROS 2 interface package (ament_cmake) with two actions that mirror the Core 0.2 API:

ActionGoalFeedbackResult
ExecuteRecipeExecuteRequest (recipe ref, hash, servings, idempotency key, full request JSON)ExecutionStatus fields (seq, state, node, op, progress, rung, medium temperature, human needed)final state, refusal reason, ExecutionLog JSON
ExecuteNodeone recipe node, its envelope, an optional narrower targetprogress, medium temperature, target reachedenvelope ok, rung used, step summary, deviation

Cancelling a goal is a StopRequest: the server must stop safely. Safety limits are enforced by the device; nothing in a goal can change them.

bash
# in a ROS 2 workspace
ln -s /path/to/cookwala/bindings/ros2/cookwala_msgs src/cookwala_msgs
colcon build --packages-select cookwala_msgs
ros2 interface show cookwala_msgs/action/ExecuteRecipe

JSON fields are carried as strings so the ROS 2 types never drift from the schemas; validate them with the published bundle at https://cookwala.ai/v1/schemas/bundle.json (generated by tools/build_site.sh). The package is not yet built in CI. A bridge node that maps these actions to the HTTP Core API (the reference hub in hub/) is a good first contribution; see docs/ROBOTICS.md.