AxiomCode
AI 소프트웨어 엔지니어링을 위한 검증 가능한 인텔리전스, 형식화된 코드 그래프 기반
임베디드·펌웨어·IoT 개발용 Claude Code 플러그인 15개
15 Claude Code plugins for embedded systems, firmware, and IoT development
플러그인Shell · PythonGitHub @Ormus-Solutions직접 설치운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
설치형 프로젝트는 배포 도메인 없이도 확인할 수 있습니다. 개인 저장소는 GitHub 로그인으로, 조직 저장소는 위의 저장소 확인 파일로 직접 확인해 주세요.
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Embedded systems, firmware, and IoT development with Claude Code — 15 specialized plugins from bare metal to RTOS
Skills, agents, commands, and workflows for embedded systems development with Claude Code.
Most LLM-assisted coding patterns assume a web stack. Embedded development isn't web. The toolchain is GCC + OpenOCD + a hardware debugger. The runtime is bare metal or a 32 KB RTOS. The bugs live in a register on a chip you can hold in your hand. The feedback loop is "compile, flash, watch the LED, decide."README 전문 보기 ↗English | 简体中文
Skills, agents, commands, and workflows for embedded systems development with Claude Code.
Most LLM-assisted coding patterns assume a web stack. Embedded development isn't web. The toolchain is GCC + OpenOCD + a hardware debugger. The runtime is bare metal or a 32 KB RTOS. The bugs live in a register on a chip you can hold in your hand. The feedback loop is "compile, flash, watch the LED, decide."
LibreEmbed is the Claude Code stack for that work. Fifteen plugins covering the layers that actually matter when you're bringing up a board, writing a driver, debugging across SWD, or shipping firmware that has to survive a reflash in the field.
Andrej Karpathy framed the broader change in December 2025:
"I've never felt this much behind as a programmer. The profession is being dramatically refactored."
"New vocabulary: agents, subagents, their prompts, contexts, memory, modes, permissions, tools, plugins, skills, hooks, MCP, LSP, slash commands, workflows, IDE integrations..."
Embedded development has resisted that refactor longer than most domains. The reasons are real — proprietary toolchains, hardware-in-the-loop testing, safety constraints, vendor lock-in — but the result is that embedded teams have lagged in adopting agent-assisted workflows. LibreEmbed exists to close that gap. Each plugin encodes a slice of embedded expertise as agent prompts + commands + skills, so the agent can think alongside you when you're trying to figure out why the chip won't enumerate over USB.
| Claude Code component | LibreEmbed provides |
|---|---|
| Plugins | 15 domain plugins (RTOS, ARM Cortex-M, comm buses, IoT, FPGA, safety-critical, more), installed from one marketplace named libre-embed |
| Agents | Domain-specialist agents for each plugin — e.g., RTOS engineer, ARM Cortex-M expert, IoT protocol designer |
| Commands | Quick-access slash commands per plugin (/rtos, /comm-bus, /iot, /cortex-m, etc.) |
| Skills | Reusable pattern libraries — calibration routines, sensor fusion, bootloader patterns, OTA workflows |
| Hooks | Pre/post tool hooks for safety nets, packaged as the optional libre-embed-hooks plugin: asks before flash, erase, and secret-file operations |
| Templates | A project CLAUDE.md scaffold (templates/CLAUDE.md) |
LibreEmbed-Claude-Code/
├── .claude-plugin/ # marketplace.json for the libre-embed marketplace
├── plugins/ # 15 plugins, one per embedded subdomain, plus libre-embed-hooks
│ ├── arm-cortex-m # ARM Cortex-M0/M3/M4/M7/M33 programming
│ ├── bare-metal # Register manipulation, linker scripts, minimal runtime
│ ├── bootloader-design # Bootloader architecture, secure boot, A/B partitions
│ ├── communication-buses # I2C, SPI, UART, CAN, USB protocols + drivers
│ ├── debug-trace # JTAG, SWD, ITM, ETM, printf debugging, logic analyzers
│ ├── embedded-linux # Yocto, Buildroot, device trees, kernel modules
│ ├── embedded-testing # On-target unit tests, HIL testing, hardware mocks
│ ├── firmware-update # OTA updates, dual-bank flash, rollback mechanisms
│ ├── fpga-integration # MCU+FPGA integration, soft cores, HDL basics
│ ├── iot-protocols # MQTT, CoAP, LwM2M, BLE, LoRaWAN, Zigbee, Thread
│ ├── memory-management # Static allocation, pools, stack/heap analysis
│ ├── power-management # Sleep modes, power budgeting, energy harvesting
│ ├── rtos-patterns # FreeRTOS, Zephyr, task design, IPC, priority inversion
│ ├── safety-critical # IEC 61508, DO-178C, MISRA C, certification patterns
│ ├── sensor-integration # Driver bring-up, calibration, filtering, fusion
│ └── libre-embed-hooks # Optional safety hooks: confirm flash, erase, and secret-file operations
├── learning-paths/ # 3 learning paths: beginner → intermediate → advanced
├── templates/ # Project CLAUDE.md scaffold
└── setup.sh # Installs the plugins through the Claude Code CLI
Each plugin ships an agent (specialist persona with deep domain knowledge), a command (quick slash invocation), and a skill (reusable pattern library).
| Plugin | Agent / Command | What it does |
|---|---|---|
| arm-cortex-m | cortex-m-engineer / /cortex-m | CMSIS, HAL vs. LL, startup code, vector table, MPU configuration, MMU on Cortex-A boundaries. ARM Cortex-M0+/M3/M4/M7/M33. |
| bare-metal | bare-metal-engineer / /bare-metal | Register-level programming, linker scripts, minimal runtime (no libc), C++ on embedded, freestanding builds. |
| memory-management | memory-engineer / /memory | Static allocation strategies, memory pools, stack analysis via GCC -fstack-usage, heap-less design, fragmentation patterns. |
| power-management | power-engineer / /power | Sleep modes (run / sleep / stop / standby), peripheral clock gating, wake sources, power budgeting, energy harvesting designs. |
| Plugin | Agent / Command | What it does |
|---|---|---|
| communication-buses | bus-driver-engineer / /comm-bus | I2C (master/slave, clock stretching, multi-master), SPI (modes, DMA, CS handling), UART (DMA, ring buffers, flow control), CAN (frame format, filters, error states), USB CDC/HID. |
| sensor-integration | sensor-engineer / /sensor | Sensor driver bring-up, factory calibration, Allan variance, complementary + Kalman filtering, sensor fusion (IMU + magnetometer + GPS). |
| iot-protocols | iot-protocol-engineer / /iot | MQTT (QoS levels, retained messages, LWT), CoAP, LwM2M device management, BLE GATT, LoRaWAN class A/B/C, Zigbee, Thread. |
| Plugin | Agent / Command | What it does |
|---|---|---|
| rtos-patterns | rtos-engineer / /rtos | FreeRTOS + Zephyr task design, IPC primitives (queues, mutexes, semaphores, event groups), priority inversion + inheritance, watchdog patterns, deferred interrupt processing. |
| embedded-linux | embedded-linux-engineer / /embedded-linux | Yocto + Buildroot, device tree authoring, kernel module patterns, init systems (systemd vs. OpenRC vs. BusyBox init), userspace driver patterns. |
| bootloader-design | bootloader-engineer / /bootloader | First-stage vs. second-stage bootloaders, secure boot chains, signature verification, A/B partition designs, fail-safe rollback, ROM bootloader interaction. |
| firmware-update | fota-engineer / /firmware-update | OTA update protocols, dual-bank flash, delta updates (bsdiff/Heatshrink), version negotiation, anti-rollback, signed-by-vendor enforcement. |
| Plugin | Agent / Command | What it does |
|---|---|---|
| fpga-integration | fpga-engineer / /fpga | MCU + FPGA designs, AXI bus integration, soft-core CPUs (RISC-V on FPGA), DMA across the boundary, HDL basics for the embedded developer. |
| debug-trace | debug-engineer / /debug-embedded | JTAG + SWD setup, OpenOCD + pyOCD, ITM (Instrumentation Trace Macrocell), ETM (Embedded Trace Macrocell), printf-over-SWO, logic analyzer captures, oscilloscope vs. logic analyzer trade-offs. |
| Plugin | Agent / Command | What it does |
|---|---|---|
| embedded-testing | embedded-test-engineer / /embedded-test | On-target unit tests (Unity, CMocka, Ceedling), Hardware-in-the-Loop (HIL) test rigs, hardware peripheral mocks, golden-image regression, CI for embedded. |
| safety-critical | safety-engineer / /safety | IEC 61508 SIL levels, DO-178C aviation, ISO 26262 automotive, MISRA C compliance, formal verification basics, freedom-from-interference. |
| Plugin | Hooks | What it does |
|---|---|---|
| libre-embed-hooks | SessionStart, PreToolUse, PostToolUse | Asks before flash and erase commands (OpenOCD program, st-flash write, west flash, idf.py flash, pyocd flash, nrfjprog --program, and more) and before a file tool touches .env, .pem, .key, credentials, or secrets files. Prints one context line when a session opens in a firmware project, and flags a file left empty by an edit. No agents, no logs. See its README. |
/plugin marketplace add HermeticOrmus/LibreEmbed-Claude-Code
/plugin install rtos-patterns@libre-embed
Install any of the 15 plugins the same way, /plugin install <plugin>@libre-embed with a name from the tables above, then restart Claude Code. From a terminal the same two steps are:
claude plugin marketplace add HermeticOrmus/LibreEmbed-Claude-Code
claude plugin install rtos-patterns@libre-embed
The safety hooks are a separate, optional plugin: /plugin install libre-embed-hooks@libre-embed (or claude plugin install libre-embed-hooks@libre-embed).
Grok Build loads the same plugin folders. Add the marketplace and install a plugin from a terminal:
grok plugin marketplace add HermeticOrmus/LibreEmbed-Claude-Code
grok plugin install rtos-patterns@LibreEmbed-Claude-Code
Or install one plugin straight from its folder, with no marketplace:
grok plugin install HermeticOrmus/LibreEmbed-Claude-Code#plugins/rtos-patterns
From a clone, ./setup.sh --grok installs every plugin through the grok CLI; --only, --list, and --uninstall work the same way. The libre-embed-hooks plugin uses a hook format Grok Build supports, but it has not been verified in a live Grok session yet.
# Clone
git clone https://github.com/HermeticOrmus/LibreEmbed-Claude-Code.git ~/projects/LibreEmbed-Claude-Code
# Install all 15 plugins plus libre-embed-hooks into Claude Code
cd ~/projects/LibreEmbed-Claude-Code
./setup.sh
# Or install just the plugins you need
./setup.sh --only rtos-patterns,communication-buses,iot-protocols
# List the plugins, skip the hooks plugin, or remove the pack
./setup.sh --list
./setup.sh --no-safety-hooks
./setup.sh --uninstall
setup.sh needs the claude CLI and jq. It registers the checkout as the libre-embed marketplace and runs claude plugin install for each plugin, so it installs exactly what the /plugin commands install. All fifteen together add about 4.7k tokens of plugin descriptions to every session (claude plugin details <plugin>@libre-embed shows each one), so --only pays off if you work in a few areas.
Upgrading from 0.x: the old setup.sh copied directories into ~/.claude/plugins/ and scripts into ~/.claude/hooks/, locations Claude Code does not load. Install with either method above, then delete any leftover ~/.claude/plugins/libre-embed-* directories and ~/.claude/hooks/libre-embed-*.sh scripts.
Then in any Claude Code session at your firmware project root:
/rtos design a task structure for a sensor logger that samples 4 channels at 1 kHz and writes to QSPI flash every 100 ms
If another plugin also defines /rtos, use the namespaced form /rtos-patterns:rtos.
See QUICK_START.md for the full walkthrough on a real board (STM32F4 Discovery + ICM-20948 IMU).
The repo is organized by experience level. Pick your entry point:
You've programmed C. Maybe you've blinked an LED on Arduino. You want to graduate to a real MCU + GCC toolchain + a hardware debugger, with Claude Code helping you avoid the obvious mistakes.
You have a schematic + a populated PCB on your desk. The crystal is the right frequency. The power rails measure clean. Now you need to write the first firmware that confirms the board works. Claude Code as your bring-up partner.
→ learning-paths/intermediate.md
OTA updates that don't brick devices. Watchdog patterns that catch real failures. CI/CD for firmware. Long-term support patterns. The work that makes firmware credible for production.
/plugin); this release was verified with Claude Code 2.1.285. setup.sh and the hooks plugin also need jq.grok 1.0.44 validates and installs all 16 plugins. The hooks plugin is unverified in a live Grok session.LibreEmbed makes no calls home and does not require any vendor account beyond what your toolchain itself needs.
Starred this? Tell us what worked and what is missing: open a feedback issue. Every piece of feedback gets an answer, and changes that come from it are credited in the release notes.
Cracks we found and sealed: LEDGER.md.
How to claim an item and test a change locally: Ways to contribute.
Embedded is wide. Fifteen plugins is a start; depth varies per plugin (see CHANGELOG.md for the per-plugin maturity matrix). PRs are especially welcome for:
See CONTRIBUTING.md for the contribution model.
This repository is part of a growing family of open-source toolkits for Claude Code.
set -euo pipefail discipline plus 15 failure-mode examplesStar the family, not just one — that's how the suite stays coherent.