Niubi Guard - GitHub 仓库滥用防护系统
Albert-Weasker/niubi_guard
开源 GitHub 反骚扰工具,用 AI + 规则引擎检测恶意 Issue/评论/协同攻击,支持自动关闭/锁定/拉黑,可托管可自部署
成熟度:维护活跃,最近提交2天前,开放 Issue 2个,已发布 v0.1.0 版本
项目体检
部署 · Docker 多阶段构建一键部署,默认暴露 3000 端口,或 npm 全局安装 CLI 直接运行,无需额外服务
成本 · 需 GitHub Personal Access Token,AI 检测可选(需 OpenAI 兼容 API Key + Base URL),不依赖外部数据库,开箱即用
技术 · TypeScript + Next.js Web UI + Node.js CLI,pnpm 包管理,支持 OpenAI 兼容模型调用
许可 · NOASSERTION(许可证未明确声明,商用前建议联系作者确认授权)
活跃 · 2天前最新提交,v0.1.0 版本已发布(2026-06-04),4 位贡献者,1012 stars,活跃开发中
解决什么
开源项目维护者常遭遇批量恶意 Issue、模板化指控、协同举报等骚扰攻击。这些行为通常绕过 GitHub 原生的反垃圾机制,用"合法外壳"包装恶意内容,例如复制粘贴相同指控模板、批量 @ 提及、新注册账号集中发难。Niubi Guard 提供规则引擎 + AI 语义检测双层防护,自动识别并标记可疑行为,支持干运行审查或自动执行关闭 Issue、锁定讨论、拉黑用户等操作,让维护者从重复人工审核中解放出来。
为何火
据公开资料,近期多个开源项目报告遭遇"第四波 GitHub Issue 滥用攻击"(项目文档有专门报告),攻击者用模板化指控施压维护者,正常项目推广被允许但协同骚扰不被容忍。Niubi Guard 在 GitHub Trending 登顶并获 Trendshift 徽章,1012 stars 快速积累,因其透明化设计(每个检测带标签、关键词、AI 置信度、证据和计划动作)和用户可控原则(默认干运行,强操作需手动开启)赢得信任。双语支持(英文 + 简体中文)和开源策略降低使用门槛,维护者可自部署或用官方托管版(niubistar.com/guard)。
核心功能
- 规则引擎: 关键词黑名单、用户黑名单、白名单短语/用户、冷启动账号检测(新注册 + 空简介 + 无头像组合判定)
- AI 语义检测: 对接 OpenAI 兼容模型(支持自定义 Base URL/API Key/Prompt),检测模板化指控、机器人式举报、协同骚扰,返回置信度 + 标签 + 证据
- 可控响应: 删除评论、关闭/锁定/删除 Issue、拉黑用户、限制互动权限,所有动作默认关闭,需在配置文件显式启用
- Web UI 控制台: 浏览器端配置 GitHub Token、仓库列表、检测规则、AI 参数、置信度阈值,扫描结果可视化展示检测理由和计划动作,内置双语操作手册
- CLI 工具:
niubi-guard init生成配置模板,scan命令执行扫描,支持--dry-run预览或--apply实际执行
安装
npm 全局安装(需 Node.js 20+):
npm install -g niubi-guard
niubi-guard init # 生成 guard.config.json
export GITHUB_TOKEN=github_pat_xxx
niubi-guard scan --config guard.config.json
Docker 部署:
docker build -t niubi-guard .
docker run --rm -p 3000:3000 niubi-guard
# 访问 http://localhost:3000
源码运行(需 pnpm):
git clone https://github.com/Albert-Weasker/niubi_guard.git
cd niubi_guard && pnpm install
pnpm dev:web # 启动 Web UI
pnpm dev -- init && pnpm scan # CLI 模式
适合谁
- 开源维护者: 项目遭遇批量恶意 Issue、模板化指控、协同举报攻击
- 社区管理员: 需自动化检测垃圾评论、机器人账号、大规模 @ 提及滥用
- 安全团队: 希望用 AI 语义分析补充规则引擎,检测隐蔽的骚扰模式
- 中文用户: Web UI 和文档已双语支持,AI 检测可接入国内中转 API 或国产模型(如通义千问/文心一言的 OpenAI 兼容接口)
不适合:完全无技术背景的个人用户(需配置 GitHub Token 和 JSON 文件),或对 AI 误判零容忍的场景(建议先用干运行模式人工复核)。
社区评价
暂无足量社区公开讨论,以下为基于项目本身的中立评估: 项目在 GitHub Trending 登顶并获 Trendshift 徽章,短期内积累 1012 stars 和 145 forks,显示出较高关注度。README 提供详细的攻击报告(第四波 Issue 滥用)和攻击语料库,透明化设计(检测逻辑、配置 schema、响应动作全公开)符合开源社区对安全工具的信任要求。默认干运行模式和用户可控原则降低误伤风险,但 AI 检测依赖外部模型,国内用户需自备中转或国产 API。许可证状态为 NOASSERTION(未明确声明),商用前建议联系作者确认授权。
选型对比
- vs GitHub 原生反垃圾: GitHub 自带的 Spam 举报和 Interaction Limits 功能较被动,无法检测语义攻击和协同模式,Niubi Guard 提供主动扫描 + AI 语义分析 + 自动化响应
- vs 商业反骚扰服务: 通常需付费订阅且不开源,Niubi Guard 免费且逻辑透明,可自部署保护数据隐私,但需自行维护和配置
- vs 纯规则工具: 传统关键词过滤易被绕过(如变体词、隐喻攻击),Niubi Guard 结合 AI 语义检测提升召回率,但增加 API 成本和延迟
取舍:自部署需承担运维成本,托管版(niubistar.com/guard)更便捷但数据经第三方;AI 检测提升准确率但依赖外部模型;默认干运行安全但需人工复核,自动执行省力但有误伤风险。
已知坑
- 许可证未明确: License 字段为 NOASSERTION,README 提及 Apache-2.0 但仓库未正式声明,商用前需联系作者确认
- AI 成本: 每次扫描调用模型 API,大仓库或高频扫描可能产生可观费用,建议设置
maxPages限制扫描范围 - 冷启动检测误伤:
coldStartAccounts规则可能误判新注册的真实用户,建议结合minimumSignals参数(默认需 2 个以上信号才触发)和白名单 - 国内 API 访问: OpenAI 官方 API 需梯子,建议用国内中转服务或国产模型的兼容接口(需测试 JSON 返回格式是否严格匹配)
- GitHub Token 权限: 需
repo全权限(读写 Issues/评论/用户)才能执行删除/拉黑操作,建议用专用 Token 并定期轮换 - Web UI 无持久化: API Key 仅在浏览器端临时使用,刷新页面需重新输入,CLI 模式需通过环境变量或配置文件传递
来源: GitHub 仓库 + README 文档
安装方式:npm 全局安装或 Docker 部署