What problem does it solve? Implementing high-performance operators on Ascend NPUs with the CATLASS template library requires correctly assembling BlockMmad, BlockEpilogue, BlockScheduler, and Kernel components, constructing Kernel::Params, and writing Device-side calls—mistakes in any step cause compilation failures, workspace corruption, or silent precision errors. This Skill turns design selections into correct CATLASS kernel code with enforced rules and verified patterns. ## Core Features & Use Cases - Kernel Assembly Chains: Produces using chains (BlockMmad/BlockEpilogue/BlockScheduler/Kernel), Kernel::Params construction, and Device-side Kernel{}(params) calls for basic matmul, matmul with epilogue, bias+activation, and quantized matmul (AIC/AIV coordination). - Custom Tile Epilogue: Generates custom Tile Epilogue header files aligned to target slot signatures using only AscendC vector APIs. - Attention Operator Recipes: Provides step-by-step handcraft recipes for FlashAttention variants (paged, causal, varlen, sink, MLA, SageAttention) and linear attention (GDN/KDA/retention) with stage design, workspace, and CrossCoreFlag protocols. - Precision Verification: Enforces a mandatory verify_result.py template with dual MERE/MARE and atol/rtol/error_ratio criteria aligned to the ops-precision-standard. - Use Case: Given a DESIGN.md selecting MmadAtlasA2Pingpong with a GELU epilogue, generate the complete op_kernel using chain, Params construction, and Device call, plus gen_data/golden/verify scripts covering real-network shapes. ## Quick Start Ask the assistant to implement the CATLASS op_kernel for your operator based on the design document's component selections, after reading the workspace catlass README, docs, and reference example.