$ show henki-robotics/henki_ros2_best_practices
Despite being classified as application-oriented, henki_ros2_best_practices contains no executable software. It is a documentation/standards repository: a single, carefully authored Markdown document (henki_ros2_best_practices.md) codifying architecture and clean-code guidelines for ROS 2 development, plus a README explaining how to integrate the document into AI coding workflows (e.g., Claude Code via CLAUDE.md) and a pointer to a companion examples repo comparing agent-generated ROS 2 packages with and without the practices applied. The actual deliverable is a concise, opinionated standards document covering node single-responsibility, separation of application logic from ROS 2 communication, launch file conventions (XML preferred), YAML config-based parameter handling, throttled logging, semantic custom message interfaces in '_msgs' packages, service-vs-action selection with enum-style error codes, C++ for performance-critical loops, SingleThreadedExecutor preference, rosdep/vcs-tool dependency management, package documentation requirements, and unit-test-first strategies that avoid flaky ROS communication sleeps. In production, this repository functions as a knowledge artifact rather than a running system: humans read it as a reference, and AI coding agents consume it as an enforced standard when generating ROS 2 packages. There are no API endpoints, data flows, or runtime dependencies; its 'architecture' is the structure and specificity of the guidelines themselves. The document is self-contained and could be dropped into any ROS 2 team's repository or agent configuration with minimal adaptation, making it a genuinely reusable engineering asset despite the complete absence of code.
The LLM identified 1 files worth highlighting for reuse:
Self-contained ROS 2 development standards document prescribing concrete, testable conventions: single-responsibility nodes, decoupling application logic from ROS communication, XML launch files with YAML configs, throttled logging, semantic custom messages in '_msgs' packages, enum-style action error codes, C++ for high-frequency loops, SingleThreadedExecutor preference, rosdep/vcs-tool dependency management, and unit tests for core logic without arbitrary sleeps. Demonstrates non-obvious craftsmanship in distilling hard-won ROS 2 pitfalls into a compact, actionable reference. Reusable by copying the file into any ROS 2 project or referencing it from a coding agent's CLAUDE.md to enforce the same standards.