Agent skill · Audited from source

build-cmake

skill · leokemp223/embed-ai-toolLicence not declaredAudited 20 Oct 2026 · source f2eee4d05246

★ 1,022pushed 61 days ago
✓SAFEGrade B · 89/100 · 20 Oct 2026 · f2eee4d
1,022repo stars · whole leokemp223/embed-ai-tool

Is it safe? Yes — SAFE, grade B (89/100). We read this skill's source at commit f2eee4d05246 and observed filesystem access and no hard-coded secrets. What it does: 当需要配置或构建基于 CMake 的嵌入式固件工程,调用自带脚本执行构建并定位固件产物时使用。

Ask an AI about this pageGChatGPTCClaudePPerplexityGeGeminiXGrok
More
Cite

Cite this page

ModelsAtlas. “build-cmake (leokemp223/embed-ai-tool)”. Retrieved 20 Oct 2026. https://modelsatlas.com/skills/leokemp223/build-cmake

Trust audit

Audit 0.4.1 · source read 20 Oct 2026

Trust score89/100✓SAFE B
0 critical0 high1 medium1 low0 info

SAFE means nothing in the source contradicts what the skill says it does. Grade B is shared by 13,985 of 14,816 audited skills.

What the source does

  • FilesystemUndeclared1 observation, not in its own description
  • NetworkNone observedNo outbound calls in the source
  • ShellNone observedNo commands run in the source
  • DependenciesPinnedNothing floats
  • SecretsNone foundNo keys in source

Five audit layers

LayerWhat we checkResultFindings
L0 ProvenanceRepo owner, licence, archive status, activityPASS1
L1 Static sourceSecrets, path traversal, supply chain, hidden codeWARN1
L2 InstructionsPrompt injection, authority framing, hidden directivesPASS0
L3 InventoryThe files and declarations match the sourcePASS0
L4 SandboxRun in isolation and watch behaviourSKIPPED why0

Gates applied: no behavioural pass, no license.

Findings (2)

MEDIUMFilesystem / pathfs.destructive · scripts/cmake_builder.py:384
F-05 Filesystem / pathCWE-22 · CWE-59Layer L1
shutil.rmtree(build_dir, ignore_errors=True)
Why
No further detail recorded for this rule.
Fix
—
LOWInventory / provenanceinv.no_license
F-13 Inventory / provenanceCWE-1104Layer L0
Why
no LICENSE file and no repo licence
Fix
add a licence

Audit 0.4.1 · source sha f2eee4d05246 · 20 Oct 2026Report an issue or request a re-scan

Provenance

Who published it, and what the verdict is pinned to

  • Publisherleokemp223 GitHub userOwner of the repository this skill is read from
  • Source folderleokemp223/embed-ai-tool/skills/build-cmakeThe exact folder we audited
  • LicenceNot declaredAs the repository states it
  • Commit pinned for this verdictf2eee4d05246A new audit runs when the source changes
  • Repository statusNot archivedLast push 61 days ago
  • Sandboxed runNot runSkills are read, not executed; layer L4 is skipped

What it tells the agent

Full source on GitHub ↗

Its description: 当需要配置或构建基于 CMake 的嵌入式固件工程,调用自带脚本执行构建并定位固件产物时使用。

---
name: build-cmake
description: 当需要配置或构建基于 CMake 的嵌入式固件工程,调用自带脚本执行构建并定位固件产物时使用。
---

# 构建 CMake 工程

## 适用场景

- `Project Profile` 中标明 `build_system: cmake`。
- 用户希望对 CMake MCU 工程执行配置、重编译或确认固件产物。
- 烧录或调试流程需要新的 `ELF`、`HEX` 或 `BIN`。
- 需要在构建前确认环境是否就绪(cmake、生成器、工具链)。

## 必要输入

- 工作区路径,或一份已有的 `Project Profile`。
- 可选的构建预设、构建目录、目标名、生成器、构建类型和工具链文件。

## 自动探测

- 若存在 `CMakePresets.json`,优先使用脚本的 `--list-presets` 列出并选择预设。
- 否则检查 `CMakeLists.txt`、已有构建目录和工具链文件。
- 若已有成功的构建目录且与当前意图一致,优先复用。
- 脚本启动即自动读取 `.em_skill.json` 中的 `skill_profiles.build-cmake`,把上次成功构建参数作为默认值复用(显式参数优先,无需先手动传 `--resume`);`--resume` 仅用于断言缓存必须存在,无缓存则非零退出。无缓存或用户要求重新探测时,脚本自动回退到 `--detect`、`--list-presets` 或手动参数探索。
- 生成器由脚本自动探测,优先 `Ninja`,其次是宿主机上已安装的 Make 工具。
- 对调试导向请求默认使用 `Debug`,否则默认使用 `RelWithDebInfo`。

## 执行步骤

1. 先阅读 [references/usage.md](references/usage.md),确认本次是执行构建、环境探测、列出预设,还是仅扫描产物。
2. 直接运行目标动作即可——脚本启动时会自动复用工程根目录 `.em_skill.json` 中上次成功构建的源码目录、构建目录、预设、目标和产物信息(显式参数优先)。仅当需要断言缓存必须存在时才加 `--resume --profile default`。
3. 若无缓存或用户要求重新探测,脚本自动回退到 `--detect`、`--list-presets` 或手动参数探索。
4. 若存在 CMakePresets.json,使用 `--list-presets` 列出预设,再用 `--preset <name>` 构建。
5. 若无预设,使用 `--source`、`--build-dir`、`--generator`、`--build-type`、`--toolchain` 手动配置构建。
6. 读取脚本输出的构建结果和产物扫描报告,重点关注首选产物(ELF > HEX > BIN)和失败分类。
7. 成功构建后脚本会自动更新工程根目录 `.em_skill.json` 的 `skill_profiles.build-cmake.default`;将构建目录、产物路径、产物类型和生成器信息同步到 `Project Profile`,并在需要时交给下游 skill。

## 失败分流

- 当缺少 `cmake` 或所需生成器时,返回 `environment-missing`。
- 当配置或构建因预设损坏、缺失工具链文件或目标名无效而失败时,返回 `project-config-error`。
- 当构建看似成功但未找到可烧录或可调试产物时,返回 `artifact-missing`。
- 当存在多个同样合理的预设或固件目标,且任意选择都不安全时,返回 `ambiguous-context`。

## 平台说明

- 在 Windows 上,除非工作区明确要求特定 Visual Studio shell,否则优先 `Ninja`,避免依赖特定开发者命令环境。
- 自带脚本使用 Python 标准库和 subprocess 调用 cmake,因此构建调度路径本身是跨平台的。
- 输出中的构建目录应保持为绝对路径,方便下游烧录和调试 skill 直接复用。

## 输出约定

- 输出配置命令、构建命令、构建目录、所选生成器和首选产物路径。
- 成功构建后持久化 `source`、`build_dir`、`preset`、`generator`、`build_type`、`toolchain`、`target` 和首选产物到工程根目录 `.em_skill.json`。
- 用 `artifact_path`、`artifact_kind` 和探测到的工具链细节更新 `Project Profile`。
- 成功后推荐 `flash-openocd` 或 `debug-gdb-openocd`。

## 交接关系

- 当下一步意图是给硬件烧录程序时,将成功构建结果交给 `flash-openocd`。
- 当下一步需要符号信息或调试会话时,将成功构建结果交给 `debug-gdb-openocd`。

Excerpt, first 2,181 characters of SKILL.md, verbatim from the audited commit. It is text from someone else’s repository, quoted so you can judge it before your agent reads it.

Install

Pinned to the audited commit f2eee4d

Download folder ↗
git clone https://github.com/leokemp223/embed-ai-tool
git -C embed-ai-tool checkout f2eee4d05246

The author documents no install command, so this uses the repository directly. Our verdict covers commit f2eee4d05246 only.

Works in

The author has not said which agents this skill supports, and we have not tested it in any.

Audit history

Every audit, every source change

  1. ✓SAFE B 89 / 100

    first audit · source f2eee4d05246

README badge

For maintainers · shows the latest audit

ModelsAtlas: SAFE BMODELSATLASSAFE · B
[![ModelsAtlas: SAFE B](https://modelsatlas.com/skills/leokemp223/build-cmake/badge.svg)](https://modelsatlas.com/skills/leokemp223/build-cmake/)

The badge shows our verdict and grade for this skill, and links back to this page. It changes when the audit does.

Add this badge to your README

[![ModelsAtlas: SAFE B](https://modelsatlas.com/skills/leokemp223/build-cmake/badge.svg)](https://modelsatlas.com/skills/leokemp223/build-cmake/)

Questions about build-cmake

What does the build-cmake skill do?
面向 AI 编程助手的嵌入式开发技能集,为大模型提供 MCU 固件开发全流程能力。涵盖多工具链构建(Keil / IAR / CMake / PlatformIO)、烧录、GDB 调试、串口监视、Modbus / CAN / VISA 协议调试、外设驱动适配及流水线编排,支持 Linux、macOS、Windows 三平台。
Is build-cmake safe to install?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.
What can build-cmake access on my machine?
The audit observed that it reads or writes files. At least one of those is not mentioned in its own description, which is itself a finding. Secrets in the source: none found.
How current is this page?
The grade is for one exact copy of the source (f2eee4d05246), read on 2026-10-20. The repository is watched, and a new audit runs when it changes — this is the first audit.

Sources

Spotted something wrong? Report a correction · Methodology

Keep going in your AI

Opens with this page as the source. We add nothing else to the prompt.