ros2-dev

Provides ROS 2 development guidance for Python and C++ nodes, QoS, launch files, and testing.

Updated Mar 18, 2026
One-click install
npx skills add https://github.com/robotics-playground/skills --skill ros2-dev
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ros2-dev
Source: https://github.com/robotics-playground/skills/tree/main/skills/ros2-dev
Command: npx skills add https://github.com/robotics-playground/skills --skill ros2-dev

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

ROS 2 development for Python and C++ can be challenging to learn and scale across teams. This guide consolidates patterns, debugging practices, and best practices into a single reference to accelerate onboarding and reduce integration friction.

Core Features & Use Cases

  • Node design patterns, executor models, and lifecycle concepts for rclpy and rclcpp.
  • QoS configuration, DDS troubleshooting, and launch-file orchestration across multi-node systems.
  • Testing, debugging, logging, and CI/CD guidance for ROS 2 projects, including integration testing with launch_testing.

Quick Start

Set up a new ROS 2 workspace, create a Python or C++ node following the recommended patterns, and wire it into a launch file with proper QoS and logging.

Frequently Asked Questions about ros2-dev

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I structure ROS 2 nodes in rclpy and rclcpp for production?

To structure ROS 2 nodes for production, apply recommended design patterns for rclpy and rclcpp, utilize executor models, and implement lifecycle management and composable nodes for scalable architectures.

What is the best way to configure QoS and troubleshoot DDS in ROS 2?

Configuring QoS and troubleshooting DDS in ROS 2 requires applying specific Quality of Service profiles and following targeted DDS troubleshooting practices to ensure reliable multi-node communication.

How do I write integration tests for ROS 2 launch files?

Writing integration tests for ROS 2 launch files uses the launch_testing framework to validate multi-node systems, orchestrate complex startup sequences, and ensure robust CI/CD pipelines.

Can I use ROS 2 for both perception and hardware interface development?

Yes, ROS 2 supports both perception and hardware interface development by providing comprehensive guidance on node patterns, parameter handling, and debugging across these application domains.

How do I orchestrate multi-node systems using ROS 2 launch files?

Orchestrating multi-node systems with ROS 2 launch files involves applying launch-file orchestration patterns, configuring proper QoS profiles, and establishing robust logging to manage complex node interactions.