Skip to content
Skills Library
Programming · Analysis

embedded-linux

/embedded-linux

Use when controlling, testing, inspecting, or debugging network-connected embedded Linux boards (ARM, ARM64, RISC-V, Buildroot, Yocto, OpenWrt, BusyBox/Dropbear) via the embedded-linux-mcp server or SSH.

Licence
MIT
Last repository change
02.11.2026

Assessment and security

90/ 100Class: good
Format25 / 25
Frontmatter with name and description, valid name, description up to 1,024 characters, name matching the folder.
Discoverability25 / 25
Description explains when to use the skill, has a reasonable length and uses third person.
Content25 / 35
At least 150 words and at most 500 lines, headings, step lists, examples or code.
Hygiene15 / 15
No placeholders such as TODO, no Windows paths, with a licence.
Riskno signals detected in the scan
Files in this package
3
Scripts
0
HTML comments
0
URLs in SKILL.md
0
Deprecation

No signals detected. Repository changed on 02.11.2026, without references to retired models or APIs.

Licence

MIT, open: use and modify while retaining author attribution.

What it does and when to use it

Use when controlling, testing, inspecting, or debugging network-connected embedded Linux boards (ARM, ARM64, RISC-V, Buildroot, Yocto, OpenWrt, BusyBox/Dropbear) via the embedded-linux-mcp server or SSH.

Original author description

Use when controlling, testing, inspecting, or debugging network-connected embedded Linux boards (ARM, ARM64, RISC-V, Buildroot, Yocto, OpenWrt, BusyBox/Dropbear) via the embedded-linux-mcp server or SSH.

How it works

  1. Overview
  2. Mandatory Onboarding Workflow
  3. Flash-Safe Execution Rules
  4. Hardware & Debugging Playbooks
Original SKILL.md headings · 39 lines, 358 words
SKILL.md preview
---
name: embedded-linux
description: Use when controlling, testing, inspecting, or debugging network-connected embedded Linux boards (ARM, ARM64, RISC-V, Buildroot, Yocto, OpenWrt, BusyBox/Dropbear) via the embedded-linux-mcp server or SSH.
---

# Embedded Linux Control, Testing & Debugging

## Overview

Use this skill whenever you interact with a network-attached embedded Linux target. Embedded Linux boards differ fundamentally from cloud servers: they often run **BusyBox** userlands, **Dropbear** SSH (frequently without an SFTP subsystem), **uclibc/musl** C libraries, small RAM budgets (64 MB – 512 MB), and raw **SPI NAND/NOR or eMMC flash** that wears out under heavy writes.

## Mandatory Onboarding Workflow

Whenever starting work on a board or IP address:

1. **Check Connection Pool (`device_list` / `device_connect`):**
   - Call `device_list` first. If the target device is not registered or connected, call `device_connect` with `host` (e.g., `"192.168.1.100"`), `username` (default `"root"`), and the board's credentials.
2. **Take a System Snapshot (`system_info` & `read_dmesg`):**
   - Call `system_info` before running custom commands. Note:
     - **Architecture & ABI:** `armv7l`, `aarch64`, `riscv64`, `mips`
     - **Board Model:** from `/proc/device-tree/model`
     - **Available RAM & `/tmp` capacity:** Check `memory` and `storage` (`tmpfs` size)
   - Call `read_dmesg(lines=50)` to spot boot errors, driver probe failures, or voltage/MMC warnings.

## Flash-Safe Execution Rules

1. **Always Use `/tmp` for Ephemeral Files:**
   - Upload test scripts, cross-compiled binaries, and diagnostic captures to `/tmp/<name>` (`tmpfs` in RAM).
   - Never write temporary artifacts to `/` or `/root` unless persistence across reboots is explicitly requested by the user.
2. **Check Binary Size & Linked Libc Before Uploading:**
   - Before calling `file_transfer(direction="upload")`, verify `free` RAM in `/tmp` via `system_info`.
   - When cross-compiling on the host, match the target's C library (`uclibc`, `musl`, or `glibc`) or link statically (`-static` / `*-unknown-linux-musl*`) so the binary does not fail with deceptive `sh: ./app: not found` (which indicates a missing dynamic linker in `/lib/ld-*`).
3. **Respect BusyBox Command Dialect:**
   - Avoid GNU-only flags (`ps aux --sort`, `df --output`, `grep -P`, `stat -c`).
   - Prefer POSIX/BusyBox flags or reading `/proc` and `/sys` directly via `file_read`.

## Hardware & Debugging Playbooks

Load the relevant reference document when performing peripheral control or low-level debugging:

- **SoC Families, Cross-Compilation & GPIO Pin Math:** Read `references/soc-gpio-notes.md` for GPIO bank/group pin number calculation, static cross-compilation targets, and media/camera service contention.
- **Generic Sysfs, Peripherals & Crash Debugging:** Read `references/sysfs-debug.md` for `/sys/class/gpio`, `/sys/class/pwm`, `i2c-tools`, `spidev`, `gdbserver`, and `strace` workflows.
Files in this package (3)
  • SKILL.md 3 KB
  • references/soc-gpio-notes.md 2 KB
  • references/sysfs-debug.md 2 KB

Versions

The database has no other skills named embedded-linux.

Database snapshot: 13.11.2026 · package version 8defc8bd2217 (SHA-256 digest of the entire package)

Downloads in the last 30 days: 0 · ranking

Report a problem with this skill: harmful content, incorrect descriptions or an author’s removal request.

Similar skills

  • 100embedded-linux-login-debug
    Use when logging into, connecting to, or preparing to debug an embedded Linux device
  • 100embedded-linux-patterns
    Embedded Linux patterns: Yocto layer and recipe hierarchy, kernel config fragments, device tree GPIO and interrupt properties, out-of-tree module Makefiles, sysfs attributes, and QEMU testing before hardware. Use when customizing a Linux image or writing a driver for an ARM board.
  • 100cross-gcc
    Cross-compilation with GCC skill for embedded and multi-architecture targets. Use when setting up cross-gcc toolchains, configuring sysroots, building for ARM/AArch64/RISC-V/MIPS from an x86-64 host, troubleshooting wrong-architecture errors, or running cross-compiled binaries…
  • 86linux-server-ops
    Use when diagnosing or managing a Linux server over SSH.
  • 95openwrt-kwrt-remote-ops
    远程运维 OpenWrt / Kwrt(openwrt.ai 系)路由器——SSH 通道搭建、固件升级后抢修(全屋断网/DNS 黑洞/OpenClash 消失)、插件增删、新 opkg 不支持本地 ipk 时自建本地源离线安装、OpenClash 内核与启用故障、软件源报错定位、overlay 空间治理与 U 盘 extroot 建议。当用户给出路由器 IP/账号要求登录排障、说"升级固件后连不上网/WiFi 上不去、电脑没网"、提到 OpenClash/PassWall/SSR Plus 启用失败、opkg 软件源报错、装不上插件、overlay…
  • 100embedded-debugger
    Embedded hardware debugging workflow for probe-rs targets using embedded-debugger-mcp. Use when Codex or Claude Code needs to inspect debug probes, validate embedded debugger setup, start the MCP server, guide a user through ARM Cortex-M/RISC-V flashing/debugging/RTT workflows,…

Feedback and reports

Your message goes to Bartosz Sokoliński. An email address is needed only for a reply. See the privacy policy.