Agent skill

Gcc

by zhinkgit in zhinkgit/embeddedskills

GCC 嵌入式工程构建工具(CMake + arm-none-eabi-gcc),用于扫描 CMake 型嵌入式工程、 列出预设、配置、编译、重建、清理和分析 ELF 大小。当用户提到 GCC、arm-none-eabi、 CMake 嵌入式编译、Ninja 构建、ELF 大小分析、arm-gcc、交叉编译、cmake --build、 cmake --preset 时自动触发,也兼容…

MITAuto-check passed

Install Gcc

skills CLI
$ npx skills add zhinkgit/embeddedskills --skill gcc -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install zhinkgit/embeddedskills gcc --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/zhinkgit/embeddedskills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/gcc .claude/skills/gcc && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
gcc
GitHub stars
733
Token cost
~993 tokens
SKILL.md length
208 words
Files
7 (incl. scripts)
Skills in repo
11
Repo updated
First seen
Licence
MIT

At a glance

GCC 嵌入式工程构建工具(CMake + arm-none-eabi-gcc),用于扫描 CMake 型嵌入式工程、 列出预设、配置、编译、重建、清理和分析 ELF 大小。当用户提到 GCC、arm-none-eabi、 CMake 嵌入式编译、Ninja 构建、ELF 大小分析、arm-gcc、交叉编译、cmake --build、 cmake --preset 时自动触发,也兼容…

  • Works in 5 steps: CLI 显式参数 → 环境级配置(skill/config.json) → 工程级配置(.embeddedskills/config.json) → …
  • SKILL.md covers 配置, 子命令, 执行流程 and 脚本调用, plus 2 more sections
  • Runs Python scripts from its folder; calls python and cmake

What it does

Gcc is an agent skill from zhinkgit/embeddedskills. GCC 嵌入式工程构建工具(CMake + arm-none-eabi-gcc),用于扫描 CMake 型嵌入式工程、 列出预设、配置、编译、重建、清理和分析 ELF 大小。当用户提到 GCC、arm-none-eabi、 CMake 嵌入式编译、Ninja 构建、ELF 大小分析、arm-gcc、交叉编译、cmake --build、 cmake --preset 时自动触发,也兼容 /gcc 显式调用。即使用户只是说"编译一下"或 "看看固件多大",只要上下文涉及 CMake 嵌入式 GCC 工程就应触发此 skill。

Its SKILL.md is about 990 tokens, which your agent loads only when the skill is triggered. The skill folder holds 7 other files, including scripts (for example `README.md`, `config.example.json` and `scripts/gcc_build.py`).

It works with C++. The repository describes itself as: 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… The licence is MIT.

Example prompts

  • “看看固件多大”
  • “/gcc”

Requirements

  • Python 3

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

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

What it can do on your machine

Read from SKILL.md and the folder at commit 536c1f9. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 4 files in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • python
    • cmake

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Gcc loads about 993 tokens when it runs. Until then it costs about 67 tokens; SKILL.md has 208 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~67
When it runs · the whole SKILL.md, loaded when a task matches
~993

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from zhinkgit/embeddedskills at commit 536c1f9, republished under its MIT licence (© zhinkgit). 208 words, ~993 tokens.

Download SKILL.mdSave it as .claude/skills/gcc/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.
name
gcc
description
GCC 嵌入式工程构建工具(CMake + arm-none-eabi-gcc),用于扫描 CMake 型嵌入式工程、 列出预设、配置、编译、重建、清理和分析 ELF 大小。当用户提到 GCC、arm-none-eabi、 CMake 嵌入式编译、Ninja 构建、ELF 大小分析、arm-gcc、交叉编译、cmake --build、 cmake --preset 时自动触发,也兼容 /gcc 显式调用。即使用户只是说"编译一下"或 "看看固件多大",只要上下文涉及 CMake 嵌入式 GCC 工程就应触发此 skill。
argument-hint
[scan|presets|configure|build|rebuild|clean|size] ...

GCC 嵌入式工程构建

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

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

配置

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

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

json
{
  "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 中:

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。

子命令

子命令用途风险
scan搜索当前目录下的 CMake 嵌入式工程低
presets列出 CMakePresets.json 中的 configure/build preset低
configure执行 cmake --preset 生成构建系统中
build增量编译 cmake --build中
rebuild清理后全量重建中
clean清理构建目录高
size分析 ELF 文件大小(text/data/bss 和内存使用)低

执行流程

  1. 读取 config.json,确认 cmake_exe 路径有效
  2. 未提供有效子命令时默认执行 scan
  3. 未提供工程路径时先执行 scan 搜索工程
  4. 发现多个工程或多个 preset 时列出选项让用户选择,绝不自动猜测
  5. configure/build/rebuild/clean 按 operation_mode 决定是否需要确认
  6. build 前自动检测是否已 configure,未配置时提示先执行 configure
  7. build/rebuild 成功后返回 elf_file,供 jlink/openocd 继续使用
  8. size 默认分析最近一次构建产物的 .elf 文件

脚本调用

skill 目录下有三个 Python 脚本,使用标准库实现,无额外依赖。

gcc_project.py — 工程扫描与 preset 枚举
bash
# 扫描工程
python <skill-dir>/scripts/gcc_project.py scan --root <搜索目录> --json

# 列出 preset
python <skill-dir>/scripts/gcc_project.py presets --project <工程目录> --json
gcc_build.py — 配置 / 编译 / 重建 / 清理
bash
python <skill-dir>/scripts/gcc_build.py <configure|build|rebuild|clean> \
  --cmake <cmake路径> \
  --project <工程根目录> \
  --preset <preset名称> \
  --log-dir <日志目录> \
  --json
gcc_size.py — ELF 大小分析
bash
# 基本分析
python <skill-dir>/scripts/gcc_size.py analyze \
  --elf <elf文件路径> \
  --toolchain-prefix arm-none-eabi- \
  --linker-script <链接脚本路径> \
  --json

# 对比分析
python <skill-dir>/scripts/gcc_size.py compare \
  --elf <elf文件1> \
  --compare <elf文件2> \
  --toolchain-prefix arm-none-eabi- \
  --json

输出格式

所有脚本以 JSON 格式返回,基础字段为 status(ok/error)、action、summary、details,并可能附带 context、artifacts、metrics、state、next_actions、timing。

成功示例:

json
{
  "status": "ok",
  "action": "build",
  "summary": "build 成功,errors=0 warnings=2",
  "details": { "project": "...", "preset": "Debug", "build_dir": "...", "elf_file": "...", "log_file": "..." },
  "metrics": { "errors": 0, "warnings": 2, "flash_bytes": 99328, "ram_bytes": 46080 }
}

错误示例:

json
{
  "status": "error",
  "action": "build",
  "error": { "code": "not_configured", "message": "构建目录不存在,请先执行 configure" }
}

核心规则

  • 不修改 CMakeLists.txt 或任何 CMake 配置文件
  • 当前 skill 仅覆盖 CMake 型 GCC 工程,不对纯 Makefile 工程做识别和构建
  • 不自动猜测工程路径或 preset,有歧义时必须询问用户
  • 参数解析优先级为:CLI 显式参数 > 环境级配置 > 工程级配置 > .embeddedskills/state.json > 搜索/询问
  • clean 不在自动流程中隐式执行
  • 构建失败时优先展示首个错误和日志文件路径
  • 结果回显中始终包含工程名、preset 名、构建目录路径;构建成功时优先回显 elf_file

© zhinkgit, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 6 other files (scripts) in gcc of zhinkgit/embeddedskills.

  • SKILL.md
  • README.md
  • config.example.json
  • scripts/gcc_build.py
  • scripts/gcc_project.py
  • scripts/gcc_runtime.py
  • scripts/gcc_size.py

Open the folder on GitHubat commit 536c1f9

Compare with similar skills

Gcc next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Gcc compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Gcc this skillzhinkgit/embeddedskills733—~993Automated safety check: PassMIT
Paddle BuildPaddlePaddle/Paddle24k—~1kAutomated safety check: PassApache-2.0
Fory Releaseapache/fory4.6k—~2.9kAutomated safety check: PassApache-2.0
ONNX Runtime Shape Inference Safety Auditmicrosoft/onnxruntime22k—~3.3kAutomated safety check: PassMIT
Code Audit3stoneBrother/code-audit8931 repos~2.7kAutomated safety check: PassNone
Qt C++ Code Reviewx-tools-author/x-tools1.1k2 repos~4.3kAutomated safety check: PassBSD-3-Clause

Similar skills

  • Paddle Build

    PaddlePaddle/Paddle

    A skill your agent uses when needing to compile, rebuild, or install Paddle from source after code changes.

    24k GitHub stars~1k tokensUpdated 8 days ago
    AI & LLM EngineeringAuto-check passed
  • Fory Release

    apache/fory

    Prepare an Apache Fory release candidate from a clean release branch, including the version bump, RC tag, JVM staging, ASF source artifacts, SVN upload, and vote email.

    4.6k GitHub stars~2.9k tokensUpdated yesterday
    Auto-check passed
  • Official

    Finds and fixes out-of-range output writes in ONNX Runtime operator shape-inference functions where a getNumOutputs guard admits too few outputs.

    22k GitHub stars~3.3k tokensUpdated today
    SecurityAuto-check passed
  • Code Audit

    3stoneBrother/code-audit

    Professional code security audit skill covering 55+ vulnerability types.

    893 GitHub starsUsed in 1 repo~2.7k tokens
    SecurityAuto-check passed
  • Qt C++ Code Review

    x-tools-author/x-tools

    Read-only review of Qt6 C++ code that combines a deterministic lint script with six parallel analysis agents and reports only high-confidence issues.

    1.1k GitHub starsUsed in 2 repos~4.3k tokens
    DevelopmentAuto-check passed
  • Translation

    doxygen/doxygen

    Keeps all Doxygen and Doxywizard translations up to date across three mechanisms: translator C++ classes (src/translatorxx.h), Qt .ts locale files for the Doxywizard GUI (addon/doxywizard/i18n/)…

    6.6k GitHub stars~5.2k tokensUpdated 7 days ago
    Writing & ContentAuto-check passed

More from zhinkgit/embeddedskills

All 11 skills in this repo
  • Can

    zhinkgit/embeddedskills

    嵌入式 CAN / CAN-FD 调试工具,用于扫描接口、监控报文、发送测试帧、记录日志、数据库文件解码和总线统计. An agent skill from zhinkgit/embeddedskills.

    733 GitHub stars~1k tokensUpdated 1 mo ago
    Auto-check passed
  • Eide

    zhinkgit/embeddedskills

    EIDE (Embedded IDE) 工程构建工具,用于扫描 .eide/eide.yml 工程、枚举构建 配置 (ConfigName)、执行 build/rebuild/clean 并解析构建日志,返回可供 jlink/openocd 复用的产物路径。当用户提到 EIDE、Embedded IDE、eide.yml、 unifybuilder、VS Code EIDE…

    733 GitHub stars~1.2k tokensUpdated 1 mo ago
    Auto-check passed
  • Jlink

    zhinkgit/embeddedskills

    J-Link 下载与在线调试工具,用于探测设备、烧录固件、读写内存、查看寄存器、复位目标、读取 RTT/SWO 日志, 以及在线调试(暂停/恢复/单步/断点运行/调用栈/变量查看)。

    733 GitHub stars~2k tokensUpdated 1 mo ago
    Auto-check passed
  • Keil

    zhinkgit/embeddedskills

    Keil MDK 工程构建工具,用于扫描 .uvprojx/.uvproj/.uvmpw 工程、枚举 Target、执行 build/rebuild/clean 并解析构建日志,返回可供 jlink/openocd 复用的产物路径。

    733 GitHub stars~883 tokensUpdated 1 mo ago
    Auto-check passed
  • Openocd

    zhinkgit/embeddedskills

    OpenOCD 下载与调试工具,用于探针探测、固件烧录、Flash 擦除、GDB Server 启动、目标复位控制、 Telnet 在线调试(halt/resume/step/寄存器/内存/断点)、GDB 源码级调试,以及 Semihosting/ITM 输出捕获和底层查询。

    733 GitHub stars~2.7k tokensUpdated 1 mo ago
    Auto-check passed
  • Serial

    zhinkgit/embeddedskills

    嵌入式串口调试工具,用于扫描串口、实时监控、发送数据、记录日志和 Hex 查看. An agent skill from zhinkgit/embeddedskills.

    733 GitHub stars~1.4k tokensUpdated 1 mo ago
    Auto-check passed

Works with

Questions about Gcc

What does Gcc do?

GCC 嵌入式工程构建工具(CMake + arm-none-eabi-gcc),用于扫描 CMake 型嵌入式工程、 列出预设、配置、编译、重建、清理和分析 ELF 大小。当用户提到 GCC、arm-none-eabi、 CMake 嵌入式编译、Ninja 构建、ELF 大小分析、arm-gcc、交叉编译、cmake --build、 cmake --preset 时自动触发,也兼容…. Gcc is an agent skill from zhinkgit/embeddedskills.

How do I install Gcc in Claude Code?

Run `npx skills add zhinkgit/embeddedskills --skill gcc -a claude-code`. Or copy the skill folder (gcc in zhinkgit/embeddedskills) into .claude/skills/gcc in your project. Claude Code loads it when a task matches its description.

How do I install Gcc in Codex?

Run `npx skills add zhinkgit/embeddedskills --skill gcc -a codex`. Or copy the skill folder (gcc in zhinkgit/embeddedskills) into .agents/skills/gcc in your project. Codex loads it when a task matches its description.

Can I use Gcc in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add zhinkgit/embeddedskills --skill gcc -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/gcc, .gemini/skills/gcc, .github/skills/gcc and .opencode/skills/gcc in your project.

What does Gcc need to run?

Going by SKILL.md and its folder, Gcc needs Python for the scripts in its folder and the command-line tools its instructions call (python and cmake). Our summary lists: Python 3.

Does Gcc access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Gcc safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Gcc use?

Gcc is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Gcc use?

About 993 tokens (SKILL.md is roughly 4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Gcc?

Skills that share tags, products or a category with Gcc: Paddle Build (PaddlePaddle/Paddle, 24k stars), Fory Release (apache/fory, 4.6k stars), ONNX Runtime Shape Inference Safety Audit (microsoft/onnxruntime, 22k stars) and Code Audit (3stoneBrother/code-audit, 893 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Gcc?

zhinkgit (a GitHub user) maintains it in zhinkgit/embeddedskills, which has 733 GitHub stars. The repository holds 11 skills in this directory. The repository was last updated on September 3, 2026.

Source: zhinkgit/embeddedskills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.