一个 Chrome 浏览器插件,为 GitLab Issue 页面提供 CVE 信息聚合、厂商安全公告展示和快速指派功能,简化 Linux 维护者的 CVE 处置工作流程。
pnpm installpnpm buildchrome://extensions/.output/chrome-mv3 目录johndoe,系统会自动添加 @ 前缀)配置完成后,访问任何 GitLab Issue 页面:
点击按钮即可将 Issue 指派给您设置的默认用户。
在 GitLab Issue 详情页(Issue 标题包含 CVE 编号时):
在 GitLab Issue 列表页:
[快速指派] - 可点击[指派中...] - 正在执行指派操作[✓ 成功] - 指派成功(绿色,2秒后恢复)[✗ 失败] - 指派失败(红色,2秒后恢复).
├── wxt.config.ts # WXT 配置文件
├── package.json # 项目依赖与脚本
├── tsconfig.json # TypeScript 配置
├── entrypoints/ # 插件入口点
│ ├── background.js # 后台服务脚本
│ ├── content.js # 内容脚本(核心功能)
│ ├── popup/
│ │ ├── index.html # 弹窗页面
│ │ ├── popup.js # 弹窗逻辑
│ │ └── popup.css # 弹窗样式
│ ├── options/
│ │ ├── index.html # 配置页面
│ │ ├── options.js # 配置页面逻辑
│ │ └── options.css # 配置页面样式
│ └── sidepanel/
│ ├── index.html # 侧边栏页面
│ ├── sidepanel.js # 侧边栏逻辑
│ └── sidepanel.css # 侧边栏样式
├── utils/vendors/ # 厂商数据获取模块
│ ├── config.js # 厂商配置常量
│ ├── storage.js # 存储管理
│ ├── request.js # HTTP 请求工具
│ ├── cve-org.js # CVE.org 数据获取
│ ├── redhat.js # RedHat 数据获取
│ ├── openanolis.js # OpenAnolis 数据获取
│ ├── openeuler.js # OpenEuler 数据获取
│ └── debian.js # Debian 数据获取
├── assets/ # 内容脚本样式等资源
│ └── content.css
├── public/ # 静态资源
│ └── icons/
│ ├── icon16.png # 16x16 图标
│ ├── icon48.png # 48x48 图标
│ └── icon128.png # 128x128 图标
└── README.md # 说明文档
storage:用于保存用户配置(默认指派人)host_permissions:用于访问 GitLab 页面和调用 GitLab API隐私声明:本插件不收集任何用户数据,所有配置仅存储在本地浏览器中。
插件需要以下尺寸的图标文件(请将图标放置在 public/icons/ 目录下):
icon16.png - 16x16 像素icon48.png - 48x48 像素icon128.png - 128x128 像素建议:
插件当前仅支持内部 GitLab 实例:
Content Script 调试:
Background 调试:
chrome://extensions/# 启动开发模式(热重载)
pnpm dev
# 构建生产版本
pnpm build
# 打包为 zip
pnpm zip
开发模式下,WXT 会自动监听文件变化并重新构建。在 chrome://extensions/ 页面加载 .output/chrome-mv3 目录即可测试。
Q: 为什么点击按钮后显示"✗ 无权限"? A: 您可能没有权限指派该 Issue,请确认您具有 Maintainer 或 Owner 角色。
Q: 为什么点击按钮后显示"✗ 用户不存在"? A: 请检查配置的用户名是否正确,确保该用户在当前 GitLab 实例中存在。
Q: 指派成功后为什么页面会刷新? A: 为了确保页面显示最新的指派信息,插件会在指派成功后自动刷新页面。
Q: 支持批量指派吗? A: 当前版本不支持批量指派,如需此功能请在 GitHub 上提 issue。
欢迎贡献代码、报告问题或提出建议!
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)MIT License
如有问题或建议,请通过以下方式联系:
享受高效的 GitLab 工作流程! 🚀