agentsclimarketplace

Embedded library entry

Skill easyzoom/aix-skills/skills/embedded-library-entry

Reusable Agent Skills for embedded systems, MCU debugging, firmware workflows, and AI automation. (嵌入式、MCU 调试、固件流程与 AI 自动化的可复用 Agent Skills 集合)。

Install
npx -y skills add easyzoom/aix-skills --skill embedded-library-entry

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 22 stars22 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Use when integrating, porting, configuring, or debugging third-party MCU embedded C libraries in bare-metal or RTOS projects

SKILL.md

7.2 KB, as published. Nobody here has run it

Embedded Library Entry

Overview

Use this skill as the entry point for MCU library integration work. Classify the library type, target platform, runtime model, resource limits, and required porting layer before routing to a specific library skill.

When To Use

Use this skill when:

  • The user wants to add, port, configure, or debug an embedded C library.
  • The task involves MCU storage, logging, crash diagnosis, shell commands, filesystems, protocol stacks, UI, parsers, buttons, timers, queues, or state machines.
  • The target may be bare metal, RTOS-based, or resource-constrained.

Do not use this skill when the problem is only board bring-up, flashing, serial logs, or architecture faults. Use the embedded debug skills first.

First Questions

Ask only what is needed to route:

  • Library name and version or source repository.
  • Target MCU/SoC, compiler, and build system.
  • Runtime model: bare metal, FreeRTOS, RT-Thread, Zephyr, Linux, or unknown.
  • Memory/storage resources: RAM, flash, block device, filesystem, heap, stack, and whether dynamic allocation is allowed.
  • Existing porting layer: file I/O, flash driver, UART, timebase, mutex, malloc, display, network, or shell transport.
  • Current task: first integration, compile error, link error, runtime failure, performance issue, or data corruption.

Routing Guide

Storage & Filesystem

Library or taskPrefer
littlefs filesystem or block devicelittlefs-integration
FatFs disk I/O, FAT/exFATfatfs-integration
FlashDB KV/time-series databaseflashdb-integration

Logging & Diagnosis

Library or taskPrefer
EasyLogger output, filters, async logseasylogger-integration
CmBacktrace Cortex-M crash backtracecmbacktrace-integration
SEGGER RTT logs, control block, J-Link I/Osegger-rtt-integration

Shell & CLI

Library or taskPrefer
letter-shell command shellletter-shell-integration
nr_micro_shell tiny CLInr-micro-shell-integration
zoom-shell embedded consolezoom-shell-integration

Networking & Protocols

Library or taskPrefer
lwIP netif, DHCP, TCP, UDPlwip-integration
FreeRTOS+TCP network driver, socketsfreertos-plus-tcp-integration
MQTT client, keepalive, QoS, TLSmqtt-embedded-integration
FreeModbus RTU, ASCII, TCPfreemodbus-integration
OpenThread radio, mesh, commissioningopenthread-integration
CAN bus library, MCP2515, bit timingcanbus-integration
CANopen OD, NMT, SDO, PDO, heartbeatcanopen-integration
BLE GATT services, characteristics, MTUble-gatt-integration

UI & Display

Library or taskPrefer
LVGL display, input, tick, draw bufferslvgl-integration
U8g2 monochrome display, fontsu8g2-integration
E-paper EPD, busy timing, refresh modesepd-integration
TJpgDec embedded JPEG decodingtjpgd-integration

Security & Crypto

Library or taskPrefer
mbedTLS entropy, certificates, TLS handshakembedtls-integration
micro-ecc ECDH, ECDSA, keys, signaturesmicro-ecc-integration
TinyCrypt AES, SHA, HMAC, ECCtinycrypt-integration

Data & Serialization

Library or taskPrefer
cJSON, jsmn, inih parsersembedded-data-parsing-libs
nanopb Protocol Buffersnanopb-integration
CRC, checksum, integrity checkscrc-checksum-integration

USB & Transfer

Library or taskPrefer
TinyUSB device, host, CDC, MSC, HIDtinyusb-integration
XMODEM/YMODEM serial transfer, bootloaderymodem-xmodem-integration

Boot & OTA

Library or taskPrefer
MCUboot secure boot, slots, signingmcuboot-integration
OTA package, transport, rollbackota-update-integration

Compression

Library or taskPrefer
miniz DEFLATE, zlib, ZIPminiz-integration
heatshrink streaming compressionheatshrink-integration

DSP & ML

Library or taskPrefer
CMSIS-DSP math, FFT, filterscmsis-dsp-integration
TinyMaix MCU inference, model loadingtinymaix-integration

Input, Timers & State Machines

Library or taskPrefer
MultiButton, FlexibleButtonembedded-input-libs
MultiTimer, software timersembedded-timing-libs
Ring buffer, FIFO, MCU queuesembedded-buffer-queue-libs
State machine librariesembedded-state-machine-libs

Frameworks & Patterns

Library or taskPrefer
PLOOC object-oriented Cplooc-integration
Avem event-driven componentsavem-integration
Power management frameworkpower-management-integration
Embedded app examples adaptationembedded-app-example-libs

Testing

Library or taskPrefer
Unity, Ceedling, CMock embedded C testsunity-ceedling-integration

Fallback (not a library issue)

SymptomPrefer
MCU flash, erase, verify failuremcu-flashing-debug
UART transport or missing logsembedded-serial-log-debug
RTOS task, mutex, queue, stack issuertos-debug
Board power, reset, pin, or signal issuehardware-interface-debug

Workflow

  1. Route by library responsibility. Identify whether the library depends on storage, UART, RTOS primitives, heap, timers, display, network, or flash erase/program operations.

  2. Confirm platform contracts. Ask for the porting hooks the library expects and the project already provides.

  3. Preserve data and flash. Formatting filesystems, erasing database partitions, wiping logs, or changing flash layout requires explicit user approval.

  4. Keep integration minimal. Bring up one smallest working path before enabling optional features such as async logging, wear leveling stress tests, shell authentication, or compression.

  5. Verify with a target-relevant scenario. A library compiles successfully only proves syntax. Require a read/write, log, shell command, or crash capture that exercises the port layer.

Verification

Before moving to a specific library workflow:

  • State the selected library skill and why.
  • State target MCU/RTOS/compiler/build system if known.
  • Identify required porting hooks and missing inputs.
  • Confirm no data-destructive action has been recommended without approval.

Common Failures

  • Treating a library as portable because it compiles on desktop.
  • Enabling all optional features before the minimal port works.
  • Ignoring flash erase size, write alignment, and power-fail behavior.
  • Debugging library logic before validating the porting layer.
  • Assuming malloc, mutexes, time functions, or file APIs exist on bare metal.

Example

User:

我想在 STM32 项目里加 littlefs 保存配置。

Agent:

  1. Routes to littlefs-integration.
  2. Asks for flash layout, erase/program sizes, bad block assumptions, RTOS locking, and whether formatting is allowed.
  3. Verifies mount, format-if-approved, file write, sync, reboot, and readback.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.