一款在 CI 中运行的 Ruby 工具,用于自动执行 Pull Request 代码审查规范。
danger/danger-js
Danger JS 在 CI 之后运行,用代码自动检查 Pull Request 的评审规范,如 CHANGELOG 和描述要求。
- Star
- 5,519
- Fork
- 386
- 未关闭 Issue
- 171
- 最近提交
- 12天前
这是什么?
Danger JS 在持续集成任务运行之后执行,依据团队自定义的规则检查 Pull Request 或 Merge Request。规则可以自动发出警告、直接失败,或在评审中留下提示,省去评审者反复指出漏写 CHANGELOG、未关联工单、未加标签等问题的重复工作。
规则使用 JavaScript 或 TypeScript 编写,通过 DSL 读取 PR 的元数据,如变更文件、描述内容和标签。它支持 GitHub、Bitbucket Server 和 Bitbucket Cloud 的代码评审,并可与 GitHub Actions、GitLab CI、Circle CI、Travis CI、Jenkins 等多种 CI 系统集成。
通用检查可以打包为插件分享,团队无需从零编写每条规则即可复用。
核心功能
- 01在 CI 之后运行用 JavaScript 或 TypeScript 编写的自定义评审规则。
- 02读取 PR 的变更文件、描述内容和标签等元数据。
- 03直接在 Pull Request 上发布警告、失败提示或消息。
- 04支持 GitHub、Bitbucket Server 和 Bitbucket Cloud。
- 05可与 GitHub Actions、GitLab CI、Jenkins 等多种 CI 系统集成。
- 06支持将通用规则打包为插件共享。
适用场景
- 源代码变更时强制要求补充 CHANGELOG 条目。
- 要求 PR 描述中包含 Trello 或 JIRA 工单链接。
- 修改敏感文件或配置时向评审者发出提醒。
- 强制 Merge Request 使用规范的标签。
快速上手
- 1
克隆仓库
git clone https://github.com/danger/danger-js.git - 2
进入项目目录
cd danger-js - 3
如果没有安装 yarn,请先安装
npm install -g yarn - 4
安装项目依赖
yarn install
收录于专题
标签
常见问题
- danger-js 是什么?
- Danger JS 在 CI 之后运行,用代码自动检查 Pull Request 的评审规范,如 CHANGELOG 和描述要求。 Danger JS 在持续集成任务运行之后执行,依据团队自定义的规则检查 Pull Request 或 Merge Request。规则可以自动发出警告、直接失败,或在评审中留下提示,省去评审者反复指出漏写 CHANGELOG、未关联工单、未加标签等问题的重复工作。
- danger-js 可以免费使用吗?用的什么许可证?
- danger-js 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- danger-js 还在维护吗?
- 活跃维护中。danger-js 最近一次提交是在 2026年10月26日。
- danger-js 适合用来做什么?
- 源代码变更时强制要求补充 CHANGELOG 条目。 要求 PR 描述中包含 Trello 或 JIRA 工单链接。 修改敏感文件或配置时向评审者发出提醒。 强制 Merge Request 使用规范的标签。
- danger-js 怎么安装和运行?
- 克隆仓库: git clone https://github.com/danger/danger-js.git 进入项目目录: cd danger-js 如果没有安装 yarn,请先安装: npm install -g yarn 安装项目依赖: yarn install
- 在哪里获取 danger-js?
- 源代码和安装说明在 GitHub 上:https://github.com/danger/danger-js
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
在 GitHub PR 和 Issue 中运行 Claude Code,用于回答问题、审查代码和实现改动。
一个 GitHub Action,通过 Gemini API 自动对 Pull Request 进行代码审查并添加评论。
一个 GitHub Action,用大模型审查 Pull Request 代码差异,并发布少量高优先级的行内评论。
在 AI 代码审查之后运行的 CLI 与 GitHub Action,为 PR 评估合并风险,并列出受影响的文件与接口。
本地 Git 代理,用 AI 流水线校验分支,全部检查通过后才推送并自动开 PR。