1. 基本信息
| 项目 | 内容 |
|---|---|
| 名称 | React Doctor |
| 作者/维护者 | Million Software, Inc.(创始人 Aiden Bai,Million.js、react-scan 作者) |
| 来源链接 | https://github.com/millionco/react-doctor |
| 许可证 | 改良版 MIT(数据来自仓库 LICENSE 文件;限制:不得作为 AI 训练/微调数据使用,不得转售为托管或付费 SaaS 服务) |
| GitHub Stars | 14,022(数据来自 GitHub API,截至 2026-07-21) |
| Forks | 450(数据来自 GitHub API) |
| 最新版本 | npm 最新发布 0.8.1(数据来自 npm Registry API) |
| 安装方式 | npx react-doctor@latest |
2. 功能介绍与亮点
React Doctor 对 React 代码库做确定性(非依赖 LLM 猜测)静态扫描,基于 Rust 实现的 oxlint 引擎,内置约 100 条 React 专属规则,覆盖 state/effects、性能、架构、安全、可访问性五大类问题,输出 0–100 健康分。--scope changed 模式只报告本次改动引入的新问题,避免历史包袱刷屏。内置集成 knip 的死代码检测。提供五种使用形态:CLI、GitHub Action(自动在 PR 中评论)、oxlint 插件、ESLint 插件、agent 技能安装器,可覆盖从个人开发到团队 CI 流水线的完整链路。npm 过去 30 天(2026-06-20 至 2026-07-19)下载量为 319 万次(数据来自 npm 官方下载统计 API),显示这是一款已被广泛用于生产环境的工具,而非概念验证项目。
3. 适用场景
固定分类:工程效率与代码质量
适合使用 Claude Code、Codex 等编码 agent 开发 Next.js、Vite、TanStack、React Native、Expo 等 React 技术栈的团队与个人开发者,尤其是希望在 agent 写代码的同时就规避常见反模式(如不必要的 useEffect、prop drilling、无障碍缺陷),或希望在 CI 中自动拦截 agent 引入的新问题的场景。
4. 跨 Agent 兼容性
- Claude Code:✅ 原生支持——
npx react-doctor@latest install写入的 SKILL.md 明确面向 Claude Code - Codex:✅ 原生支持——官方文档与第三方技术文章均列出 Codex 为支持对象
- OpenClaw:❓ 未验证——官方文档提及支持 Cursor、OpenCode 等 50+ 客户端,未见提及 OpenClaw
- Hermes Agent:❓ 未验证——同上,未见相关信息
(判断依据:仓库 README、SKILL.md 及第三方技术文章)
5. 推荐理由
确定性静态分析(而非依赖 LLM 去猜测代码是否有问题),配合真实、可验证的大规模采用数据(npm 月下载 319 万次),说明这不是概念验证项目而是已被广泛用于生产的工具;免 API Key、免账号,npx 一行命令即可运行;同时提供 CLI、CI、agent 技能三种使用形态,覆盖从个人开发到团队流水线的完整需求。
6. 评分
| 维度 | 分数 | 说明 |
|---|---|---|
| 受欢迎程度 | 9 | GitHub 14,022 stars,npm 月下载 319 万次(2026-06-20 至 2026-07-19),创始人 Aiden Bai 是 Million.js、react-scan 等知名开源项目作者,第三方技术文章持续覆盖 |
| 可用性 | 9 | npx 一行运行,免 API Key、免注册;SKILL.md 与官方文档详尽;截至 2026-07-21 仍有代码提交,维护活跃;核心扫描功能免费 |
| 安全性 | 8 | 见下方检查清单 |
综合评分(三项均值):8.7
安全检查清单:
- ① Shell 命令:CLI 本地执行代码扫描,范围明确(读取源码、生成报告),不涉及自动提交或开 PR
- ② 联网外发:默认向 Sentry 发送匿名遥测(CLI 版本、命令类型、规则命中次数),官方文档明确声明不含文件内容与具体问题详情,可用
--no-telemetry关闭;/doctor触发的完整分诊流程会额外从 react.doctor 官方域名实时拉取一份执行手册,手册内容由作者持续更新、不锁定在仓库快照里,但拉取目标与已安装 CLI 的来源域名一致,非未知第三方 - ③ 凭据:不需要 API Key 或账号
- ④ 可疑指令:未发现混淆代码或隐蔽外发;上述“实时拉取手册”设计已在 SKILL.md 中公开说明,非隐蔽行为,但意味着具体执行步骤会随作者更新而变化
- ⑤ 作者信誉:Million Software, Inc.,创始人 Aiden Bai 是知名开源项目作者,无刷星或造假迹象
- ⑥ License:改良版 MIT,条款清晰(见第 1 章)
- ⑦ 维护:截至 2026-07-21 仍有代码提交,属活跃维护
7. 跟同类 Skills 相比的优势
| 项目 | 定位 | 与 React Doctor 的差异 |
|---|---|---|
| jscpd | 通用跨语言复制粘贴检测器,支持 223 种格式,近期加装了 agent 技能与 MCP server | 通用型工具,不针对 React 语义(状态管理、渲染性能等)做专项分析,规则库不区分框架 |
| Brooks Lint | 依据 12 本经典工程书籍的启发式规则做 AI 代码评审 | 面向通用工程实践与可读性,非确定性静态分析,不产出可复现的 0–100 健康分 |
| Bug Hunter | 面向多编码 agent 的对抗式 bug 猎手,自主定位并修复安全漏洞、逻辑错误 | 覆盖范围更广、不限于 React,修复方式是 agent 自主对代码打补丁,而非规则化的静态扫描 |
| Agnix | 校验 CLAUDE.md/AGENTS.md/SKILL.md 等 agent 配置文件本身是否规范 | 检查对象是“agent 的配置”而非应用代码质量,与 React Doctor 互补而非直接竞争 |
React Doctor 的差异化在于:专注 React 生态、确定性规则(可解释、可复现的健康分),并以 CLI、CI、agent 技能三种形态打通全流程,配合真实、可验证的大规模采用数据。
8. 用户评价
- Stanley Ulili(Better Stack Community 技术博客作者):称 React Doctor 具有“exceptional”(出色)的开发体验,“是强制执行代码质量的强大工具”,并指出得益于 Rust 实现的 oxlint 引擎运行速度快。来源:https://betterstack.com/community/guides/scaling-nodejs/react-doctor/
- GitHub 仓库 issue 区可见来自不同用户(如 xballoy、Danil42Russia、JuJup 等)的具体使用反馈与功能请求(如 CI 中 Node 版本兼容性问题、行内规则抑制注释的边界情况),显示该工具已被用于真实项目的日常工作流。
9. 其他补充
v1 于 2026 年 2 月发布;v2 在此基础上重点强化了 agent 技能安装形态。项目采用 pnpm workspace monorepo 结构,主仓库同时包含另一个子技能 improve-react。
10. 安装使用方式
- 一次性体检:
npx react-doctor@latest - 只看本次改动引入的新问题:
npx react-doctor@latest --verbose --scope changed - UI 设计专项审查:
npx react-doctor@latest design --verbose - 安装为编码 agent 技能:
npx react-doctor@latest install(写入 Claude Code / Cursor / Codex / OpenCode 等技能目录) - 接入 CI(GitHub Actions):
npx react-doctor@latest ci install - 关闭遥测:追加
--no-telemetry参数
安装后注意事项:无需重启终端或 IDE;/doctor 触发的完整分诊流程会从官方域名实时拉取脚本执行,首次使用建议先跑一次不带 --scope changed 的全量扫描,建立健康分基线。
11. 注意事项
- 许可证为改良版 MIT,非标准 OSI 许可证:禁止将本项目用作 AI 训练/微调数据,也禁止将其转售为托管或付费 SaaS 服务;个人与团队正常使用不受影响
- 默认开启匿名遥测(可关闭);
/doctor工作流会实时联网拉取执行手册,具体步骤随作者更新而变化,不是固定在仓库快照里的内容 - 目前仅明确验证支持 Claude Code、Cursor、Codex、OpenCode,OpenClaw 与 Hermes Agent 兼容性未验证
- 专注 React 生态,非 React 代码库无法使用