DockerRos2Development:用 Skill 约束 Agent 做 Docker 化 ROS2 开发

前言

在 ROS2 项目里,本机装一套能编、能跑、能开 rviz2 的环境,往往要处理发行版、依赖、DDS 与设备权限等多件事。把开发放进 Docker 或 docker-compose 能减轻「换机器就坏」的问题,但 Dockerfile、多容器组网、GPU/USB 透传和 colcon 缓存又会让 Agent 容易给出泛泛建议。

下面介绍 SkillHub 上的 DockerRos2Development(坐标 @user_3c6cb52e/docker-ros2-development-4wa1)。它把 Docker 场景下的 ROS2 开发要点写进通用 SKILL.md,装到 Agent 的 skills 目录后,对话时会按技能正文里的场景与镜像层次来组织回答,而不是每次从零拼凑。

这是什么

DockerRos2Development 是社区来源(community)的 Agent Skill,版本 1.0.0,发布者为 user_3c6cb52e,在 SkillHub 分类为 dev-programming(技能包元数据里标注为「开发者工具」)。公开简介为:DockerRos2Development 专用技能,帮助 AI Agent 高效完成相关任务。

技能声明 requires_api_key=false,无需额外 API Key。许可证为 MIT;元数据标明支持 Claude Code、Codex、Hermes Agent、OpenClaw、QClaw、WorkBuddy 等框架,平台为 multi-platform。仓库与主页字段均指向 https://github.com/1991513ccie-png。

截至 SkillHub 抓取数据:评分 100000,下载 1106 次(页面统计字段,会随时间变化)。

核心功能

技能正文标题为「Docker-Based ROS2 Development Skill」。已核实的能力边界如下(均来自包内 SKILL.md)。

适用触发场景

技能在「When to Use This Skill」中列出 Agent 应启用本技能的情形,包括:

  1. 为带 colcon 构建的 ROS2 工作空间编写 Dockerfile
  2. 为多容器机器人系统配置 docker-compose
  3. 排查容器间 DDS 发现失败(CycloneDDS、FastDDS)
  4. 用 NVIDIA Container Toolkit 配置感知节点的 GPU 透传
  5. 为 rviz2、rqt 转发 X11 或 Wayland 显示
  6. 管理相机、激光雷达、串口等 USB 设备透传
  7. 搭建基于 Docker 的 ROS2 构建与测试 CI/CD
  8. 编写带 ROS2 扩展的 VS Code devcontainer
  9. 优化 colcon 工作空间的 Docker 层缓存
  10. 用多阶段构建区分开发镜像与部署镜像

ROS2 官方镜像层次

技能用示意图说明 OSRF 镜像的分层关系,并强调在依赖满足的前提下选用更小基础镜像。层次从 ros:<distro>-ros-core(约 700 MB)向上叠加到 ros:<distro>-desktop-full(约 3.5 GB),中间包含 ros-base、perception、desktop 等标签;正文附带镜像标签、基础系统、体量与用途的对照表(当前公开发布包中该表在文件末尾截断,安装后若表不完整,应以 OSRF 官方文档为准)。

安装与启用

官方 SkillHub 页面要求按 SkillHub 安装与优先源配置 安装坐标 @user_3c6cb52e/docker-ros2-development-4wa1。

1、安装 SkillHub CLI(若尚未安装)

先检查是否已有 CLI:

command -v skillhub && skillhub --version

未安装时可执行完整安装(文档推荐):

curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash

仅安装 CLI:

curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash -s -- --cli-only

2、安装本技能到当前 Agent 的 skills 目录

安装时必须用 --dir 指向当前 Agent 实际读取的 skills 目录,否则默认落在 ./skills/ 可能不会被识别。文档给出的常见路径示例:

  • Cursor:~/.cursor/skills/
  • Claude Code:~/.claude/skills/
  • Codex:~/.codex/skills/ 或项目下的 .agents/skills/

在 Cursor 下可执行:

skillhub install @user_3c6cb52e/docker-ros2-development-4wa1 --dir ~/.cursor/skills/

安装成功后,技能会出现在类似 @user_3c6cb52e/docker-ros2-development-4wa1 的子目录中,内含 SKILL.md。按所用客户端说明启用或刷新 skills 后,新会话即可加载。

典型用法

本技能没有单独的命令行工具;用法是让已启用技能的 Agent 在对话中处理 Docker + ROS2 任务,并遵循 SKILL.md 中的场景与镜像选择原则。

可复现的流程示例:

  1. 完成上一节的 skillhub install,确认 ~/.cursor/skills/(或你使用的路径)下存在该技能目录。
  2. 在 Cursor 中开启新对话,用自然语言描述任务,并点名场景,例如:「按 DockerRos2Development 技能,为 ROS2 Jazzy 工作空间写多阶段 Dockerfile,基础镜像用 ros-base,并说明 colcon 缓存层怎么拆。」
  3. 若涉及多容器,可明确 DDS 与网络:「两个容器跑不同节点,FastDDS 发现失败,请按技能里的 DDS 调试思路排查 docker-compose 网络与环境变量。」

Agent 应结合技能中的「When to Use」与镜像层次图选型,而不是随意选用 desktop-full 等大镜像。

适用场景与注意

适合谁: 已在用或计划用 Docker / compose / devcontainer 做 ROS2 开发的工程师,并希望 Agent 在 Dockerfile、组网、DDS、GPU/显示/USB、CI 等话题上对齐同一套检查清单。

限制与注意:

  • SkillHub 列表页简介较短,具体步骤以安装后的 SKILL.md 为准;当前 1.0.0 包内正文在镜像对照表处可能不完整,涉及镜像大小与标签时务必对照 OSRF Docker 镜像 等官方来源。
  • 技能元数据中的 GitHub 主页为发布者账号链接,不等同于 ROS2 或 Docker 官方文档。
  • 容器内跑实机设备、GPU 与图形界面依赖宿主机驱动与权限,Agent 只能给出配置思路,仍需你在目标机器上验证。
  • 统计数字(下载量、评分)来自 SkillHub 页面,仅作参考。

结尾

DockerRos2Development 把 Docker 化 ROS2 开发的高频场景和 OSRF 镜像分层写进 Agent 可加载的 Skill,配合 SkillHub 一条安装命令即可放进 Cursor 等环境的 skills 目录。需要查看版本与坐标时,可打开 SkillHub 页面:

https://www.skillhub.cn/skills/user_3c6cb52e/docker-ros2-development-4wa1

API 条目(与页面同源索引):https://api.skillhub.cn/user_3c6cb52e/docker-ros2-development-4wa1

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye