Навыки memory-safety-patterns
🛡️

memory-safety-patterns

Безопасно 🌐 Доступ к сети⚙️ Внешние команды📁 Доступ к файловой системе

Применение паттернов безопасности памяти в системном коде

Ошибки памяти вызывают сбои и уязвимости безопасности в системном коде. Этот навык обучает паттернам RAII, владения и управления ресурсами в Rust, C++ и C.

Поддерживает: Claude Codex Code(CC)
📊 69 Адекватно
1

Скачать ZIP навыка

2

Загрузить в Claude

Перейдите в Settings → Capabilities → Skills → Upload skill

3

Включите и начните использовать

Протестировать

Использование «memory-safety-patterns». Summarize safe resource management options in C, C++, and Rust.

Ожидаемый результат:

  • C: use goto cleanup blocks or explicit create and destroy functions
  • C++: use RAII with destructors and smart pointers
  • Rust: rely on ownership, borrowing, and Drop semantics

Использование «memory-safety-patterns». When should I use unique_ptr versus shared_ptr?

Ожидаемый результат:

  • Use unique_ptr when a single owner controls the lifetime
  • Use shared_ptr when multiple owners must share the resource
  • Prefer unique_ptr with move semantics over shared_ptr when possible

Использование «memory-safety-patterns». How does Rust prevent use-after-free?

Ожидаемый результат:

  • The compiler tracks ownership and enforces single owner by default
  • References (borrows) have checked lifetimes
  • Memory is freed automatically when the owner goes out of scope

Аудит безопасности

Безопасно
v4 • 1/17/2026

The skill is a static educational markdown guide containing code examples for memory safety patterns. It has no executable scripts, no runtime tool calls, no network behavior, and no file system access. All 67 static findings are false positives caused by the scanner pattern-matching on educational keywords in legitimate systems programming content.

2
Просканировано файлов
781
Проанализировано строк
3
находки
4
Всего аудитов

Оценка качества

38
Архитектура
100
Сопровождаемость
85
Контент
21
Сообщество
100
Безопасность
87
Соответствие спецификации

Что вы можете построить

Предотвращение ошибок памяти

Применяйте паттерны RAII и владения для уменьшения утечек и ошибок use after free.

Модернизация обработки ресурсов

Замените сырые указатели на умные указатели и более безопасный доступ к контейнерам.

Понимание правил владения

Изучите заимствование, время жизни и паттерны безопасного совместного владения.

Попробуйте эти промпты

Изучение основ RAII
Объясните RAII на коротком примере C++ для работы с файлами и мьютексами. Будьте краткими и практичными.
Выбор умных указателей
Для дерева с ссылками на родителя и потомки рекомендуйте умные указатели и объясните, как избежать циклов.
Перенос в Rust
Покажите, как класс RAII C++ отображается на владение, заимствование и Drop в Rust. Приведите краткий пример.
Предотвращение гонок данных
Рекомендуйте подход к предотвращению гонок данных в C++ и Rust для общего счётчика и карты.

Лучшие практики

  • Связывайте время жизни ресурса с областью видимости с помощью RAII или владения
  • Предпочитайте безопасные контейнеры и доступ с проверкой границ
  • Используйте санитайзеры и статический анализ во время разработки

Избегать

  • Использование сырых указателей без чётких правил владения
  • Возврат ссылок на стековые локальные данные
  • Игнорирование предупреждений компилятора о небезопасном доступе

Часто задаваемые вопросы

Is this skill compatible with Claude, Codex, and Claude Code?
Да. Он предоставляет руководство и примеры, которые работают на этих платформах.
What are the limits of the guidance?
Он обучает паттернам и примерам, но не проверяет ваш конкретный код.
Can it integrate with my build or CI system?
Нет. Он только предлагает рекомендации и примеры команд.
Does it access my files or data?
Нет. Навык содержит только статический текст и примеры кода.
What if I still see memory errors?
Используйте санитайзеры или отладчики и проверяйте правила владения и времени жизни.
How does it compare to a linter or sanitizer?
Он обучает паттернам, в то время как линтеры и санитайзеры обнаруживают проблемы в реальном коде.

Сведения для разработчиков

Автор

wshobson

Лицензия

MIT

Ссылка

main

Структура файлов

📄 SKILL.md