mcpField
C
code-review

code-review

github.com/lobehub测试与质量83.6k56 次安装今天更新
代码仓库

关于 code-review

面向本地 CLI 代码审查的指南,供审查者按正确性、安全、测试和项目约定检查差异。它提供逐条验证问题并按优先级、文件和行号输出的格式。

主要功能

  1. 01差异审查检查清单
  2. 02涵盖安全与测试
  3. 03检查国际化与路由
  4. 04提示云端部署影响
  5. 05规定问题输出格式

适用场景

  1. 01审查本地代码差异
  2. 02检查修复是否有测试覆盖
  3. 03识别可能影响云端部署的改动

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/lobehub/lobehub --skill code-review

安装后在 Claude Code 中输入/code-review确认已加载。

详细介绍

代码审查指南

开始之前

  1. 阅读 /typescript 和 /testing 技能,了解代码风格和测试约定
  2. 获取差异(如果上下文中已有,例如由 GitHub 审查应用注入,则跳过):git diff 或 git diff origin/canary..HEAD

检查清单

正确性
  • 遗留的 console.log / console.debug — 应使用 debug 包或将其删除
  • 在 try/catch 中缺少 return await — 参阅 https://typescript-eslint.io/rules/return-await/(目前尚未纳入我们的 ESLint 配置,需要类型信息)
  • 修复/实现能否更简洁、高效,或兼容性更好?
安全性
  • 不要在 console.* 或 debug() 输出中暴露敏感数据(API 密钥、令牌、凭据)
  • 不要向终端输出 base64 内容 — 内容极长,会导致输出卡死
  • 不要硬编码机密 — 使用环境变量
测试
  • 修复 Bug 必须包含覆盖修复场景的测试
  • 新逻辑(服务、store 操作、工具函数)应有测试覆盖
  • 现有测试是否仍覆盖变更后的行为?
  • 优先使用 vi.spyOn 而非 vi.mock(参阅 /testing 技能)
i18n
  • 新增面向用户的字符串应使用 i18n 键,而非硬编码文本
  • 在 src/locales/default/{namespace}.ts 中添加键,命名格式为 {feature}.{context}.{action|status}
  • 对于 PR:更新所有语言的 locales/ 翻译(pnpm i18n)
SPA / 路由
  • desktopRouter 配对: 如果差异涉及 src/spa/router/desktopRouter.config.tsx,是否也以相同的路由路径和嵌套结构更新了 src/spa/router/desktopRouter.config.desktop.tsx?只修改单个文件往往会导致不一致和空白页面。
复用
  • 新编写的代码是否重复了 packages/utils 或共享模块中的现有工具函数?
  • 有细微差异的复制粘贴代码块 — 应提取为共享函数
  • antd 导入是否可以替换为 @lobehub/ui 封装的组件(Input、Button、Modal、Avatar 等)?
  • 使用 antd-style 令牌系统,不要硬编码颜色;优先使用 createStaticStyles + cssVar.*,而非 createStyles + token,除非需要运行时计算
数据库
  • 迁移脚本必须具备幂等性(使用 IF NOT EXISTS、IF EXISTS 保护)
云端影响

下游云端部署依赖此仓库。请标记可能需要更新云端的变更:

  • 后端路由路径变更 — 例如,重命名 src/app/(backend)/webapi/chat/route.ts 或更改其导出内容
  • SSR 页面路径变更 — 例如,移动或重命名 src/app/[variants]/(auth)/ 下的文件
  • 依赖版本升级 — 例如,在 package.json 中升级 next 或 drizzle-orm
  • @lobechat/business-* 导出变更 — 例如,重命名 src/business/ 中的函数,或更改 packages/business/ 中的类型签名
  • src/business/ 和 packages/business/ 不得在注释或代码中暴露云端商业逻辑

输出格式

仅用于本地 CLI 审查(GitHub 审查应用会直接发布行内 PR 评论):

  • 按顺序为所有发现的问题编号
  • 标明优先级:[high] / [medium] / [low]
  • 为每个问题注明文件路径和行号
  • 只列出问题 — 不要写总结或赞扬
  • 重新阅读每个问题对应的完整源代码,确认问题确实存在,然后输出“已验证所有问题。”

评论

支持 Markdown