From systems-programming
Guides memory-safe systems programming with RAII, ownership, smart pointers, and resource management across Rust, C++, and C. Useful when preventing use-after-free, leaks, and buffer overflows.
How this skill is triggered — by the user, by Claude, or both
Slash command
/systems-programming:memory-safety-patternsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Cross-language patterns for memory-safe programming including RAII, ownership, smart pointers, and resource management.
Cross-language patterns for memory-safe programming including RAII, ownership, smart pointers, and resource management.
| Bug Type | Description | Prevention |
|---|---|---|
| Use-after-free | Access freed memory | Ownership, RAII |
| Double-free | Free same memory twice | Smart pointers |
| Memory leak | Never free memory | RAII, GC |
| Buffer overflow | Write past buffer end | Bounds checking |
| Dangling pointer | Pointer to freed memory | Lifetime tracking |
| Data race | Concurrent unsynchronized access | Ownership, Sync |
Manual (C) → Smart Pointers (C++) → Ownership (Rust) → GC (Go, Java)
Less safe More safe
More control Less control
Detailed pattern documentation lives in references/details.md. Read that file when the navigation tier above is insufficient.
unsafe carelessly - In Rust, minimize it# AddressSanitizer (Clang/GCC)
clang++ -fsanitize=address -g source.cpp
# Valgrind
valgrind --leak-check=full ./program
# Rust Miri (undefined behavior detector)
cargo +nightly miri run
# ThreadSanitizer
clang++ -fsanitize=thread -g source.cpp
npx claudepluginhub yo-steven/agents-exploration-20260523 --plugin systems-programmingImplements memory-safe programming patterns including RAII, ownership, smart pointers, and resource management across Rust, C++, and C. Use when writing safe systems code or preventing memory bugs.
Provides cross-language patterns for memory-safe programming including RAII, ownership, smart pointers, and resource management. Useful for systems code, resource handling, preventing leaks and use-after-free.
Guides memory-safe coding across languages using RAII, ownership, smart pointers, and resource management. Helps prevent use-after-free and memory leaks.