uk0976/CodeMedic-AI

GitHub: uk0976/CodeMedic-AI

一个基于 Codex 的多智能体 AI 代码分析平台,将 bug 检测、安全扫描、性能优化与测试文档生成整合到浏览器端的统一工作流中。

Stars: 1 | Forks: 0

# CodeMedic AI **修复。解释。优化。由 Codex 驱动。** CodeMedic AI 是一个高级的、面向开发者的 AI 代码分析和优化平台。它将类似 cursor 的体验、Notion 般的丰富性以及 SonarQube 级别的详细诊断 pipeline 直接带到浏览器中。专为快速进行 codebase 扫描、安全漏洞检查、性能调优和自动化测试生成而设计。 ## 🚀 核心功能 - **交互式编辑器工作区**:采用 Monaco Editor(VS Code 的引擎),支持完整的语法高亮、代码折叠、多光标、格式化 (`Alt+Shift+F`)、搜索以及拖拽式文件上传。 - **AI 分析引擎**:通过 OpenAI 的 Beta Response API 执行多层诊断扫描。运行 bug 检测、安全漏洞审计和性能分析,计算复杂度(时间/空间),并自动生成单元测试 boilerplate。 - **Server-Sent Events (SSE)**:将增量诊断阶段更新(`Analyzing...` -> `Reviewing...` -> `Security Audit...` -> `Done`)直接流式传输到浏览器。 - **报告目录与归档**:将每次诊断运行保存到历史 PostgreSQL 存储库中。支持列表查询、搜索、删除、复制和导出。 - **并排对比**:选择任意两份历史报告,对比代码质量得分的差值、bug 数量的减少情况以及安全得分的提升情况。 - **多格式导出**:一键将审计结果导出为: - **PDF 报告**:多页自定义格式的 PDF,包含封面、指标网格、代码日志和页脚。 - **Markdown 报告**:对开发者友好的本地文档。 - **JSON Payload**:用于 CI/CD 集成的原始分析遥测数据。 - **优化后的源代码 / 单元测试**:下载即可运行的源文件。 - **引导式演示导览**:专为黑客松评委设计的跨页面分步入门工作流程,旨在无缝展示产品功能。 ## 🛠 技术栈 - **Frontend**:Next.js 15, TypeScript, Tailwind CSS, Monaco Editor (`@monaco-editor/react`), Framer Motion(微交互), Lucide, TanStack Query。 - **Backend**:FastAPI, Python 3.12, SQLAlchemy ORM, PostgreSQL, Pydantic v2(设置与 schema), PyJWT, Uvicorn, ReportLab(PDF 生成)。 - **部署**:Docker Compose, Vercel(前端), Railway(后端)。 ## 📦 项目架构 ``` ├── backend/ │ ├── app/ │ │ ├── api/v1/ # Health, Auth, Analysis, and Report routers │ │ ├── core/ # Security token keys and logging configs │ │ ├── database/ # DB session pooler │ │ ├── models/ # User, Session, and AnalysisReport models │ │ ├── repositories/ # Report CRUD database mappers │ │ ├── schemas/ # Pydantic validation structures │ │ ├── services/ # OpenAI Beta parsing and Prompt builders │ │ └── utils/ # PDF generator helpers │ ├── pyproject.toml # Package dependencies │ └── alembic/ # Database migrations directory ├── frontend/ │ ├── app/ # Next.js App Router (Landing, Demo, Analyze, Reports) │ ├── components/ # Reusable layouts, Monaco wraps, and UI components │ ├── public/ # SEO assets, manifest, robots, sitemaps │ └── package.json # Node dependency package ├── docker/ # Container images └── docker-compose.yml # Orchestration compose ``` ## ⚙ 环境变量 在您本地的 `.env` 文件中配置这些变量(请参阅根目录中的 `.env.example`): ``` # 数据库设置 DATABASE_URL=postgresql+psycopg://codemedic:codemedic@localhost:5432/codemedic # 安全设置 JWT_SECRET_KEY=replace-with-a-long-random-secret-at-least-32-characters JWT_ALGORITHM=HS256 # OpenAI 设置(AI 分析引擎必需) OPENAI_API_KEY=your-openai-api-key-here ``` ## 🚀 本地运行 ### 选项 1:Docker Compose(最快捷) 1. 确保您的机器上正在运行 Docker。 2. 在项目根目录下,运行: docker compose up --build 3. 打开 `http://localhost:3000` 访问应用程序。 ### 选项 2:单独的开发服务器 #### 1. 设置后端 1. 导航至 backend 文件夹: cd backend 2. 创建并激活 python 虚拟环境: python -m venv .venv # Windows: .venv\Scripts\activate # macOS/Linux: source .venv/bin/activate 3. 安装依赖项: pip install -e ".[dev]" 4. 创建 `.env` 文件并填入密钥。 5. 运行 FastAPI 开发服务器: python -m uvicorn app.main:app --reload --port 8000 #### 2. 设置前端 1. 导航至 frontend 文件夹: cd ../frontend 2. 安装 npm 包: npm ci 3. 启动 Next.js 开发服务器: npm run dev 4. 通过 `http://localhost:3000` 访问 Web 应用程序。 ## 📈 质量验证与测试 在提交之前,请验证项目的稳定性并进行类型格式化: - **后端**: cd backend # 运行 lint 规则 .venv\Scripts\ruff check . # 运行静态类型检查 .venv\Scripts\mypy . - **前端**: cd frontend # 运行 lint 检查 npm run lint # 运行 TypeScript 验证 npm run typecheck # 运行生产环境构建编译 npm run build ## 🛡 许可证 基于 MIT 许可证分发。查看 `LICENSE` 了解更多信息。 ## 🏆 黑客松详情 为 **OpenAI Codex Hackathon** 开发。 - **应用程序**:CodeMedic AI - **宣传语**:修复。解释。优化。由 Codex 驱动。
标签:AI编程助手, Petitpotam, SOC Prime, 代码质量分析, 开发工具, 测试用例, 版权保护, 自动化攻击