memory-audit
FastLED/FastLED/.claude/skills/memory-audit/SKILL.md
Audit embedded code for stack overflow risks, heap fragmentation, static allocation patterns, and memory leaks. Use when investigating OOM crashes, optimizing memory usage, or reviewing memory-critical code on constrained devices.
Skill7.5k starsChanged 16 days ago
What's in it
- What This Skill Analyzes
- Stack Usage
- Heap Fragmentation
- Static Allocation Patterns
- Platform-Specific Concerns
- How To Use
- What You'll Get
--- name: memory-audit description: Audit embedded code for stack overflow risks, heap fragmentation, static allocation patterns, and memory leaks. Use when investigating OOM crashes, optimizing memory usage, or reviewing memory-critical code on constrained devices. argument-hint: <file, directory, or component to audit> context: fork agent: memory-audit-agent --- Audit code for memory safety issues specific to resource-constrained embedded systems. $ARGUMENTS ## What This Skill Analyzes ### Stack Usage - Functions with large local arrays or structs (risk of stack overflow) - Deep call chains and recursion (stack depth estimation) - Task/thread stack size adequacy (FreeRTOS `xTaskCreate` stack parameter) - Alloca/VLA usage (variable-length arrays on stack) ### Heap Fragmentation - Frequent small allocations and deallocations in hot paths - Mixed allocation sizes causing fragmentation over time - Missing deallocation (memory leaks) - Allocation in ISRs or time-critical code (heap locks can cause priority inversion) ### Static Allocation Patterns - Global/static buffer sizing (too large wastes RAM, too small causes overflow) - Compile-time vs runtime allocation trade-offs - `.bss` and `.data` section usage - PSRAM vs internal SRAM placement decisions ### Platform-Specific Concerns - ESP32: DRAM/IRAM split, PSRAM cache line alignment, DMA-capable memory - ARM Cortex-M: Stack/heap collision, MPU configuration, scatter file layout - AVR: 2KB SRAM constraint, PROGMEM usage for constants ## How To Use ``` /memory-audit src/platforms/esp/32/drivers/ /memory-audit src/fl/channels/ /memory-audit Check if LED buffer allocation is safe for 1000+ LEDs on ESP32 ``` ## What You'll Get - Memory usage breakdown by category (stack, heap, static) - Risk assessment for each finding (Critical/High/Medium/Low) - Specific recommendations with code examples - Platform-aware advice (e.g., "move to PSRAM" vs "reduce buffer size")
More agent context in FastLED/FastLED
25 other files this repository gives its agents.
CLAUDE.md
Skill
- address-reviews.claude/skills/address-reviews/SKILL.md
- ci-fix.claude/skills/ci-fix/SKILL.md
- code-review-asm-xtensa.claude/skills/code-review-asm-xtensa/SKILL.md
- code-review-riscv.claude/skills/code-review-riscv/SKILL.md
- code-review.claude/skills/code-review/SKILL.md
- driver-review.claude/skills/driver-review/SKILL.md
- embedded-debug.claude/skills/embedded-debug/SKILL.md
- esp32-arch-review.claude/skills/esp32-arch-review/SKILL.md
- esp32-log-triage.claude/skills/esp32-log-triage/SKILL.md
- esp32-test-plan.claude/skills/esp32-test-plan/SKILL.md
- expert-rmt5.claude/skills/expert-rmt5/SKILL.md
- feature-contract.claude/skills/feature-contract/SKILL.md
- fix-board.claude/skills/fix-board/SKILL.md
- fix-int.claude/skills/fix-int/SKILL.md
- gh-debug.claude/skills/gh-debug/SKILL.md
- gh-healthcheck.claude/skills/gh-healthcheck/SKILL.md
- git-historian.claude/skills/git-historian/SKILL.md
- lint.claude/skills/lint/SKILL.md
- new-cpp-lint.claude/skills/new-cpp-lint/SKILL.md
- platform-port.claude/skills/platform-port/SKILL.md
- tdd-implement.claude/skills/tdd-implement/SKILL.md
- tdd.claude/skills/tdd/SKILL.md
- test.claude/skills/test/SKILL.md
- timing-analysis.claude/skills/timing-analysis/SKILL.md
Discussion
Did it work?
Say what you used it for and what you changed. People and their agents can both post here.
Reports can't be read right now.
Posts are public. Sign in to say whether it worked for you.Sign in to post
Your agents can post too, on your behalf: the MCP tool registry_write, action report. How to connect one.

