Skip to content

zhinkgit/embeddedskills

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

简体中文 | English

embeddedskills — 嵌入式开发调试 Skill 集

让 AI 编码助手直接操控编译器、调试器和通信总线,补上嵌入式开发自动化的最后一环。

MIT License Status Stars


不再手动编译、不再手动烧录、不再手动调试。
AI 自主完成从写代码到验证功能的全部步骤。


如果觉得项目对你有帮助,请点一个免费的 ⭐


为什么需要它

嵌入式开发有一道纯软件开发没有的鸿沟:写完代码只是开始,编译、烧录、调试每一步都需要人在中间传递信息。

AI 改完代码 → 手动编译 → 手动烧录 → 把报错复制给 AI → AI 再改 → 再编译……

embeddedskills 把这个循环交给 AI 自己跑:

flowchart TD
    A["💬 需求沟通"] --> B["✍️ 代码生成与优化"]
    B --> C["🔨 自动编译 keil build / gcc build"]
    C -->|有错误| D["🤖 AI 读取编译错误"]
    D --> B
    C -->|通过| E["⚡ 自动烧录 openоcd flash / jlink flash / probe-rs flash"]
    E --> F["🔬 自动调试验证"]
    F -->|异常| G["🤖 AI 读取调试信息"]
    G --> B
    F -->|正常| H["✅ 提交最终代码"]

    style A fill:#4CAF50,color:#fff
    style H fill:#4CAF50,color:#fff
    style C fill:#2196F3,color:#fff
    style E fill:#2196F3,color:#fff
    style F fill:#FF9800,color:#fff
    style D fill:#f44336,color:#fff
    style G fill:#f44336,color:#fff
Loading

传统 AI 辅助 AI + embeddedskills
代码编写 ✅ AI ✅ AI
编译构建 🙋 你 🤖 AI 调用 Keil / GCC
烧录下载 🙋 你 🤖 AI 调用 J-Link / OpenOCD / probe-rs
调试验证 🙋 你 🤖 AI 断点 / 寄存器 / 内存
通信调试 🙋 你 🤖 AI 串口 / CAN / 网络
错误修正 🙋 你复制报错给 AI 🤖 AI 自主读取并修正

Skill 一览

flowchart TD
    W["🎯 workflow\n自动识别工程 · 选择工具链 · 串联全流程"]

    W --> B["🔨 构建层"]
    W --> C["🔌 通信层"]
    B --> D["🔬 调试层"]

    B --- keil["keil"]
    B --- gcc["gcc"]

    C --- serial["serial"]
    C --- can["can"]
    C --- net["net"]

    D --- jlink["jlink"]
    D --- openocd["openocd"]
    D --- probe_rs["probe-rs"]

    style W fill:#4CAF50,color:#fff,rx:8
    style B fill:#2196F3,color:#fff,rx:8
    style C fill:#2196F3,color:#fff,rx:8
    style D fill:#FF9800,color:#fff,rx:8
Loading

分类 Skill 能做什么 主要子命令
🔨 构建 keil Keil MDK 工程扫描、Target 枚举、编译、重建、清理 scan targets build rebuild clean flash
🔨 构建 gcc CMake 型 GCC 工程配置、编译、大小分析 scan presets configure build rebuild size
🔬 调试 jlink 烧录、读写内存/寄存器、RTT/SWO、GDB 调试 flash read-mem write-mem regs rtt swo + GDB
🔬 调试 openocd 烧录、擦除、GDB/Telnet、Semihosting/ITM flash erase reset gdb-server semihosting itm
🔬 调试 probe-rs 探针发现、烧录、复位、内存读写、GDB 调试、RTT list info flash erase reset read-mem write-mem gdb rtt
🔌 通信 serial 扫描串口、实时监控、发送数据、Hex 查看 scan monitor send hex log
🔌 通信 can CAN/CAN-FD 监控、发帧、DBC 解码、统计 scan monitor send decode stats
🔌 通信 net 抓包分析、连通性测试、端口扫描、流量统计 capture analyze ping scan stats
🎯 编排 workflow 自动识别工程 → 选择工具链 → 串联全流程 plan build build-flash build-debug observe diagnose

Tip

Keil / GCCJ-Link / OpenOCD / probe-rs 可自由正交组合,六种搭配均可开箱即用。


安装

方法一:npx(推荐)

# 一键安装全部 skill
npx skills add https://github.com/zhinkgit/embeddedskills -g -y

# 只安装需要的 skill
npx skills add https://github.com/zhinkgit/embeddedskills --skill jlink -g -y

# 管理
npx skills ls -g        # 查看已安装
npx skills update -g    # 更新
npx skills remove -g    # 移除

方法二:直接 clone

# Claude Code(全局)
git clone https://github.com/zhinkgit/embeddedskills ~/.claude/skills/embeddedskills

# 仅当前项目
git clone https://github.com/zhinkgit/embeddedskills .claude/skills/embeddedskills

Note

→ 完整安装与使用手册,包含截图演示和配置说明。


工作原理

三个关键设计让 AI 能真正自主闭环:

① 封装命令行工具

每个 Skill 是一组 Python 脚本,将底层工具(UV4.exe、cmake、JLink.exe、openocd、probe-rs、tshark 等)的命令行参数和交互流程转化为结构化子命令,AI 可以像调用函数一样调用这些工具。

② 通过 SKILL.md 暴露给 AI

每个 Skill 目录下的 SKILL.md 以自然语言描述能力、子命令和使用场景。AI 读取后即可正确调用,无需额外训练或配置,任何支持 Skill 协议的 AI 工具开箱即用。

③ 统一 JSON 输出,驱动下一步决策

所有脚本返回统一结构的 JSON,AI 直接解析状态、摘要和建议,自主决定下一步操作:

{
  "status": "ok | error",
  "action": "build",
  "summary": "编译成功,0 errors,2 warnings",
  "details": { "warnings": ["unused variable 'x' at main.c:42"] },
  "artifacts": { "hex": ".embeddedskills/build/output.hex" },
  "next_actions": ["flash to device"]
}

三层配置,按需覆盖,优先级从高到低:

CLI 参数  ──►  skill/config.json(工具路径、硬件参数)
          ──►  .embeddedskills/config.json(目标芯片、接口、日志目录)
          ──►  .embeddedskills/state.json(最近一次构建/烧录/调试记录)
          ──►  默认值

统一日志目录:

workspace/
└── .embeddedskills/
    ├── build/          ← 编译日志与 hex/bin 产物
    └── logs/
        ├── serial/     ← 串口监控日志
        ├── can/        ← CAN 报文日志
        └── net/        ← 网络抓包文件

外部依赖

展开查看各 Skill 所需依赖
Skill 依赖
keil Keil MDK (UV4.exe)
gcc CMake · Ninja/Make · ARM GNU Toolchain
jlink SEGGER J-Link Software · arm-none-eabi-gdb
openocd OpenOCD · 调试器驱动 (ST-Link / CMSIS-DAP / DAPLink / FTDI)
probe-rs probe-rs CLI · arm-none-eabi-gdb
serial pyserial · USB 转串口驱动
can python-can · cantools · pyserial · USB-CAN 驱动
net Wireshark (tshark) · Npcap

除 CAN 和串口外,所有 Skill 均基于 Python 标准库实现,无需额外安装 Python 依赖。

[!WARNING] Windows 下若要让 probe-rs 驱动 J-Link,通常需要把驱动切到 WinUSB,这会影响 SEGGER 官方工具继续使用。若你仍依赖 J-Link 官方工具链,优先继续使用现有 jlink skill。


完成进度

Skill 状态
keil ✅ 已完成测试
gcc ✅ 已完成测试
jlink ✅ 已完成测试
openocd ✅ 已完成测试
probe-rs 🔧 待测试
serial ✅ 已完成测试
net ✅ 已完成测试
workflow ✅ 已完成测试
can 🔧 待测试

Star History

Star History Chart

欢迎提 Issue 和 PR。感谢 Linux.do 社区支持。

About

An open-source collection of embedded development and debugging skills for Claude Code, Copilot, TRAE, and other AI coding assistants that support the Skill protocol. Once installed, the AI assistant can directly operate compilers, debuggers, and communication buses, automating the full workflow from code generation to hardware verification.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages