/ 目錄 / 演練場 / robotics-agent-skills
● 社群 arpitg1304 ⚡ 即開即用

robotics-agent-skills

作者 arpitg1304 · arpitg1304/robotics-agent-skills

讓 AI 程式助理撰寫符合生產等級 ROS1/ROS2 程式碼的技能套件——涵蓋 SOLID 原則、設計模式與實用測試。

Robotics Agent Skills 教導 Claude Code 和 Cursor 生產級機器人開發的慣用寫法:ROS1/ROS2 節點、話題、服務、動作、啟動檔、測試模式,以及應用於機器人開發的 SOLID 原則。產出的程式碼具備完善的生命週期管理、日誌記錄與測試,讓審查者無從挑剔。

為什麼要用

核心特性

即時演示

實際使用效果

robotics-agent-skill.replay ▶ 就緒
0/0

安裝

選擇你的客戶端

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "robotics-agent-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/arpitg1304/robotics-agent-skills",
        "~/.claude/skills/robotics-agent-skills"
      ],
      "_inferred": true
    }
  }
}

開啟 Claude Desktop → Settings → Developer → Edit Config。儲存後重啟應用。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "robotics-agent-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/arpitg1304/robotics-agent-skills",
        "~/.claude/skills/robotics-agent-skills"
      ],
      "_inferred": true
    }
  }
}

Cursor 使用與 Claude Desktop 相同的 mcpServers 格式。專案級設定優先於全域。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "robotics-agent-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/arpitg1304/robotics-agent-skills",
        "~/.claude/skills/robotics-agent-skills"
      ],
      "_inferred": true
    }
  }
}

點擊 Cline 側欄中的 MCP Servers 圖示,然後選 "Edit Configuration"。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "robotics-agent-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/arpitg1304/robotics-agent-skills",
        "~/.claude/skills/robotics-agent-skills"
      ],
      "_inferred": true
    }
  }
}

格式與 Claude Desktop 相同。重啟 Windsurf 生效。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "robotics-agent-skill",
      "command": "git",
      "args": [
        "clone",
        "https://github.com/arpitg1304/robotics-agent-skills",
        "~/.claude/skills/robotics-agent-skills"
      ]
    }
  ]
}

Continue 使用伺服器物件陣列,而非映射。

~/.config/zed/settings.json
{
  "context_servers": {
    "robotics-agent-skill": {
      "command": {
        "path": "git",
        "args": [
          "clone",
          "https://github.com/arpitg1304/robotics-agent-skills",
          "~/.claude/skills/robotics-agent-skills"
        ]
      }
    }
  }
}

加入 context_servers。Zed 儲存後熱重載。

claude mcp add robotics-agent-skill -- git clone https://github.com/arpitg1304/robotics-agent-skills ~/.claude/skills/robotics-agent-skills

一行命令搞定。用 claude mcp list 驗證,claude mcp remove 移除。

使用場景

實戰用法: robotics-agent-skills

如何從規格書產生生產就緒的 ROS2 節點

👤 希望避免玩具範例程式碼的機器人工程師與學生 ⏱ ~45 min intermediate

何時使用: 當你準備撰寫新節點,並希望從一開始就具備完整的生命週期管理與測試。

前置條件
  • 已安裝技能套件 — git clone https://github.com/arpitg1304/robotics-agent-skills ~/.claude/skills/robotics-agent-skills
  • ROS2 Humble+ 已加入 PATH — 依照 docs.ros.org 的說明進行安裝
步驟
  1. 描述節點需求
    建立一個 ROS2 Humble 節點,訂閱 /scan(LaserScan),過濾障礙物,並使用狀態機發布 /cmd_vel。✓ 已複製
    → 節點具有清晰的類別分離、生命週期掛鉤與參數宣告
  2. 要求產生測試
    為過濾邏輯撰寫 pytest 單元測試,並為整合情境撰寫 launch_test。✓ 已複製
    → 可透過 colcon test 執行的測試
  3. 打包專案
    產生包含正確相依套件的 package.xml 與 CMakeLists.txt。✓ 已複製
    → colcon build 成功

結果: 一個能通過 colcon build 與 test,並具備有意義覆蓋率的 ROS2 套件。

注意事項
  • Claude 混用了 ROS1 與 ROS2 的 API — 每次提示都明確指定版本——例如「ROS2 Humble」
  • 節點缺少關閉處理邏輯 — 明確要求加入 on_shutdown 掛鉤與 SIGTERM 清理機制

將 ROS1 套件遷移至 ROS2

👤 正在使用已達生命週期終止之 ROS1 Noetic 的開發團隊 ⏱ ~120 min advanced

何時使用: 當你需要移植一個運作中的 ROS1 套件,並且希望獲得超越單純搜尋替換的協助。

步驟
  1. 審查 ROS1 套件
    讀取這個套件,列出所有需要為 ROS2 重新對應的 API(參數、計時器、服務、動作)。✓ 已複製
    → 以逐檔案方式呈現的對應表
  2. 產生 ROS2 對應版本
    產生每個檔案的 ROS2 版本,保留原有行為。對於沒有一對一對應的部分請標記出來。✓ 已複製
    → 新檔案,以及需要人工審查的標記項目

結果: 一個可以編譯並通過基本測試的 ROS2 套件分支。

注意事項
  • 缺少 callback_groups 與執行器設定 — 要求 Claude 根據舊的執行緒模型加入 MultiThreadedExecutor 並指派 callback groups

為舊版 ROS 節點補充測試而不重寫程式碼

👤 接手未經測試節點的工程師 ⏱ ~60 min intermediate

何時使用: 該節點在正式環境中運作正常,而你希望在重構前建立安全防護網。

步驟
  1. 找出介入點
    分析這個節點,找出可以注入假物件而不影響正式環境行為的介入點。✓ 已複製
    → 具體指出可介入的程式行或函式
  2. 在介入點產生測試
    利用這些介入點撰寫 pytest 測試。不要修改節點本身。✓ 已複製
    → 可獨立執行且能通過的測試

結果: 一套能捕捉回歸問題的特徵描述測試集。

組合

與其他 MCP 搭配,撬動十倍槓桿

robotics-agent-skill + claude-code-owasp-skill

使用 OWASP 指引對 ROS 網路通訊(rosbridge、Zenoh)進行資安審查

機器人技能套件產生了一個 rosbridge 整合——對 WebSocket 層執行 OWASP 技能進行審查。✓ 已複製

工具

此 MCP 暴露的能力

工具輸入參數何時呼叫成本
ROS2 node generation - 從零開始建立新節點 0
ROS1-to-ROS2 migration - Noetic → Humble/Jazzy 0
Launch file authoring - 多節點編排協調 0
Test scaffolds - 提升測試覆蓋率 0
SOLID + design patterns - 程式碼審查與重構 0

成本與限制

運行它的成本

API 配額
每次呼叫 Token 數
依情況而定
費用
免費
提示
每次提示聚焦於單一節點;一次產生整個套件會使 token 用量急速膨脹。

安全

權限、密鑰、影響範圍

憑證儲存: 無需憑證
資料出站: 技能本身不會發起任何對外連線

故障排查

常見錯誤與修復

產生的套件因 include 錯誤導致 colcon build 失敗

Claude 常會忘記加入 ament_target_dependencies。請明確要求重新產生 CMakeLists.txt。

驗證: colcon build --packages-select <pkg>
測試單獨執行時通過,合併執行時失敗

原因是共用 ROS context。要求為每個測試加入獨立的 rclpy.init() 與 shutdown()。

驗證: colcon test

替代方案

robotics-agent-skills 對比其他方案

替代方案何時用它替代權衡
ROS2 official docs你希望取得官方標準模式而非由 LLM 推導的結果無程式碼產生功能,速度較慢

更多

資源

📖 閱讀 GitHub 上的官方 README

🐙 查看未解決的 issue

🔍 瀏覽全部 400+ MCP 伺服器和 Skills