ワンクリックで
external-cannbot-ops-ascendc-code-review
Ascend C 代码检视技能。基于假设检验方法论对代码进行安全规范检视。当用户提供代码片段和检视规则描述时,可使用此技能进行代码检视,使用时必须明确提供:代码片段和检视规则描述。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Ascend C 代码检视技能。基于假设检验方法论对代码进行安全规范检视。当用户提供代码片段和检视规则描述时,可使用此技能进行代码检视,使用时必须明确提供:代码片段和检视规则描述。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
评估 CANN 算子仓的「进阶教程 / 开发指南」类文档质量——通读文档 + 对照算子代码**静态**查证(默认不跑),按五轴(找得到/信得过/学得会/可操作/读得懂)找出 漏讲/讲不清/过时/对不上代码/概念讲错,产出带证据与改进建议的体检报告(MD + HTML)。涉及「评进阶教程 / 开发指南文档质量 / 文档对不对得上代码 / 教程审稿 / tutorial 体检 / 文档信不信得过」等意图时使用。只评不改不跑,只对着文档与代码出诊断。
Run NPU inference/training tests on a remote SSH server with vllm-ascend Docker container. Use when the user asks to test models on NPU, run inference on Ascend devices, or deploy models to an SSH server.
Track daily PRs and Issues from vllm-project/vllm and vllm-project/vllm-ascend, filter by model (DeepSeek/Qwen/GLM/MiniMax/Kimi) and tech topics (PD disaggregation, MTP, quantization, graph mode, performance), analyze with LLM, and generate a Markdown report. Use when user wants vllm daily tracker, PR/Issue digest, or Ascend inference ecosystem monitoring.
Automatically fetch InferenceX benchmark data and generate daily performance reports for LLM inference on various hardware (NVIDIA, AMD, etc.). Supports email delivery, data change detection, and 8k1k sequence length performance analysis. Use when needing to track LLM inference performance trends, compare hardware configurations, or monitor benchmark updates.
通用 PyTorch 项目 Ascend NPU 迁移可行性分析。系统化扫描代码库中的 CUDA/GPU 依赖,按 7 大域分类评估(设备层、注意力机制、自定义算子、分布式通信、精度策略、第三方依赖、编译加速),并基于 Wan2.2 实际迁移经验提供逐项替代方案。适用于评估任何 DiT/Transformer 类模型(视频生成、LLM、多模态等)在昇腾 NPU 上的运行可行性与迁移工作量估算。
End-to-end AscendC custom operator development for Ascend NPU in an ascend-kernel (csrc/ops + build.sh + torch_npu PyTorch custom op) project. Use to design, generate, build, test, document, and tune a new AscendC operator from a name and a math/functional spec. Covers project init, two-level tiling design, op_host/op_kernel code generation, framework registration, compile/install/debug, PyTorch-style API docs, precision evaluation and root-cause debugging, torch_npu.profiler performance benchmarking, performance optimization, and security code review.
| name | external-cannbot-ops-ascendc-code-review |
| description | Ascend C 代码检视技能。基于假设检验方法论对代码进行安全规范检视。当用户提供代码片段和检视规则描述时,可使用此技能进行代码检视,使用时必须明确提供:代码片段和检视规则描述。 |
| original-name | ascendc-code-review |
| synced-from | https://gitcode.com/cann/cannbot-skills |
| synced-date | 2026-05-26 |
| synced-commit | ac5bbd2b4cf427d011874e11f8d1e8b1bef66eda |
| license | UNKNOWN |
调用此技能时,必须明确提供以下参数:
参数1:代码片段
参数2:检视规则描述
检查整数溢出、检查内存泄漏、检查空指针解引用等参数3:规范文件路径(可选)
references/cpp-secure.md(安全编码规范)如果缺少任何一个必需参数,应:
| 文档名称 | 文档路径 | 检视范围 | 适用场景 | 条款数 |
|---|---|---|---|---|
| C++ 安全编码规范 | references/cpp-secure.md | 数值安全、内存安全、输入验证、资源管理、并发安全 | C++ 代码安全性检视 | 47 条 |
| Python 安全编码规范 | references/python-secure.md | 数值安全、异常处理、文件操作、序列化、命令执行、网络安全 | Python 代码安全性检视 | - |
| C++ 代码风格规范 | references/cpp-style.md | 命名规则、格式规范、注释规范 | C++ 代码风格、可读性检视 | - |
| C++ 通用编码规范 | references/cpp-general.md | 代码设计、数据类型、函数设计等 15 类规范 | C++ 代码质量、可维护性检视 | 46 条 |
| 安全编译规范 | references/compile-secure.md | ASLR、栈保护、GOT只读、立即绑定、堆栈不可执行 | 编译配置、构建脚本检视(仅 Tiling 侧) | 7 条 |
| Ascend C API 最佳实践 | references/ascendc-api.md | API 黑名单、对齐要求、配对检查、限制约束 | Ascend C API 使用检视(仅 Kernel 侧) | 9 条 |
| Ascend C 高性能编程 | references/ascendc-perf.md | 性能优化、精度标准、Tiling 设计 | Ascend C 高性能编程检视(仅 Kernel 侧) | 12 条 |
| TOPK 问题清单 | references/ascendc-topk.md | Host侧高频问题、属性获取、特殊值处理、核间同步 | 算子开发重点检视 | 13 条 |
| SIMT API C风格化规范 | references/simt-api-analysis.md | C++风格API转换为C风格API、变量名冲突、头文件位置 | SIMT kernel代码API检视(仅 Kernel 侧) | 13 条 |
重要:领域特定规则需先分析代码所属的适用场景,再启用对应的领域检视规则,不应无条件全量启用。
| 文档名称 | 文档路径 | 检视范围 | 适用场景 | 条款数 |
|---|---|---|---|---|
| MC² 领域规则 | references/mc2-specific.md | 通信同步、MoE专家路由、量化精度、硬件约束、HCCL通信与安全 | MC²(Matrix Computation & Communication)通算融合算子代码检视。满足核心特征(C1~C2)且不属于排除场景时启用,检视方法见 references/mc2-specific.md 的「PR 差异→规则速查」表 | 19 条 |
重要:检视 Kernel 代码涉及 API 用法时,必须使用
/ascendc-docs-searchskill 查阅 API 文档,禁止凭记忆或推测判断。
| API 类别 | 具体 API | 检视关注点 |
|---|---|---|
| 数据搬运 | DataCopy, DataCopyPad | 对齐要求、同步机制 |
| 内存管理 | InitBuffer, AllocTensor, FreeTensor, EnQue, DeQue | 配对要求 |
| 向量计算 | Add, Sub, Mul, Div, Cast | 参数限制、精度处理 |
| 归约操作 | ReduceSum, ReduceMax | 中间精度保护 |
| SIMT 线程管理 | GetThreadNum, GetThreadIdx, GetBlockIdx, GetBlockNum | C++风格→C风格转换、维度选择 |
| SIMT 数学运算 | UintDiv, Min, Max, Floor, Ceil, Abs | C++风格→C风格转换、UintDiv保留 |
| SIMT 核函数调用 | VF_CALL, Dim3 | C++风格→C风格转换 |
| SIMT 原子操作 | AtomicAdd, AtomicSub | C++风格→C风格转换 |
| SIMT 同步 | ThreadBarrier | C++风格→C风格转换 |
查阅方法:调用 /ascendc-docs-search skill,输入 API 名称即可获取官方文档。
cpp-secure.mdpython-secure.mdcpp-style.md 或 cpp-general.mdcompile-secure.mdsimt-api-analysis.md/ascendc-docs-search skill 查阅 API 文档DataCopy、DataCopyPad、EnQue、DeQue、Cast 等GetThreadNum、GetThreadIdx、UintDiv、VF_CALL 等步骤1:代码段识别
将目标代码划分为独立的代码段(函数、语句块、逻辑单元)
步骤2:假设建立
对每个代码段建立假设:
步骤3:证据收集与评估
按维度系统性寻找证据:
| 证据类型 | 分析动作 | 分值规则 |
|---|---|---|
| 规范违反 | 对照规范条款识别违规点 | 有效证据 +40% |
| 上下文防御缺失 | 检查作用域内是否有防御代码 | 无防御 +30% |
| 函数调用链风险 | LSP/Grep 分析调用函数内部逻辑 | 发现风险 +25% |
| 数据流追踪风险 | 分析变量来源、运算过程 | 发现风险 +25% |
分析要求:
/ascendc-docs-search skill 查阅官方文档,禁止凭记忆或推测步骤4:证据有效性校验
排除误报:
步骤5:决策判断
计算自信值并决策:
若调用方(如 ascendc-ops-reviewer)明确要求不生成报告文件,跳过本阶段,仅返回逐条检视结果。
/ascendc-docs-search skill 学习 Ascend C 基础 API 文档:获取 DataCopy、EnQue/DeQue、Cast 等核心 API 的官方文档,禁止凭记忆或推测判断references/simt-api-analysis.md:了解 C++ 风格 API 到 C 风格 API 的转换规则,特别注意 UintDiv 必须保留GetThreadNum → blockDim.x)Simt::UintDiv 必须保留,禁止转换(官方规定,无 C 风格替代)threadIdx、blockIdx、blockDim、gridDim(与 C 风格 API 冲突)simt_api/asc_simt.h 必须在 namespace 外部TOPK 问题清单详见:
references/ascendc-topk.md(含 13 条高频检视问题,标注 Host/Kernel 适用范围)
SIMT API C风格化规范详见:
references/simt-api-analysis.md(含 13 条 API 转换规则,仅 Kernel 侧适用)
详见:agents/ascendc-ops-reviewer/style/code_review_summary_style.txt