核心功能
cann-review 是专为华为CANN(Compute Architecture for Neural Networks)项目设计的自动化代码审查技能。它通过GitCode API直接操作,无需浏览器自动化,实现对Pull Request的高效审查。
核心用法
1. 手动审查模式:用户指定PR链接,技能自动获取代码变更,执行多维度检查,生成结构化报告并发布评论
2. 自动审查模式:定时扫描配置的仓库,对新提交的PR进行批量审查(10分钟间隔扫描)
显著优点
- 高效稳定:直接调用GitCode API,避免了浏览器自动化的不稳定因素
- 多维度检查:覆盖内存安全(malloc/free配对、RAII模式)、安全漏洞(缓冲区溢出、空指针、类型转换)、代码可读性(命名规范、注释完整性)
- 智能分级:按Low/Medium/High/Critical四级评估严重程度,给出明确的合入建议
- 建设性反馈:不仅指出问题,还提供具体的改进方案和代码示例
- 企业级安全:API Token通过配置文件(权限600)或环境变量管理,避免敏感信息泄露
潜在局限
- API依赖:受GitCode API稳定性和频率限制约束(50次/分钟,4000次/小时)
- 语言局限:主要针对C/C++/Python,对其他语言支持有限
- 上下文理解:AI审查基于静态代码分析,可能遗漏业务逻辑层面的问题
- 已合并PR限制:部分项目设置禁止在已合并PR上发布评论
适合人群
- CANN项目开发者及维护者
- 需要自动化代码审查的C/C++开发团队
- 追求代码质量和内存安全的嵌入式/AI芯片开发团队
常规风险
- 误报风险:AI可能产生误报,报告明确声明"仅供参考,建议人工复核"
- Token安全:需妥善保管GitCode API Token,避免硬编码或日志泄露
- 网络依赖:完全依赖GitCode API可用性和网络连接