H
HuggingPT

中文代码审查

code-review-zhv1.0.0下载 0
下载 .zip

当用户需要审查代码改动、评估 Pull Request 或排查潜在缺陷时使用。包含按优先级分层的检查路径、需要重点怀疑的模式,以及审查意见的表述方式。

怎么用这个 Skill

  1. 点上面的「下载 .zip」,解压得到 code-review-zh/ 目录。
  2. 把整个目录放进你 agent 的 skills 目录(Claude Code 为 .claude/skills/)。
  3. 正常提需求即可——agent 判断相关时会自行加载它,不需要你每次粘贴。

也可以配置下方的 MCP,让 AI 直接在线读取,连下载都省掉。

SKILL.md

---
name: code-review-zh
description: 当用户需要审查代码改动、评估 Pull Request 或排查潜在缺陷时使用。包含按优先级分层的检查路径、需要重点怀疑的模式,以及审查意见的表述方式。
---

# 中文代码审查

## 审查顺序

按这个优先级走,不要一上手就挑格式问题:

### 第一层:正确性(必须发现)

- **边界条件**:空数组、空字符串、0、null/undefined、单元素、超长输入
- **异步与并发**:竞态、未处理的 rejection、事务边界、重复提交
- **错误处理**:catch 里是否吞掉了原始错误;错误状态码是否被覆盖成统一的 500
- **数据一致性**:多步写入是否有中间失败的可能,失败后是否留下脏数据
- **认证与授权**:写操作是否都校验了身份;能否越权访问他人数据

### 第二层:可靠性

- 外部依赖失败时的行为(超时、重试、降级)
- 资源释放(连接、文件句柄、定时器、事件监听)
- 日志是否足够定位问题——尤其 catch 块里是否记录了原始错误

### 第三层:可维护性

- 命名是否表达意图
- 是否与周边代码风格一致(缩进、注释密度、命名习惯)
- 是否有重复逻辑该抽取,或过早抽象该内联

### 第四层:风格

交给 linter。人工审查花在这里是浪费。

## 高频怀疑模式

这些模式一出现就值得停下来细看:

| 模式 | 为什么可疑 |
| --- | --- |
| `catch (e) {}` 或 catch 里不记日志 | 真实原因被永久丢弃,线上无法排查 |
| catch 里统一抛 500 | 会把 401/403/404 覆盖成 500,客户端无法区分 |
| 变量声明在使用之后 | 可能触发暂时性死区错误 |
| 直接用请求参数拼查询 | 注入风险 |
| 密码、密钥有硬编码兜底值 | 配置缺失时静默使用弱默认值 |
| 权限判断在客户端 | 绕过成本极低 |
| 循环里发请求或查库 | N+1 问题 |
| 新增字段但没更新索引 | 查询退化为全表扫描 |
| 时间用本地时区 | 跨时区行为不一致 |
| 浮点数做金额计算 | 精度丢失 |

## 意见怎么写

**分级标注**,让作者知道哪些必须改:

- `[阻塞]` 会导致错误行为,必须改
- `[建议]` 可以更好,作者可自行判断
- `[疑问]` 我没看懂,想确认意图

**给出具体场景而不是判断。** 不写"这里有 bug",写"当 items 为空数组时,第 12 行的 items[0] 会是 undefined,第 15 行访问 .id 会抛错"。可复现的场景无法争辩,抽象的判断会引起防御。

**不要要求对方证明自己没错。** 如果不确定,用 `[疑问]` 而不是断言。

## 审查者自己的自查

- 我是否读完了完整的改动,而不是只看了 diff 片段?
- 我提的每条"阻塞",能否说出一个具体的失败输入?
- 我是否在用个人偏好冒充工程标准?
- 如果这份代码由我维护半年,哪一处会让我最难受?

变更记录

  • v1.0.0初版:四层审查顺序、高频怀疑模式表、意见表述规范

在你的 AI 客户端里直接调用

配置一次,之后在 Claude Desktop、VS Code 等支持 MCP 的客户端里就能直接检索本站内容,不用再回网页复制。

写入 claude_desktop_config.json(macOS 在 ~/Library/Application Support/Claude/,Windows 在 %APPDATA%\Claude\)

{
  "mcpServers": {
    "huggingpt": {
      "command": "node",
      "args": [
        "/绝对路径/mcp/server.js"
      ],
      "env": {
        "API_BASE_URL": "https://huggingpt.com"
      }
    }
  }
}
还没装过 MCP 服务器?展开三步说明
  1. 下载 huggingpt-mcp.zip 并解压到任意目录。
  2. 在该目录执行 npm install(依赖已在包内声明)。
  3. 把上面的配置写进客户端配置文件,并把 /绝对路径/mcp/server.js 换成解压后 server.js 的实际路径,重启客户端。

完整说明见 MCP 接入指南

配置好后,直接对 AI 说「找几个写小红书文案的提示词」或「列出移动端的 UI 设计风格」即可。