mcpField
A
arduino-workflow-router

arduino-workflow-router

github.com/wedsamuel1230开发2857 次安装2 周前更新
代码仓库

关于 arduino-workflow-router

arduino-workflow-router 是用于将完整、跨领域或需求未明的嵌入式项目分派给相关专门技能的技能,涵盖信息收集、执行顺序及各阶段的证据要求。

主要功能

  1. 01将任务分派给嵌入式专门技能
  2. 02定义开发板与工具链信息收集
  3. 03提供组合工作流顺序
  4. 04规定证据与安全要求

适用场景

  1. 01规划涵盖硬件与固件的嵌入式项目
  2. 02分派涉及多个技术领域的任务
  3. 03确定构建、上传或调试所需技能
  4. 04协调测试与部署工作

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/wedsamuel1230/embedded-engineering-skills --skill arduino-workflow-router

安装后在 Claude Code 中输入/arduino-workflow-router确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
board-intake.md
connected-device-security.md
failure-recovery.md
toolchain-selection.md

详细介绍

嵌入式工作流路由器

对于完整的嵌入式工作,或涉及多个学科的工作,请使用此技能作为简洁的入口。如果任务范围明确、开发板已确认且仅涉及一个阶段,请直接加载相应的专家技能。

建议的生命周期入口

对于任何涉及实体操作或多个会话的请求,请先加载 embedded-project-loop。它会确定目标、下一步操作、证据范围、回滚路径,以及由用户负责的实体操作关卡。然后返回此处,进行开发板和工具链路由。

优先加载

  1. 阅读 ../../docs/arduino-skill-contract.md。
  2. 如果工作涉及多个会话或实体操作,建议先加载 embedded-project-loop;在开始实现前创建其目标/下一步待办状态,并保持该流程开启,直到满足证据关卡。
  3. 填写 ../../docs/board-support/board-profile-template.md,或说明为何无需填写。
  4. 如果需要确认指定开发板或开发板系列,请在选择引脚前加载 ../board-support/SKILL.md 及其索引中的配置文件。
  5. 阅读 references/board-intake.md,检查开发板和硬件。
  6. 阅读 references/toolchain-selection.md,了解 IDE、CLI、PlatformIO 或厂商版本与库的兼容性。
  7. 从下方的路由表中选择专家技能。
  8. 在进行上传、启动、供电或固件恢复操作前,阅读 references/failure-recovery.md;对于任何联网或可更新的设备,阅读 references/connected-device-security.md。

这是优先加载顺序。按需加载:只有在符合触发条件时才加载参考资料,这样路由器可保持在 500 行以内,详细变体也能逐步呈现。

触发优先级

  • 对于组合型、需求不明确或跨学科的请求,应由此路由器负责首次路由。先加载此路由器,再加载任何相关专家技能,包括 arduino-project-builder 或 board-selection。
  • 对于涉及实体操作或多个会话的请求,请先加载 embedded-project-loop,再加载此路由器,然后返回此路由器选择组合型专家技能路线。
  • 对于开发板和工具链均已确认的单阶段请求,请直接加载范围最窄的专家技能。
  • 对于指定开发板的参考信息或能力查询,由 board-support 负责确认准确型号并提供基于来源的配置文件。board-selection 负责根据需求选择或更换开发板,也可以使用 board-support 提供的信息。
  • 不涉及实现、接线或生命周期工作的开发板选择请求,可以从 board-selection 开始;一旦涉及其他领域,就应返回此路由器,并遵循组合工作流顺序。
  • 不要同时加载 arduino-serial-monitor 和另一个串口调试技能;现有的串口监视器负责提供结构化运行时证据。

信息收集关卡

不要臆造引脚、电压、电流限制、内存大小、外设、协议、库版本或上传命令。请询问缺失信息,或采用明确标注的假设并附上验证步骤。记录准确的开发板、框架、工具链、主机、依赖版本和所需的验证阶段。

路由表

需求接下来加载证据重点
Zephyr 开发zephyr-development特定目标的证据
STM32 开发stm32-development特定目标的证据
Pico SDK 开发pico-sdk-development特定目标的证据
MicroPython 开发micropython-development特定目标的证据
调试探针probe-debugging特定目标的证据
故障取证fault-forensics特定目标的证据
总线调试bus-debugging特定目标的证据
启动和闪存恢复boot-flash-recovery特定目标的证据
内存和时序调试memory-timing-debugging特定目标的证据
USB 调试usb-debugging特定目标的证据
需求或开发板选择board-selection,然后是 board-support,再然后是 arduino-project-builder决策和设计
指定开发板参考或能力查询board-support,然后是相关的专业工具确切身份和有来源支持的限制
引脚映射或 GPIO 声明board-support,然后是 pin-assignment,再然后是 wiring-safety-check开发板限制和硬件
接线、电压、电流或上拉电阻wiring-safety-check、power-budget-calculator、circuit-debugger硬件
ADC/传感器噪声、采样、滤波或信号调理board-support、wiring-safety-check、sensor-signal-filtering,确认检测正常后再使用 sensor-calibration-workbench信号链设计和实测硬件行为
代码模式或开发板抽象arduino-code-generator、non-blocking-patterns、memory-budgeting构建和内存
库或框架依赖library-selection,然后是代码/项目相关技能兼容性和内存
数据手册、组件或协议存在不确定性datasheet-interpreter、i2c-bringup-diagnostician硬件假设
编译、开发板发现、上传或端口arduino-cli-skill 加上 error-message-explainer构建和上传
PlatformIO、原生 ESP-IDF、混合构建、CI 或 SDK 迁移embedded-build-workflow;仅在 Arduino CLI 分支使用 arduino-cli-skill明确的框架/管理器和构建矩阵
控制环路截止时间、执行器所有权、过载或动作时序realtime-control-design,使用基本原语时再看 freertos-patterns设计预算和实测时序
UDP/ESP-NOW 遥测、AP+STA 共存或无线电轨迹分析wireless-telemetry,然后使用 arduino-serial-monitor 进行采集/桌面集成新鲜度、协议和测量范围
运行时日志或现场症状arduino-serial-monitor、error-message-explainer、hardware-tdd硬件和系统
时序、阻塞或看门狗风险non-blocking-patterns、hardware-tdd构建和系统
内存或占用空间风险memory-budgeting、library-selection构建和运行时
校准或传感器漂移确认检测正常后使用 sensor-calibration-workbench系统
完整应用arduino-project-builder,然后是相关领域技能设计和构建
联网更新或现场部署ota-deployment-guardian 加上安全参考部署
零部件、PCB 相关或外壳工作bom-generator、enclosure-designer、readme-generator设计和维护
主机/仿真/目标测试计划待开展实体工作时使用 hardware-tdd 和 embedded-project-loop证据
多会话、实体或恢复工作先使用 embedded-project-loop,然后再使用本路由器持久化状态和用户把关

组合工作流

工具链优先级:当仓库选择 PlatformIO 或原生 SDK 时,构建接收由 embedded-build-workflow 负责。不要默认将原生 app_main、Zephyr、Pico SDK 或 Rust 项目交给 Arduino CLI。声称某个框架、目标平台或主机已验证之前,请参阅支持矩阵。对于混合构建、独立的闪存/PSRAM 设置、无线证据、OTA 和台架控制,请查阅当前的 BottleSumo lessons。

技能可以组合使用。每项决策只指定一个负责人,并将其产物传递给下一个技能。对于组合请求,默认采用以下简明顺序:

loop (if long-running) -> board selection/intake -> wiring safety -> library/memory -> project/code/timing -> toolchain build/upload -> serial and hardware tests -> system/calibration -> deployment/security/maintenance

组合工作流的默认顺序:arduino-workflow-router -> board-selection -> board-support -> pin-assignment -> wiring-safety-check -> sensor-signal-filtering -> non-blocking-patterns -> arduino-serial-monitor -> hardware-tdd。如果工作跨越多个会话或实体关卡,请从 embedded-project-loop 开始,并在后续阶段持续维护其下一步待办事项和证据台账。

如果用户已经提供准确且受支持的开发板标识,可跳过 board-selection,从 board-support 开始;在提供引脚或电气建议之前,绝不能跳过 board-support。

  • 电池供电的 Wi-Fi 传感器:开发板接收 -> 数据手册 -> 电源 -> 项目构建器 -> 代码生成器 -> 工具链 -> 串口/校准 -> OTA 安全 -> 维护 README。
  • Uno R4 WiFi 上传故障:开发板系列参考 -> IDE/CLI 发现 -> 串口与错误诊断 -> USB/电源检查 -> 引导恢复 -> 上传 证明 -> 运行时/系统证明。参阅 ../../docs/board-support/uno-r4-family.md。
  • 机器人控制器:开发板接收 -> 项目构建器 -> 电源/BOM -> 电路 和代码 -> 串口/系统测试 -> 外壳 -> 签名更新与回滚。
  • 多开发板传感器库:开发板配置 -> 数据手册/协议启动 -> 代码生成器 -> IDE/CLI/PlatformIO 分支 -> 各开发板构建证明及已记录的不支持行为。
  • 四按钮 ESP32 控制器:开发板选择 -> 引脚分配 -> 布线 安全 -> 非阻塞消抖 -> 代码生成器 -> 构建证明 -> 硬件 关卡 -> 串口/系统证据。

不要将表格中的某一行视为技能已运行的证明。请说明实际使用了哪些技能、它们产出了哪些材料,以及哪些证据阶段仍未验证。

输出规范

使用 ../../docs/arduino-skill-contract.md:说明假设、所需工具及版本、实现步骤、各证明阶段的测试/证据、已知限制,以及恢复/安全说明。

评论

支持 Markdown