What problem does it solve? Developers working with the ABP framework often mix in standard ASP.NET Core patterns that conflict with ABP conventions, such as using DateTime.Now, injecting DbContext directly, or registering services manually, leading to untestable and inconsistent code. ## Core Features & Use Cases - Convention Enforcement: Guides use of IClock, IRepository<T>, BusinessException, and marker interfaces like ITransientDependency instead of raw ASP.NET Core equivalents. - Base Class Awareness: Lists built-in properties (Clock, CurrentUser, L, GuidGenerator) available on ApplicationService, DomainService, and AbpController so redundant injections are avoided. - Anti-Pattern Reference: Provides a table of ABP anti-patterns (Minimal APIs, MediatR, manual UnitOfWork) with the correct ABP replacements. - Use Case: When writing a new application service in an ABP modular monolith, consult this Skill to structure the module class, register dependencies, handle localization, and throw properly coded business exceptions. ## Quick Start Review my ABP application service code and fix any violations of ABP conventions such as DateTime usage or direct DbContext injection.