mystiquemide/triage

GitHub: mystiquemide/triage

一个基于 GenLayer 智能合约的 AI 辅助漏洞赏金分诊平台,通过 LLM 共识自动化评估漏洞报告,解决赏金计划初筛慢、标准不一致的问题。

Stars: 1 | Forks: 0

# 分诊 由 GenLayer 智能合约驱动的 AI 辅助漏洞赏金筛选平台。 ![Triage 控制台](https://raw.githubusercontent.com/mystiquemide/triage/main/docs/assets/hero.png) ## 为什么开发此项目 漏洞赏金计划非常有价值,但初步筛选过程缓慢、重复,且难以保持一致性。Triage 为协议团队提供了一套基于 GenLayer 的工作流,用于发布赏金计划、收集结构化的漏洞报告、通过 AI 共识评估报告、跟踪支出尝试,以及构建可查询的漏洞注册表。 ## 功能 - 创建 GenLayer 赏金计划,包含范围、规则、安全港条款、披露政策、奖励池、最高支出和资金托管跟踪。 - 提交结构化的漏洞报告,包含影响、复现步骤、概念验证、链接和修复说明。 - 通过 GenLayer LLM 共识评估待处理的报告。 - 在全局 pipeline 和已连接钱包视图中跟踪已接受、已拒绝、重复和待处理的报告。 - 从已接受的报告中发出原生的 GEN 支出,并公开支出重试状态以便进行后续操作。 - 通过共享的漏洞注册表查询已接受的发现。 - 在应用界面内查看钱包地址和钱包 GEN 余额。 ## 产品截图

Triage landing screen

Triage mobile landing screen

## 线上合约 | 网络 | 链 ID | 合约 | | --- | ---: | --- | | GenLayer StudioNet | `61999` | `0x7860cc3Ff12FaCb93143Ca955e74Ab5dfbAFCEBa` | ## 技术栈 - 前端:Vue 3, Vite, Tailwind CSS - 合约:使用 Python 编写的 GenLayer 智能合约 - 测试:`genlayer-test`、direct-mode 测试、GenVM linter - 钱包/runtime:`genlayer-js`,支持注入的 EVM 钱包 - 部署目标:应用合约部署至 GenLayer StudioNet,兼容 Vercel 的静态前端 ## 架构 ``` flowchart LR User["Researcher / Program Owner"] --> UI["Vue App"] UI --> Wallet["Browser Wallet"] UI --> SDK["genlayer-js Client"] SDK --> Studio["GenLayer StudioNet"] Studio --> Contract["SecurityBounty Contract"] Contract --> Reports["Reports"] Contract --> Registry["Vulnerability Registry"] Contract --> Payouts["Native GEN Payout Emits"] ``` 公开应用部署了一个生产环境合约:`contracts/security_bounty.py`。诊断工具 `payout_probe.py` 仅用于本地/测试网调查,不包含在公开发布版本中。 ## 快速开始 ``` npm install npm --prefix app install cp .env.example app/.env npm run dev ``` 打开 Vite 打印的本地 URL,通常为 `http://localhost:5173` 或 `http://localhost:5174`。 ## 环境变量 前端会从 `app/.env` 读取环境变量。 | 变量 | 必填 | 描述 | |---|---:|---| | `VITE_CONTRACT_ADDRESS` | 是 | 应用使用的 StudioNet `SecurityBounty` 合约地址。 | | `VITE_STUDIO_URL` | 是 | GenLayer StudioNet RPC endpoint。默认为 `https://studio.genlayer.com/api`。 | ## 脚本 | 命令 | 描述 | |---|---| | `npm run dev` | 启动 Vue/Vite 开发服务器。 | | `npm run build` | 构建生产环境前端。 | | `npm run preview` | 在本地预览生产环境构建。 | | `npm run test:contracts` | 对 GenLayer 合约进行 lint 和 direct-test 测试。 | ## 验证状态 - 合约 lint 和 direct 测试:在本地通过 `./scripts/check-security-bounty.sh` 运行通过。 - 前端生产构建:在本地通过 `npm run build` 运行通过。 - StudioNet 修补重新部署:已提交,但部署交易目前正在 StudioNet 上等待处理。在对修补后的部署进行接受和读取测试之前,前端仍将配置为最后已知且可读取的 StudioNet 合约。 - `npm audit --registry=https://registry.npmjs.org`:报告了当前 Vite/esbuild 和 viem/ws 依赖链中的中等风险安全公告。Dependabot 已配置以进行后续更新。 ## 部署 生产环境前端:[triage01.online](https://triage01.online/) 请参阅 [docs/DEPLOYMENT.md](docs/DEPLOYMENT.md)。 ## 仓库结构 ``` . ├── app/ # Vue/Vite frontend ├── contracts/ # GenLayer intelligent contract ├── scripts/ # Contract validation helpers ├── test/direct/ # Direct-mode contract tests ├── docs/ # Deployment docs and screenshots └── .github/ # CI, CodeQL, templates, Dependabot ``` ## 安全 请参阅 [SECURITY.md](SECURITY.md)。请勿为敏感漏洞开启公开 issue。 ## 许可证 MIT。请参阅 [LICENSE](LICENSE)。
标签:AI辅助分类, GenLayer智能合约, Vue 3, Web3, 区块链, 逆向工具