Loading...
Loading...
EIDE (Embedded IDE) project build tool, used to scan .eide/eide.yml projects, enumerate build configurations (ConfigName), execute build/rebuild/clean and parse build logs, returning artifact paths that can be reused by jlink/openocd. It is automatically triggered when users mention EIDE, Embedded IDE, eide.yml, unify_builder, VS Code EIDE Extension, or Cl.eide, and also supports explicit invocation via /eide. Even if users only say "Compile with EIDE" or "Burn to board via EIDE", this skill should be triggered as long as the context involves EIDE embedded projects.
npx skill4agent add zhinkgit/embeddedskills eidejlink/openocdunify_builderconfig.jsonbuilder_dir{
"builder_dir": "C:\\Users\\<user>\\.vscode\\extensions\\cl.eide-<version>\\res\\tools\\win32\\unify_builder",
"builder_exe": "unify_builder.exe",
"code_exe": "code",
"toolchain_prefix": "arm-none-eabi-",
"operation_mode": 1
}builder_dirbuilder_exeunify_builder.execode_execodetoolchain_prefixarm-none-eabi-operation_mode123.embeddedskills/config.json{
"eide": {
"project": "",
"config": "",
"log_dir": ".embeddedskills/build"
}
}project.eide/eide.ymlconfiglog_dir.embeddedskills/build.embeddedskills/state.json| Subcommand | Purpose | Risk |
|---|---|---|
| Search for EIDE projects in the current directory (directories containing | Low |
| Enumerate build configurations in the project | Low |
| Incremental compilation | Medium |
| Full rebuild | Medium |
| Clean build artifacts | High |
| Analyze ELF file size (text/data/bss and memory usage) | Low |
config.jsonbuilder_dirscanscanbuild/rebuild/cleanoperation_modebuild/rebuildelf_filehex_fileunify_builderbuilder.paramssize# Scan projects
python <skill-dir>/scripts/eide_project.py scan --root <search directory> --json
# Enumerate build configurations
python <skill-dir>/scripts/eide_project.py configs --project <project directory> --jsonpython <skill-dir>/scripts/eide_build.py <build|rebuild|clean> \
--builder-dir <unify_builder directory> \
--project <project root directory> \
--config <configuration name> \
--log-dir <log directory> \
--jsonrebuild--clean-first# Basic analysis
python <skill-dir>/scripts/eide_size.py analyze \
--elf <elf file path> \
--toolchain-prefix arm-none-eabi- \
--json
# Comparative analysis
python <skill-dir>/scripts/eide_size.py compare \
--elf <elf file 1> \
--compare <elf file 2> \
--toolchain-prefix arm-none-eabi- \
--jsonstatusactionsummarydetailscontextartifactsmetricsstatenext_actionstiming{
"status": "ok",
"action": "build",
"summary": "build succeeded, errors=0 warnings=2",
"details": {
"project": "Vendor/EIDE",
"config": "W20_Mainboard",
"build_dir": "build/W20_Mainboard",
"elf_file": "build/W20_Mainboard/MDK-ARM_F403A.elf",
"hex_file": "build/W20_Mainboard/MDK-ARM_F403A.hex",
"log_file": ".embeddedskills/build/MDK-ARM_F403A-W20_Mainboard-build.log"
},
"artifacts": {
"elf_file": "build/W20_Mainboard/MDK-ARM_F403A.elf",
"hex_file": "build/W20_Mainboard/MDK-ARM_F403A.hex",
"flash_file": "build/W20_Mainboard/MDK-ARM_F403A.hex",
"debug_file": "build/W20_Mainboard/MDK-ARM_F403A.elf"
},
"metrics": { "errors": 0, "warnings": 2, "flash_bytes": 32768, "ram_bytes": 8192 }
}{
"status": "error",
"action": "build",
"error": { "code": "builder_not_found", "message": "unify_builder.exe does not exist, please confirm EIDE extension is installed" }
}.eide/eide.ymlflash_filedebug_filejlink/openocdclean.eide/eide.ymlD:\Keil_V543\ARM\ARMCLANGeide.ymlbuilder.paramsunify_buildercl.eideeide.ymlbuilder.paramsbuild/<ConfigName>/builder.params