From embedded-dev — RIPER-5 嵌入式固件开发协议
Compiles embedded Keil MDK projects via command line. Parses .uvprojx files, selects targets, runs UV4.exe build, and locates AXF/HEX/BIN firmware artifacts.
How this skill is triggered — by the user, by Claude, or both
Slash command
/embedded-dev:build-keilThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
- `Project Profile` 中标明 `build_system: keil` 或工作区中存在 `.uvprojx` / `.uvproj` 文件。
Project Profile 中标明 build_system: keil 或工作区中存在 .uvprojx / .uvproj 文件。AXF(ELF)、HEX 或 BIN。.uvprojx / .uvproj 工程文件路径,或一份已有的 Project Profile。KEIL_ROOT、MDK_ROOT)定位 UV4.exe。.uvprojx 工程文件中的 Target 列表,提取芯片型号、输出目录、工具链(ARMCC/ARMCLANG)。ELF > HEX > BIN 排序。python scripts/keil_builder.py --detect --project <工程文件> --target <目标名>
这样只启动一次 Python 进程,避免 --detect → --list-targets → --build 三次串行调用的开销。--scan、--list-targets。Project Profile,并在需要时交给下游 skill。environment-missing。project-config-error。artifact-missing。ambiguous-context。--list-targets)、工程扫描(--scan)和产物扫描(--scan-artifacts),但实际编译会被阻塞。脚本执行完成后,必须将以下关键信息提取并呈现给用户:
示例输出格式:
编译成功 ✅
工程: Demo02.uvprojx → 目标: Demo02
芯片: STM32F103RC | 工具链: ARMCC
固件大小: Flash ≈ 3.2 KB RAM ≈ 1.6 KB
产物: Demo02.axf (518.9 KB), Demo02.hex (9.0 KB)
编译耗时: 00:00:05
artifact_path、artifact_kind、target_mcu 和 toolchain 更新 Project Profile。flash-keil、flash-openocd 或 debug-gdb-openocd。flash-keil(使用 Keil 内置调试器)或 flash-openocd(使用 OpenOCD)。debug-gdb-openocd。npx claudepluginhub duncanyoung-1/embedded-dev --plugin embedded-devFlashes firmware to target boards using Keil MDK's built-in debugger (ST-Link, J-Link, CMSIS-DAP) and project-configured flash algorithms. Automatically detects debugger type and performs Flash Download.
Guides embedded hardware debugging for probe-rs targets (ARM Cortex-M, RISC-V) via CLI or MCP server. Supports flash, RTT, fault diagnosis, and OpenOCD backend for chips like ESP32.
Firmware reconnaissance for takeover — inventory the MCU, peripherals, RTOS, protocols, OTA, power management, and assess code quality with risk flags. Use when asked to "understand this firmware", "device inventory", or "embedded assessment".