What problem does it solve? C++ codebases drift toward inconsistent legacy idioms over time, mixing raw pointers, C-style casts, and unscoped enums with modern code. This Skill gives AI agents and reviewers a single authoritative rulebook so every new or edited .h/.cpp file in this repository follows uniform C++20 conventions. ## Core Features & Use Cases - Banned-idiom enforcement: Replaces raw new/delete, C arrays, NULL, typedef, plain enum, sprintf, output parameters, and C-style casts with modern equivalents like std::unique_ptr, std::array, nullptr, using, enum class, and static_cast. - Naming and layout conventions: Defines lowerCamelCase identifiers, UpperCamelCase types and files, UnitTest_<Thing>.cpp test naming, #pragma once headers, include ordering, and the bte::<module> namespace structure. - Modern feature guidance: Prescribes std::span, std::string_view, std::optional, std::variant, std::ranges, concepts, structured bindings, constexpr, and the repository's bte::core::Result<T> error-handling contract with no exceptions across module boundaries. - Use Case: When asked to add a new OrderBook class to the trading engine, the agent writes UpperCamelCase files, uses enum class for OrderSide, returns Result<T> from public APIs, and runs clang-format and clang-tidy before finishing. ## Quick Start Apply the cpp-modern-style rules to write or refactor the C++ file I am working on and verify it contains no banned C-style idioms.