yatinrahul/AI-Bug-Fix-Assistant
GitHub: yatinrahul/AI-Bug-Fix-Assistant
基于 Google Gemini API 的全栈 AI 调试平台,帮助开发者分析代码错误、修复 Bug、审计安全漏洞并生成测试用例。
Stars: 0 | Forks: 0
# AI Bug Fix 助手
这是一款智能且可用于生产环境的 Web 应用程序,由 **Google Gemini API** (`gemini-3.6-flash`) 提供支持,旨在帮助软件工程师识别、解释、修复和优化多种语言和框架中的编程 Bug 及安全漏洞。
## 🚀 核心功能
1. **用户认证**
- 基于 JWT 的注册、登录、个人资料更新和密码重置模拟。
- 使用 `bcryptjs` 进行安全的密码哈希处理。
2. **核心 AI 分析引擎**
- 粘贴源代码或错误回溯(支持 Python、Java、JavaScript、TypeScript、C++、Go、Rust、SQL、Docker、HTML/CSS)。
- 识别语言、框架、Bug 摘要、根本原因、严重等级、置信度分数和类别。
- 生成逐步修复指南、更正后的代码以及重构的高性能版本。
3. **分屏代码对比 (Diff Viewer)**
- 并排对比原始代码与更正后的代码,提供复制按钮和文件下载功能。
4. **OWASP 安全扫描器**
- 审计代码中的 SQL 注入、跨站脚本攻击 (XSS)、硬编码密钥/秘钥、命令注入、CSRF 以及反序列化漏洞。
5. **代码性能优化器**
- 分析时间和空间复杂度(Big-O 表示法),并提供优化后的整洁代码重构方案。
6. **单元测试生成器**
- 为 **PyTest、Jest、JUnit 5、Vitest、TestNG、Go testing 和 Cargo test** 生成可执行的单元测试套件。
7. **交互式 AI 调试聊天**
- 与 Gemini 进行具备上下文感知的问答会话,探讨修复方案和编程概念。
8. **调试历史与存档**
- 保存、搜索、过滤、星标/收藏以及删除过去的调试会话。
9. **Zip 与项目工作区分析器**
- 上传 `.zip` 项目压缩包,解压源文件,检查代码并运行 Bug 分析。
10. **GitHub 仓库与 PR 导入器**
- 粘贴公开的 GitHub 仓库链接(例如 `https://github.com/owner/repo`)以获取实时文件并进行分析。
11. **专业 PDF 报告**
- 导出可下载的 PDF 报告,包含诊断摘要、根本原因、安全缺陷和修复方案。
## 🛠️ 技术栈
- **前端**: React 19, TypeScript, Tailwind CSS v4, Lucide React Icons
- **后端**: Express.js (Node.js 全栈容器)
- **AI 引擎**: `@google/genai` TypeScript SDK (`gemini-3.6-flash`)
- **认证**: JSON Web Tokens (`jsonwebtoken`) & `bcryptjs`
- **PDF 生成**: `jsPDF`
- **Zip 解包**: `JSZip`
## 📡 API 端点
- `POST /api/auth/signup` - 注册新账号
- `POST /api/auth/login` - 认证并接收 JWT
- `GET /api/auth/me` - 获取已认证用户的个人资料
- `POST /api/auth/forgot-password` - 请求重置密码
- `POST /api/analyze` - 主 Gemini AI Bug 分析与修复
- `POST /api/security-scan` - OWASP 安全审计
- `POST /api/optimize` - 性能与 Big-O 优化
- `POST /api/generate-tests` - 单元测试套件生成
- `POST /api/chat` - 交互式 AI 调试聊天
- `POST /api/github/fetch` - 获取公开的 GitHub 仓库文件
- `POST /api/upload-zip` - 解包 base64 编码的 zip 项目压缩包
- `GET /api/history` - 检索已保存的调试历史
- `POST /api/history/:id/bookmark` - 切换书签星标
- `DELETE /api/history/:id` - 删除历史记录
## 💻 本地开发与运行
### 前置条件
- Node.js (v18+)
- Gemini API Key(在环境变量或机密信息中设置 `GEMINI_API_KEY`)
### 启动开发服务器
```
npm run dev
```
服务器将在 `http://0.0.0.0:3000` 上启动。
### 生产构建
```
npm run build
npm start
```
## 📄 许可证
Apache-2.0
标签:AI辅助开发, Gemini API, MITM代理, 代码审查, 自动修复, 自动化攻击, 静态应用安全测试