Auto-injects when you're writing firmware for microcontrollers in Rust. It enforces the big constraints: no heap allocation (use heapless collections), interrupt safety (critical sections and Mutex patterns), and proper peripheral ownership through HAL singletons. The trace down approach is smart here because embedded constraints force specific design patterns. If you're working on STM32, ESP32, or Nordic chips and keep forgetting whether you need RefCell inside or outside the Mutex, this keeps the patterns visible. The framework comparison table (RTIC vs Embassy vs bare metal) is genuinely useful when you're picking a concurrency model. It's opinionated about safety, which is the right stance when a race condition can brick hardware.

skills.sh installs
625
GitHub stars
1.3K
last updated
Jul 14, 2026

Install

$ npx -y skills add zhanghandong/rust-skills --skill domain-embedded --agent claude-code

Installs into .claude/skills of the current project.

Files

Project Context (Auto-Injected)

Target configuration: !cat .cargo/config.toml 2>/dev/null || echo "No .cargo/config.toml found"


Embedded Domain

Layer 3: Domain Constraints

Domain Constraints → Design Implications

Domain RuleDesign ConstraintRust Implication
No heapStack allocationheapless, no Box/Vec
No stdCore only#![no_std]
Real-timePredictable timingNo dynamic alloc
Resource limitedMinimal memoryStatic buffers
Hardware safetySafe peripheral accessHAL + ownership
Interrupt safeNo blocking in ISRAtomic, critical sections

Critical Constraints

No Dynamic Allocation

RULE: Cannot use heap (no allocator)
WHY: Deterministic memory, no OOM
RUST: heapless::Vec<T, N>, arrays

Interrupt Safety

RULE: Shared state must be interrupt-safe
WHY: ISR can preempt at any time
RUST: Mutex<RefCell<T>> + critical section

Hardware Ownership

RULE: Peripherals must have clear ownership
WHY: Prevent conflicting access
RUST: HAL takes ownership, singletons

Trace Down ↓

Sponsors

Details

Repository
github.com/zhanghandong/rust-skills
Category
Rust
First seen
May 16, 2026

More from zhanghandong/rust-skills

All 34

Recommended

More Rust
1mohitmishra786 avatarrustc-basicsmohitmishra786/low-level-dev-skillsRust compiler skill for systems programming. Use when selecting RUSTFLAGS, configuring Cargo profiles, tuning release builds, reading assembly or MIR output, un567skills.sh installs
2secondsky avatarcloudflare-workers-multi-langsecondsky/claude-skillsMulti-language Workers development with Rust, Python, and WebAssembly. Use when building Workers in languages other than JavaScript/TypeScript, or when integrat310skills.sh installs
3openzeppelin avatarsetup-stellar-contractsopenzeppelin/openzeppelin-skillsSet up a Stellar/Soroban smart contract project with OpenZeppelin Contracts for Stellar. Use when users need to: (1) install Stellar CLI and Rust toolchain for 296skills.sh installs
4dfinity avatarevm-rpcdfinity/icskillsCall Ethereum and EVM chains from IC canisters (Rust) via the EVM RPC canister using the evm_rpc_client crate. Covers typed API calls, raw JSON-RPC, multi-provi287skills.sh installs
5samhvw8 avatarmise-expertsamhvw8/dotfilesMise development environment manager (asdf + direnv + make replacement). Capabilities: tool version management (node, python, go, ruby, rust), environment varia180skills.sh installs
6actionbook avatarcoding-guidelinesactionbook/rust-skillsUse when asking about Rust code style or best practices. Keywords: naming, formatting, comment, clippy, rustfmt, lint, code style, best practice, P.NAM, G.FMT, 4.2Kskills.sh installs