Claude Code Plugins

Community-maintained marketplace

Feedback

Write technical content for the Physical AI textbook including chapters, examples, code snippets, and exercises. Use when creating new chapters, writing module content, adding code examples, or creating assessments.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name content-writer
description Write technical content for the Physical AI textbook including chapters, examples, code snippets, and exercises. Use when creating new chapters, writing module content, adding code examples, or creating assessments.

Content Writer Skill

Instructions

  1. Chapter Structure

    • Start with learning objectives (3-5 bullet points)
    • Include "Prerequisites" section linking to prior chapters
    • Use h2 for major topics, h3 for subtopics
    • End with "Key Takeaways" and "Next Steps"
  2. Code Examples

    • Always include working, tested code
    • Add comments explaining key lines
    • Provide both minimal and full examples
    • Include expected output in comments
  3. Technical Accuracy

    • Verify all commands with Context7 before writing
    • Check version compatibility (ROS 2, Python 3.11+, etc.)
    • Link to official documentation
    • Include troubleshooting tips
  4. Exercises & Assessments

    • Progressive difficulty (beginner → advanced)
    • Include hints and solutions (collapsible)
    • Tie to real-world robotics scenarios
    • Provide rubrics for self-assessment
  5. RAG-Friendly Formatting

    • Use descriptive headings (not "Introduction" alone)
    • Include frontmatter: title, description, module, week, tags
    • Avoid excessive nesting (max 3 levels)
    • Keep paragraphs focused (1 idea per paragraph)

Examples

---
title: "ROS 2 Nodes and Topics"
description: "Learn to create ROS 2 nodes that communicate via topics"
module: 1
week: 3
tags: [ros2, nodes, topics, python, rclpy]
---

# ROS 2 Nodes and Topics

## Learning Objectives

By the end of this chapter, you will be able to:
- Create a ROS 2 node using Python and rclpy
- Publish messages to a topic
- Subscribe to topics and process incoming messages
- Understand the ROS 2 communication graph

## Prerequisites

- [Week 1-2: Introduction to Physical AI](/docs/module-1/week-1-2/intro)
- Python 3.10+ installed
- ROS 2 Humble or later

## Creating Your First Node

A ROS 2 node is the fundamental building block...

```python
import rclpy
from rclpy.node import Node

class MinimalPublisher(Node):
    def __init__(self):
        super().__init__('minimal_publisher')
        self.publisher_ = self.create_publisher(String, 'topic', 10)
        # Timer fires every 0.5 seconds
        self.timer = self.create_timer(0.5, self.timer_callback)
    
    def timer_callback(self):
        msg = String()
        msg.data = 'Hello, Physical AI!'
        self.publisher_.publish(msg)
        self.get_logger().info(f'Publishing: {msg.data}')

Key Takeaways

  • Nodes are independent processes in ROS 2
  • Topics enable publish-subscribe communication
  • rclpy is the Python client library for ROS 2

Next Steps

Continue to Week 4: ROS 2 Services


## Definition of Done

- Chapter follows structure template
- All code examples are tested and working
- Frontmatter complete with proper tags
- Links to prerequisites and next chapters included
- At least one exercise with solution