What problem does it solve? Legacy C++ codebases written in C++98/03 contain raw pointers, NULL macros, and typedef declarations that are error-prone and hard to maintain. This Skill systematically identifies and refactors these outdated patterns into modern C++17/20 equivalents. ## Core Features & Use Cases - Pattern Recognition: Scans source files to flag raw pointer ownership, NULL macros, and typedef declarations for modernization. - Safe Refactoring Rules: Converts raw pointers to std::unique_ptr, NULL to nullptr, and typedef to using aliases, while protecting polymorphic deletions and C API boundaries. - Verification Workflow: Integrates clang-tidy and cmake build/test commands to validate that refactored code compiles and passes existing tests. - Use Case: When a user asks to modernize src/legacy.cpp, the Skill scans for new/delete pairs and NULL usage, applies smart pointer conversions, then runs clang-tidy and the test suite to confirm correctness. ## Quick Start Modernize the legacy C++ code in src/engine.cpp to C++17 by replacing raw pointers with smart pointers and NULL with nullptr.