Agent skill

Cann Review

by LeoYeAI in LeoYeAI/openclaw-master-skills

CANN 代码审查技能。用于审查 GitCode 上的 CANN 项目 PR. An agent skill from LeoYeAI/openclaw-master-skills.

MITAuto-check passed

Install Cann Review

skills CLI
$ npx skills add LeoYeAI/openclaw-master-skills --skill cann-review -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install LeoYeAI/openclaw-master-skills cann-review --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/LeoYeAI/openclaw-master-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/cann-review .claude/skills/cann-review && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
cann-review
GitHub stars
2.2k
Token cost
~3k tokens
SKILL.md length
616 words
Files
44
Skills in repo
1,235
Repo updated
First seen
Licence
MIT

At a glance

CANN 代码审查技能。用于审查 GitCode 上的 CANN 项目 PR. An agent skill from LeoYeAI/openclaw-master-skills.

  • Works in 4 steps: 扫描所有仓库 → 解析待审查列表 → 逐个审查 PR → …
  • SKILL.md covers 重要:使用 GitCode API, 任务目标, 执行步骤 and 严重程度判定标准, plus 6 more sections
  • Runs Shell scripts from its folder; calls curl, bash and python3; reaches gitcode.com and api.gitcode.com; needs GITCODE_API_TOKEN

What it does

Cann Review is an agent skill from LeoYeAI/openclaw-master-skills. CANN 代码审查技能。用于审查 GitCode 上的 CANN 项目 PR。 当用户提到"审查 PR"、"代码审查"、"cann review"或提供 GitCode PR 链接时触发。 自动分析代码变更,检查内存泄漏、安全漏洞和可读性,生成结构化报告并发布评论。

Its SKILL.md is about 3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 43 other files (for example `AUTO_REVIEW_GUIDE.md`, `Auto_review_config.md` and `CHANGELOG-DISABLE-LGTM.md`).

It works with C++. The repository describes itself as: 🧠 Curated collection of 1209+ best OpenClaw skills — weekly updated by MyClaw.ai. The licence is MIT.

Example prompts

  • “cann review”
  • “/cann-review”

Requirements

  • Python 3
  • A Bash shell
  • A credential in GITCODE_API_TOKEN

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. 扫描所有仓库
  2. 解析待审查列表
  3. 逐个审查 PR
  4. 生成汇总报告

What it can do on your machine

Read from SKILL.md and the folder at commit e5199b5. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships script files (Shell, from the files we listed), which the agent can run.

    Shell commands in SKILL.md call:

    • curl
    • bash
    • python3

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • gitcode.com
    • api.gitcode.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • GITCODE_API_TOKEN

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Cann Review loads about 3k tokens when it runs. Until then it costs about 36 tokens; SKILL.md has 616 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~36
When it runs · the whole SKILL.md, loaded when a task matches
~3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from LeoYeAI/openclaw-master-skills at commit e5199b5, republished under its MIT licence (© LeoYeAI). 616 words, ~3,010 tokens.

Download SKILL.mdSave it as .claude/skills/cann-review/SKILL.md (or your agent's skills folder). This skill also uses 43 other files; get the full folder from GitHub.
name
cann-review
description
CANN 代码审查技能。用于审查 GitCode 上的 CANN 项目 PR。 当用户提到"审查 PR"、"代码审查"、"cann review"或提供 GitCode PR 链接时触发。 自动分析代码变更,检查内存泄漏、安全漏洞和可读性,生成结构化报告并发布评论。

CANN 代码审查技能

你是一位资深的 C/C++/Python 代码工程师,专门负责审查 CANN 项目的 Pull Request。

重要:使用 GitCode API

本技能使用 GitCode API 进行所有操作,无需浏览器自动化,确保稳定性和可靠性。

🔧 首次使用配置

安装技能后,需要配置 GitCode API Token:

方法 1:使用配置向导(推荐)
bash
cd ~/.openclaw/workspace/skills/cann-review
./gitcode-api.sh setup

按提示输入你的 GitCode API Token。

方法 2:手动配置
bash
# 复制配置模板
cd ~/.openclaw/workspace/skills/cann-review
cp config/gitcode.conf.example config/gitcode.conf

# 编辑配置文件
nano config/gitcode.conf

设置 GITCODE_API_TOKEN=your_token_here

方法 3:环境变量
bash
export GITCODE_API_TOKEN=your_token_here
🔑 获取 GitCode API Token
  1. 访问 https://gitcode.com/setting/token-classic
  2. 点击"生成新令牌"
  3. 选择权限:api, write_repository
  4. 复制生成的 Token
配置文件位置
  • 配置文件: ~/.openclaw/workspace/skills/cann-review/config/gitcode.conf
  • 权限: 600(仅当前用户可读写,保护敏感信息)
配置优先级
  1. 环境变量 GITCODE_API_TOKEN(最高优先级)
  2. 配置文件 config/gitcode.conf
  3. 默认值(无)
API 认证方式

配置完成后,所有 API 请求会自动添加认证头:

bash
Authorization: Bearer $GITCODE_API_TOKEN

任务目标

对指定的 PR 进行全面代码审查,重点检查:

  1. 内存泄漏 - 动态内存分配是否正确释放
  2. 安全漏洞 - 缓冲区溢出、空指针解引用、类型转换问题
  3. 代码可读性 - 命名规范、注释完整性、代码结构

执行步骤

步骤 1: 解析 PR URL 并获取基本信息

从 PR URL 中提取项目信息和 PR 编号:

示例 URL: https://gitcode.com/cann/runtime/merge_requests/628
项目路径: cann/runtime
PR 编号: 628

使用 API 获取 PR 基本信息:

bash
curl -H "Authorization: Bearer 5_EtXLq3jGyQvb6tWwrN3byz" \
  "https://api.gitcode.com/api/v5/repos/cann/runtime/pulls/628"

返回信息包括:

  • PR 标题、描述、状态
  • 作者、审查者、测试者
  • 标签(lgtm, approved 等)
  • 创建时间、更新时间
  • 源分支、目标分支
步骤 2: 获取代码变更

使用 API 获取所有变更的文件:

bash
curl -H "Authorization: Bearer 5_EtXLq3jGyQvb6tWwrN3byz" \
  "https://api.gitcode.com/api/v5/repos/cann/runtime/pulls/628/files"

返回信息包括:

  • 文件名、路径
  • 新增行数、删除行数
  • diff 补丁内容
  • blob_url 和 raw_url(可用于获取完整文件内容)

重点关注:

  • 新增的 .c, .cc, .cpp, .h, .hpp 文件
  • 内存管理相关代码 (malloc, free, new, delete, memcpy 等)
  • 指针操作和类型转换
  • API 接口定义
步骤 3: 分析代码

对每个变更文件进行审查:

内存泄漏检查清单
  • malloc/calloc/realloc 是否有对应的 free
  • new 是否有对应的 delete
  • 异常路径下是否正确释放资源
  • 使用 RAII 模式管理资源
  • 容器内存管理是否合理
安全检查清单
  • 指针使用前是否进行空检查
  • 数组/缓冲区边界检查
  • memcpy_s 等安全函数的使用
  • 整数溢出检查
  • 类型转换安全性
可读性检查清单
  • 变量/函数命名是否清晰
  • 是否有适当的注释
  • 代码结构是否清晰
  • 是否遵循项目代码风格
步骤 4: 生成审查报告

重要:审查结论必须放在最前面,然后是详细分析。

按以下格式生成报告:

markdown
## 🤖 CANN 代码审查报告

**PR**: #<pr_number> - <pr_title>
**严重性**: <✅ Low / ⚠️ Medium / ❌ High / 🔴 Critical>
**审查时间**: <YYYY-MM-DD HH:MM>

---

### 📊 审查结论

**<✅ 建议合入 / ⚠️ 建议修改后合入 / ❌ 需要修改>**

- **严重性**: <Low/Medium/High/Critical>
- **代码质量**: <优秀/良好/一般/需改进>
- **内存安全**: <✅ 无风险 / ⚠️ 有风险 / ❌ 存在问题>
- **安全性**: <✅ 无漏洞 / ⚠️ 有隐患 / ❌ 存在漏洞>
- **测试覆盖**: <完整/部分/缺失>
- **文档完整性**: <完整/部分/NA>

<简要评价:一句话总结代码质量和建议>

---

### 📋 修改概述

<描述本次 PR 的主要变更内容>

- **修改文件**: <N>个 (+<X>行, -<Y>行)
- **核心变更**:
  - `<file1>`: <变更描述>
  - `<file2>`: <变更描述>
  - `<file3>`: <变更描述>

---

### 🔍 代码质量检查

#### 1. 内存安全 <✅/⚠️/❌>
- **内存泄漏**: <无风险/有风险/存在问题>
- **指针操作**: <安全/需注意/有问题>
- **动态分配**: <合理/需优化/有问题>
- **资源管理**: <RAII/手动管理/存在问题>

#### 2. 安全性 <✅/⚠️/❌>
- **输入验证**: <完整/部分/缺失>
- **边界检查**: <完整/部分/缺失>
- **潜在漏洞**: <无/有/严重>

#### 3. 可读性 <✅/⚠️/❌>
- **代码清晰度**: <优秀/良好/一般/需改进>
- **命名规范**: <符合/部分符合/不符合>
- **注释完整性**: <完整/部分/缺失>

#### 4. 逻辑正确性 <✅/⚠️/❌>
- **算法逻辑**: <正确/需验证/有问题>
- **边界条件**: <处理完整/部分处理/未处理>
- **影响范围**: <明确/需评估/不明确>

---

### 💡 改进建议

1. **<建议类别1>**: <具体建议>
2. **<建议类别2>**: <具体建议>

---

### ✅ 代码亮点

- <列出代码中做得好的地方>

总体评价:<简要总结>

---

> ⚠️ **声明**: 本审查报告由 AI 自动生成,仅供参考。建议人工复核后再做最终决定。
步骤 5: 发布审查评论

使用 API 发布审查评论(简单可靠):

bash
curl -X POST \
  -H "Authorization: Bearer 5_EtXLq3jGyQvb6tWwrN3byz" \
  -H "Content-Type: application/json" \
  -d '{"body":"<审查报告内容>"}' \
  "https://api.gitcode.com/api/v5/repos/cann/runtime/pulls/628/comments"

注意事项:

  • 评论内容需要转义 JSON 字符串(换行符用 \n,引号用 \")
  • API 会返回评论 ID 和 note_id,表示发布成功
  • 如果 PR 已合并,可能无法发布评论(根据项目设置)

示例:

bash
# 使用 heredoc 处理多行文本
COMMENT=$(cat <<'EOF'
## 🤖 CANN 代码审查报告

**PR**: #628 - 示例标题
**严重性**: ✅ Low

### 📊 审查结论
代码质量良好,可以合入
EOF
)

# 发布评论
curl -X POST \
  -H "Authorization: Bearer 5_EtXLq3jGyQvb6tWwrN3byz" \
  -H "Content-Type: application/json" \
  -d "{\"body\":\"$(echo "$COMMENT" | sed 's/"/\\"/g' | sed ':a;N;$!ba;s/\n/\\n/g')\"}" \
  "https://api.gitcode.com/api/v5/repos/cann/runtime/pulls/628/comments"

严重程度判定标准

等级条件是否可合入
Low仅有建议性改进✅ 可以
Medium有一般性问题,不影响功能⚠️ 建议
High有严重问题,可能导致缺陷❌ 需要
Critical有安全漏洞或严重内存问题❌ 需要

C/C++ 常见问题模式

内存泄漏模式
cpp
// 危险: 忘记释放
char* buffer = (char*)malloc(size);
// ... 使用后没有 free(buffer)

// 安全: 使用智能指针
std::unique_ptr<char[]> buffer(new char[size]);
安全漏洞模式
cpp
// 危险: 没有边界检查
void process(const char* input) {
    char buffer[256];
    strcpy(buffer, input);  // 潜在缓冲区溢出
}

// 安全: 使用安全函数
void process(const char* input) {
    char buffer[256];
    errno_t err = strcpy_s(buffer, sizeof(buffer), input);
    if (err != 0) {
        // 处理错误
    }
}
空指针模式
cpp
// 危险: 没有空检查
void process(Object* obj) {
    obj->method();  // 如果 obj 为空会崩溃
}

// 安全: 添加空检查
void process(Object* obj) {
    if (obj == nullptr) {
        return ERROR_INVALID_PARAM;
    }
    obj->method();
}

输入参数

  • pr_url: PR 页面链接 (必需)
  • focus_areas: 审查重点 (memory/security/readability/all),默认 all

输出

返回审查结果 JSON:

json
{
  "severity": "low",
  "can_merge": true,
  "issues_count": 2,
  "comment_posted": true,
  "summary": "代码质量良好,可以合入"
}

自动审查模式

当 skill 被定时任务触发时,执行批量自动审查流程。

⚡ 工作方式

10分钟间隔扫描,逐个审查:

  1. 扫描所有配置的仓库 → 读取 config/repos.conf
  2. 筛选过去10分钟内提交的 PR → 根据更新时间过滤
  3. 收集所有待审查 PR → 保存到 .pending-reviews.json
  4. 逐个审查每个 PR → 完整的代码审查流程
  5. 发布审查评论 → 使用 GitCode API
  6. 生成汇总报告 → 展示所有审查结果

特点:

  • ✅ 每10分钟扫描过去10分钟内新提交的 PR
  • ✅ 逐个审查,确保每个 PR 都得到完整审查
  • ✅ 无状态设计,不记录历史审查记录
  • ✅ 生成汇总报告,一目了然
  • ✅ 支持跨小时、跨天的时间区间计算
🔧 配置审查仓库

首次使用需要配置要审查的仓库列表:

方法 1:使用配置文件(推荐)
bash
cd ~/.openclaw/workspace/skills/cann-review

# 复制配置模板
cp config/repos.conf.example config/repos.conf

# 编辑配置文件
nano config/repos.conf

添加需要审查的仓库(格式: owner/repo),示例:

cann/runtime
cann/compiler
cann/driver
方法 2:使用环境变量
bash
export CANN_REVIEW_REPOS="cann/runtime,cann/compiler,cann/driver"
🔧 配置审查仓库

首次使用需要配置要审查的仓库列表:

方法 1:使用配置文件(推荐)
bash
cd ~/.openclaw/workspace/skills/cann-review

# 复制配置模板
cp config/repos.conf.example config/repos.conf

# 编辑配置文件
nano config/repos.conf

添加需要审查的仓库(格式: owner/repo),示例:

cann/runtime
cann/compiler
cann/driver
方法 2:使用环境变量
bash
export CANN_REVIEW_REPOS="cann/runtime,cann/compiler,cann/driver"
📋 自动审查流程

当定时任务触发时,执行以下流程:

1. 扫描所有仓库

运行扫描脚本:

bash
bash ~/.openclaw/workspace/skills/cann-review/auto-review-final.sh

输出示例:

🤖 CANN 自动审查(10分钟间隔扫描模式)
======================================
开始时间: 2026-03-28 16:30:00
扫描范围: 2026-03-28T16:20:00+08:00 ~ 2026-03-28T16:29:59+08:00

📊 配置信息:
  仓库数量: 3

🔍 扫描所有仓库...
  检查: cann/runtime
    ✅ 发现 2 个10分钟内提交的 PR
  检查: cann/oam-tools
    ✅ 发现 1 个10分钟内提交的 PR
  检查: cann/oam-tools-diag
    ℹ️  时间段内无新 PR

======================================
扫描完成
  待审查 PR 总数: 3

📋 待审查 PR 列表:
  1. cann/runtime#1270 - fix memory leak
     作者: zhaozhixuan
     链接: https://gitcode.com/cann/runtime/merge_requests/1270
  ...

💡 接下来将逐个审查这些 PR...
2. 解析待审查列表

脚本会输出 JSON 格式的待审查列表(在 PENDING_REVIEWS_JSON_START 和 PENDING_REVIEWS_JSON_END 之间):

json
{
  "pending": [
    {
      "repo": "cann/runtime",
      "pr_number": 666,
      "title": "for msprof block dim",
      "author": "zhaozhixuan",
      "url": "https://gitcode.com/cann/runtime/merge_requests/666"
    },
    ...
  ],
  "scan_time": "2026-03-06T10:34:15+08:00"
}
3. 逐个审查 PR

对每个待审查的 PR:

  1. 调用 cann-review skill 进行审查
  2. 使用 API 获取 PR 详情和文件变更
  3. 执行代码审查(步骤 3)
  4. 生成审查报告(步骤 4)
  5. 使用 API 发布评论(步骤 5)
  6. 如适用,发布 LGTM(步骤 6)
  7. 标记为已审查
4. 生成汇总报告

向用户发送汇总消息:

markdown
## 自动审查完成

已审查 25 个 MR:

✅ **cann/runtime** (6 个)
- #666: for msprof block dim - Low - 已发布审查报告
- #665: Dump 支持 - Medium - 已发布审查报告
...

✅ **cann/oam-tools** (13 个)
- #81: 支持用户离线编译 - Low - 已发布审查报告
...

✅ **cann/oam-tools-diag** (6 个)
- #24: revert safe link - Low - 已发布审查报告
...

总计: 25 个 PR 已审查

注意事项

éré新SKILL.md(使用 API 而浏览器自动化),移除

  1. 保持专业和建设性的语气

  2. 指问题的同时给出解决方案

  3. 认可代码中做得好的部分

  4. 遵循项目的代码审查规范

  5. 如果无法访问 API,及时报告错误

  6. 自动审查时,避免重复审查已处理的 PR

  7. 不要在命令行直接传递 Token(会被记录到 history日志)

  8. 使用 API 而非浏览器:所有操作通过 GitCode API 完成,无需浏览器自动化

  9. API 认证:确保请求头包含正确的 Authorization

  10. JSON 转义:发布评论时注意转义特殊字符

  11. 保持专业和建设性的语气

  12. 指出问题的同时给出解决方案

  13. 认可代码中做得好的部分

  14. 遵循项目的代码审查规范

  15. 自动审查时,避免重复审查已处理的 PR

Show full SKILL.md (237 more words)Show less

常见问题

1. 如何配置 GitCode API Token?

首次使用:

bash
cd ~/.openclaw/workspace/skills/cann-review
./gitcode-api.sh setup

重新配置:

bash
# 删除旧配置
rm config/gitcode.conf

# 重新运行配置向导
./gitcode-api.sh setup

或使用环境变量:

bash
export GITCODE_API_TOKEN=your_token_here
2. API 返回 401 Unauthorized

问题:API 请求返回 401 错误。

原因:Token 无效或已过期。

解决方案:

2. 无法在已合并的 PR 上发布评论

问题:评论发布失败,提示 "not allowed to be reviewed after being merged"。

原因:项目设置禁止在已合并的 PR 上发布评论。

解决方案:

  • 这是正常行为,跳过已合并的 PR
  • 或者联系项目管理员修改设置
3. API 请求频率限制

问题:API 返回 429 Too Many Requests。

原因:GitCode API 有频率限制(默认 50次/分钟,4000次/小时)。

解决方案:

  • 在自动审查模式下,添加适当延迟
  • 分批处理大量 PR
  • 避免频繁轮询
4. JSON 转义问题

问题:发布评论时 JSON 解析失败。

原因:评论内容包含未转义的特殊字符。

解决方案:

bash
# 使用 sed 转义引号和换行符
COMMENT_ESCAPED=$(echo "$COMMENT" | sed 's/"/\\"/g' | sed ':a;N;$!ba;s/\n/\\n/g')

# 或使用 Python 的 json.dumps
COMMENT_ESCAPED=$(python3 -c "import json; print(json.dumps('''$COMMENT'''))")
5. 获取大量文件变更时响应缓慢

问题:PR 包含大量文件,API 响应很慢。

原因:GitCode 需要计算和返回所有文件的 diff。

解决方案:

  • 使用分页参数(如果 API 支持)
  • 优先审查高风险文件(.c, .cpp, .h)
  • 跳过纯文档或配置文件

最佳实践

  1. 先浏览再审查:先看一遍所有文件改动,了解整体情况
  2. 重点优先:优先审查高风险代码(内存操作、指针、类型转换)
  3. 建设性反馈:不仅指出问题,还提供改进建议
  4. 平衡语气:既不过于严厉,也不过于宽松
  5. 及时更新:如果发现之前的判断有误,及时更正

版本历史

  • v4.2.1 (2026-03-28 17:35)

    • 🐛 重要修复:定时任务不执行扫描脚本的 bug
    • 📝 更新定时任务指令, - ⚠️ 强制要求每次执行扫描脚本
    • ⚠️ 禁止读取旧的扫描结果文件
    • ✨ 新增标准化执行报告格式
    • 📊 输出格式:任务执行概况 + 扫描结果 + 执行结果
    • 📢 启用自动通知功能(delivery.mode=announce)
  • v4.2.0 (2026-03-28)

    • ⏰ 重大更新:改为10分钟间隔扫描模式
    • 🔄 从"整点扫描"改为"10分钟间隔扫描",更及时的审查
    • 🛠️ 修复UTF-8编码问题,使用临时文件传递JSON数据
    • 🌏 修复时区比较问题,添加+08:00时区支持
    • 📝 更新定时任务配置:从 0 * * * * 改为 */10 * * * *
    • 🎯 支持跨小时、跨天的时间区间计算
  • v4.1.0 (2026-03-27)

    • 🔧 重构自动审查逻辑:整点扫描模式
    • 🚀 移除 max_reviews 限制,审查整点内所有新提交的 PR
    • 🗑️ 移除状态跟踪(.review-state.json),改为无状态设计
    • ⏰ 按更新时间筛选整点范围内的 PR
  • v4.0.1 (2026-03-27)

    • 📝 审查报告末尾添加 AI 生成声明提示
    • ⚠️ 提醒用户 AI 审查仅供参考,建议人工复核
  • v4.0.0 (2026-03-27)

    • 📝 审查报告末尾添加 AI 生成声明提示
    • ⚠️ 提醒用户 AI 审查仅供参考,建议人工复核
  • v3.1.0 (2026-03-27)

    • 📝 审查报告末尾添加 AI 生成声明提示
    • ⚠️ 提醒用户 AI 审查仅供参考,建议人工复核
  • v3.0.2 (2026-03-27)

    • 📝 审查报告末尾添加 AI 生成声明提示
    • ⚠️ 提醒用户 AI 审查仅供参考,建议人工复核
  • v3.0.1 (2026-03-27)

    • 📝 审查报告末尾添加 AI 生成声明提示
    • ⚠️ 提醒用户 AI 审查仅供参考,建议人工复核
  • v3.0.0 (2026-03-04)

    • 🎉 重大更新:全面改用 GitCode API,弃用浏览器自动化
    • ✨ 使用 API 获取 PR 信息和代码变更
    • ✨ 使用 API 发布审查评论
    • 🚀 提高稳定性和可靠性
    • 📝 简化操作流程,无需处理浏览器元素定位
    • 🐛 解决浏览器自动化常见问题(ref 不稳定、元素定位错误等)
  • v2.0.3 (2026-03-03)

    • 🐛 修复 ref 编号不稳定问题
    • 📝 推荐使用 aria refs 和 fill 操作
    • 📝 添加输入后验证步骤
    • 🔧 优化评论输入流程,提高可靠性
  • v2.0.2 (2026-03-03)

    • 🐛 修复评论输入框定位问题
    • 📝 添加常见问题和故障排查指南
    • 📝 优化步骤 5,添加详细说明
  • v2.0.1 (2026-03-03)

    • 🎨 优化报告格式:审查结论前置
    • 🔧 修改标题:去掉 "Runtime"
    • ✨ 更换代码质量检查图标
  • v2.0.0 (2026-03-03)

    • 🎉 新增自动审查模式
    • 🌐 改用 OpenClaw 内置浏览器
    • ⏰ 支持定时任务调度
    • 📊 添加汇总报告功能
    • 📝 完善文档和安装指南
  • v1.0.0 (2026-03-03)

    • 🎉 初始版本发布
    • 🔍 支持内存泄漏检查
    • 🔒 支持安全漏洞检查
    • 📖 支持代码可读性检查
    • 💬 自动发布审查评论

© LeoYeAI, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 43 other files in skills/cann-review of LeoYeAI/openclaw-master-skills.

  • SKILL.md
  • AUTO_REVIEW_GUIDE.md
  • Auto_review_config.md
  • CHANGELOG-DISABLE-LGTM.md
  • CHANGELOG.md
  • CONFIG_UPDATE_SUMMARY.md
  • INSTALL.md
  • MIGRATION.md
  • QUICKSTART.md
  • README.md
  • SETUP_GUIDE.md
  • SINGLE_REVIEW_GUIDE.md
  • UPDATE_SUMMARY.md
  • VERSION_3.1.0_SUMMARY.md
  • _meta.json
  • auto-review-final.sh
  • auto-review-mentions.md
  • auto-review-post-comment.sh
  • auto-review-single-simple.sh
  • auto-review-single-v2.sh
  • auto-review-single.sh
  • … and 23 more

Open the folder on GitHubat commit e5199b5

Compare with similar skills

Cann Review next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Cann Review compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Cann Review this skillLeoYeAI/openclaw-master-skills2.2k—~3kAutomated safety check: PassMIT
Paddle BuildPaddlePaddle/Paddle24k—~1kAutomated safety check: PassApache-2.0
Fory Releaseapache/fory4.6k—~2.9kAutomated safety check: PassApache-2.0
ONNX Runtime Shape Inference Safety Auditmicrosoft/onnxruntime22k—~3.3kAutomated safety check: PassMIT
Code Audit3stoneBrother/code-audit8921 repos~2.7kAutomated safety check: PassNone
Leetcuda Tex To Readthedocsxlite-dev/LeetCUDA12k—~902Automated safety check: PassGPL-3.0

Similar skills

  • Paddle Build

    PaddlePaddle/Paddle

    A skill your agent uses when needing to compile, rebuild, or install Paddle from source after code changes.

    24k GitHub stars~1k tokensUpdated yesterday
    AI & LLM EngineeringAuto-check passed
  • Fory Release

    apache/fory

    Prepare an Apache Fory release candidate from a clean release branch, including the version bump, RC tag, JVM staging, ASF source artifacts, SVN upload, and vote email.

    4.6k GitHub stars~2.9k tokensUpdated yesterday
    Auto-check passed
  • Official

    Finds and fixes out-of-range output writes in ONNX Runtime operator shape-inference functions where a getNumOutputs guard admits too few outputs.

    22k GitHub stars~3.3k tokensUpdated today
    SecurityAuto-check passed
  • Code Audit

    3stoneBrother/code-audit

    Professional code security audit skill covering 55+ vulnerability types.

    892 GitHub starsUsed in 1 repo~2.7k tokens
    SecurityAuto-check passed
  • Leetcuda Tex To Readthedocs

    xlite-dev/LeetCUDA

    LeetCUDA 书稿 LaTeX 到 Read the Docs 站点的转换管线维护 skill(站点目录 LeetCUDA/docs/readthedocs/)。当任务涉及:改完书稿后让站点同步、改转换器 convert/、本地构建与预览 build.sh、内容核对 convert.verify、浏览器验收…

    12k GitHub stars~902 tokensUpdated today
    Documents & OfficeAuto-check passed
  • Qt C++ Code Review

    x-tools-author/x-tools

    Read-only review of Qt6 C++ code that combines a deterministic lint script with six parallel analysis agents and reports only high-confidence issues.

    1.1k GitHub starsUsed in 2 repos~4.3k tokens
    DevelopmentAuto-check passed

More from LeoYeAI/openclaw-master-skills

All 1,200 skills in this repo
  • DevOps Pipeline Management

    LeoYeAI/openclaw-master-skills

    Manages pipelines on a DevOps quality and efficiency platform through its OpenAPI: list workspaces and templates, create, update, run and cancel pipelines, and read run records.

    2.2k GitHub stars~4.2k tokensUpdated 2 mo ago
    Auto-check: notes
  • Feishu Document Collaboration

    LeoYeAI/openclaw-master-skills

    Patches OpenClaw's Feishu extension so an edited document triggers an isolated agent session that reads the doc and replies inline, turning it into a live chat space.

    2.2k GitHub stars~2k tokensUpdated 2 mo ago
    Auto-check passed
  • Files Memory System

    LeoYeAI/openclaw-master-skills

    Multi-context memory management system for OpenClaw agents with group-isolated storage, global shared memory, workspace organization, and group-specific skills isolation.

    2.2k GitHub stars~3.8k tokensUpdated 2 mo ago
    Auto-check passed
  • GEO-Claw AI Visibility Agent

    LeoYeAI/openclaw-master-skills

    Runs a brand's AI-search visibility work end to end: diagnosing how AI platforms represent it, repositioning it, producing AI-optimized content and monitoring ongoing mentions.

    2.2k GitHub stars~4.7k tokensUpdated 2 mo ago
    Auto-check passed
  • Google Workspace CLI

    LeoYeAI/openclaw-master-skills

    Installs and authenticates the gws CLI, then automates Gmail, Drive, Sheets, Calendar, Docs, Chat and Tasks with ready-made recipes, persona bundles and security audits.

    2.2k GitHub stars~2.6k tokensUpdated 2 mo ago
    Auto-check: notes
  • HealthFit Health Advisors

    LeoYeAI/openclaw-master-skills

    Runs four advisor roles, a fitness coach, nutritionist, data analyst and TCM practitioner, to build a health profile and track workouts, diet and wellness over time.

    2.2k GitHub stars~4.4k tokensUpdated 2 mo ago
    Auto-check passed

Works with

Questions about Cann Review

What does Cann Review do?

CANN 代码审查技能。用于审查 GitCode 上的 CANN 项目 PR. An agent skill from LeoYeAI/openclaw-master-skills. Cann Review is an agent skill from LeoYeAI/openclaw-master-skills.

How do I install Cann Review in Claude Code?

Run `npx skills add LeoYeAI/openclaw-master-skills --skill cann-review -a claude-code`. Or copy the skill folder (skills/cann-review in LeoYeAI/openclaw-master-skills) into .claude/skills/cann-review in your project. Claude Code loads it when a task matches its description.

How do I install Cann Review in Codex?

Run `npx skills add LeoYeAI/openclaw-master-skills --skill cann-review -a codex`. Or copy the skill folder (skills/cann-review in LeoYeAI/openclaw-master-skills) into .agents/skills/cann-review in your project. Codex loads it when a task matches its description.

Can I use Cann Review in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add LeoYeAI/openclaw-master-skills --skill cann-review -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/cann-review, .gemini/skills/cann-review, .github/skills/cann-review and .opencode/skills/cann-review in your project.

What does Cann Review need to run?

Going by SKILL.md and its folder, Cann Review needs a shell for the scripts in its folder, the command-line tools its instructions call (curl, bash and python3) and credentials named GITCODE_API_TOKEN. Our summary lists: Python 3; A Bash shell; A credential in GITCODE_API_TOKEN.

Does Cann Review access the network?

SKILL.md names 2 domains. In commands or code: gitcode.com and api.gitcode.com; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.

Is Cann Review safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Cann Review use?

Cann Review is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Cann Review use?

About 3k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Cann Review?

Skills that share tags, products or a category with Cann Review: Paddle Build (PaddlePaddle/Paddle, 24k stars), Fory Release (apache/fory, 4.6k stars), ONNX Runtime Shape Inference Safety Audit (microsoft/onnxruntime, 22k stars) and Code Audit (3stoneBrother/code-audit, 892 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Cann Review?

LeoYeAI (a GitHub user) maintains it in LeoYeAI/openclaw-master-skills, which has 2,161 GitHub stars. The repository holds 1,235 skills in this directory. The repository was last updated on July 20, 2026.

Source: LeoYeAI/openclaw-master-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.