ros2-design

Generate a ROS 2 design contract with node specs, interfaces, and PlantUML diagrams.

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

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) and assets (resource) components.

What problem does it solve?

ROS 2 design teams often struggle to align on a single, implementable contract before coding. This skill provides a structured blueprint by generating a designs/ tree containing per-node specs, custom interfaces, a package-structure document, and PlantUML diagrams that communicate architecture and data flows for a robotics project.

Core Features & Use Cases

  • Generate a complete ROS 2 design contract from PRD, architecture, and hardware docs.
  • Produce a designs/ subtree with node design files, interfaces definitions, package layout, and diagrams (node-map + data-flow).
  • Ensure traceability from FRs to packages and provide a clear handoff ready for downstream implementation.

Quick Start

Provide the PRD, architecture, and hardware docs to generate the full ROS 2 design tree under designs/ with node specs, interfaces, package structure, and PlantUML diagrams.

Frequently Asked Questions about ros2-design

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

FAQPage Schema
How do I generate a ROS 2 design contract from a PRD and hardware documents?

To generate a ROS 2 design contract, provide your PRD, architecture, and hardware docs. The tool outputs a designs/ tree containing node specs, custom interfaces, and a package structure ready for downstream implementation.

What is the best way to visualize ROS 2 node architecture and data flows?

Visualizing ROS 2 node architecture uses PlantUML diagrams embedded as SVGs. The generation process creates node-map and data-flow diagrams directly within the design files to communicate architecture effectively.

How do I ensure traceability from functional requirements to ROS 2 packages?

Traceability from functional requirements to ROS 2 packages is ensured by mapping FRs directly within the generated design tree. This structured blueprint links each requirement to its corresponding package and node design files.

Can I automatically generate a complete package structure for a ROS 2 project?

Yes, you can automatically generate a complete ROS 2 package structure. By processing your architecture and hardware documents, the tool produces a structured package-layout document within a designs/ subtree.

Do I need to provide custom interfaces to generate a ROS 2 node design?

You do not need to provide custom interfaces upfront. The skill generates custom interfaces definitions alongside node designs by analyzing the provided PRD, architecture, and hardware documentation.

What limitations exist when using PlantUML for ROS 2 architecture diagrams?

PlantUML diagrams for ROS 2 architecture are limited to static node-map and data-flow visualizations embedded as SVGs. They communicate structure effectively but do not simulate runtime behavior or dynamic message routing.