This is a CMake-based ARM embedded toolchain wrapper that scans your workspace for projects, lists CMake presets, and runs configure/build/rebuild/clean operations with arm-none-eabi-gcc. It automatically parses build logs for errors and warnings, runs size analysis on your ELF files to show flash and RAM usage, and can compare builds. The skill maintains state in .embeddedskills/config.json so it remembers your last project and preset, but it won't guess when there's ambiguity. It only works with CMake projects, not raw Makefiles. Useful if you're jumping between embedded projects and want Claude to handle the build plumbing without you typing out cmake commands with the right presets and paths every time.

skills.sh installs
696
GitHub stars
791
last updated
Aug 21, 2026

Install

$ npx -y skills add zhinkgit/embeddedskills --skill gcc --agent claude-code

Installs into .claude/skills of the current project.

Files

GCC 嵌入式工程构建

本 skill 提供基于 CMake + arm-none-eabi-gcc 的嵌入式工程发现、preset 枚举、配置生成、增量编译、全量重建、清理和 ELF 大小分析能力。

范围说明:当前仅支持 CMake 型 GCC 嵌入式工程,不覆盖纯 Makefile 工程。

配置

环境级配置(skill/config.json)

skill 目录下的 config.json 包含环境级配置,首次使用前确认 cmake_exe 路径正确:

{
  "cmake_exe": "cmake",
  "toolchain_prefix": "arm-none-eabi-",
  "toolchain_path": "",
  "operation_mode": 1
}
  • cmake_exe:cmake 可执行文件路径,默认从 PATH 查找
  • toolchain_prefix:工具链前缀,默认 arm-none-eabi-,用于定位 size 等工具
  • toolchain_path:工具链 bin 目录,为空时从 PATH 查找
  • operation_mode:1 直接执行 / 2 输出风险摘要但不阻塞 / 3 执行前确认

工程级配置(workspace/.embeddedskills/config.json)

工程级共享配置统一保存在工作区的 .embeddedskills/config.json 中:

{
  "gcc": {
    "project": "",
    "preset": "",
    "log_dir": ".embeddedskills/build"
  }
}
  • project:默认工程路径(相对 workspace),构建成功后会自动更新
  • preset:默认 CMake preset 名称,构建成功后会自动更新
  • log_dir:构建日志输出目录,默认 .embeddedskills/build

参数解析优先级

参数解析顺序(从高到低):

  1. CLI 显式参数
  2. 环境级配置(skill/config.json)
  3. 工程级配置(.embeddedskills/config.json)
  4. state.json(上次构建记录)
  5. 搜索/询问

冲突解决规则:同一参数存在多个来源时,以序号最小的来源为准;高序号来源仅在低序号来源未提供该参数时生效。例如:CLI 已指定 --preset Debug,则忽略 state.json 中记录的上次 preset。

子命令

Sponsors

Details

Repository
github.com/zhinkgit/embeddedskills
Category
DevOps & CI/CD
First seen
Jun 3, 2026

More from zhinkgit/embeddedskills

All 9
1aj-geddes avatare2e-testing-automationaj-geddes/useful-ai-promptsBuild end-to-end automated tests that simulate real user interactions across the full application stack. Use for E2E test, Selenium, Cypress, Playwright, browse695skills.sh installs
2joellewis avatarfixed-income-municipaljoellewis/finance_skillsAnalyze municipal bonds including tax-equivalent yield calculations, GO vs revenue bond evaluation, and muni credit analysis. Use when the user asks about munic693skills.sh installs
3aaronontheweb avatardotnet-project-structureaaronontheweb/dotnet-skillsModern .NET project structure including .slnx solution format, Directory.Build.props, central package management, SourceLink, version management with RELEASE_NO692skills.sh installs
4joellewis avatarpost-trade-compliancejoellewis/finance_skillsGuide post-trade compliance monitoring and trade surveillance system design. Use when building alert logic to detect churning, front-running, cherry-picking, la691skills.sh installs
5cap-go avatarionic-appflow-migrationcap-go/capgo-skillsGuides the agent through migrating an existing Ionic or Capacitor project away from Ionic Appflow. Use when detecting Appflow live updates, cloud builds, or sto690skills.sh installs
6zhinkgit avatarworkflowzhinkgit/embeddedskillsembeddedskills 的薄编排层,用于在当前 workspace 中发现工程、选择 build/flash/debug/observe 后端、串联 .embeddedskills/state.json,并聚合底层 skill 的结果。 当用户明确输入以下命令之一:"一键构建烧录"、"自动诊断"、"串起 buil689skills.sh installs