Agent Skills: ROS 2 Patterns

ROS 2 node templates and message types for robotics development. Use when creating ROS 2 nodes, understanding message types, or writing publisher/subscriber patterns.

UncategorizedID: zeeshan080/ai-native-robotics/ros2-patterns

Install this agent skill to your local

pnpm dlx add-skill https://github.com/zeeshan080/ai-native-robotics/tree/HEAD/.claude/skills/ros2-patterns

Skill Files

Browse the full folder contents for ros2-patterns.

Download Skill

Loading file tree…

.claude/skills/ros2-patterns/SKILL.md

Skill Metadata

Name
ros2-patterns
Description
ROS 2 node templates and message types for robotics development. Use when creating ROS 2 nodes, understanding message types, or writing publisher/subscriber patterns.

ROS 2 Patterns

Instructions

When creating ROS 2 code:

  1. Use the provided templates as starting points
  2. Follow ROS 2 Humble conventions
  3. Include proper error handling
  4. Add docstrings and comments

Common Patterns

| Pattern | Template | Use Case | |---------|----------|----------| | Publisher | publisher.py | Sending data to topics | | Subscriber | subscriber.py | Receiving data from topics | | Service Server | (extend publisher) | Request/response pattern | | Action Server | (advanced) | Long-running tasks |

Node Structure

import rclpy
from rclpy.node import Node

class MyNode(Node):
    def __init__(self):
        super().__init__('node_name')
        # Initialize publishers, subscribers, timers

    def callback(self, msg):
        # Handle incoming messages
        pass

def main(args=None):
    rclpy.init(args=args)
    node = MyNode()
    rclpy.spin(node)
    node.destroy_node()
    rclpy.shutdown()

if __name__ == '__main__':
    main()

Reference

See messages.md for common message types. See templates/ for complete templates.