Go to file
2443029279@qq.com 66d77fc918 feat: 搭建项目原型 2025-10-05 03:21:27 +08:00
api feat: 搭建项目原型 2025-10-05 03:21:27 +08:00
reference-deepwiki feat: 搭建项目原型 2025-10-05 03:21:27 +08:00
src feat: 搭建项目原型 2025-10-05 03:21:27 +08:00
src-tauri feat: 搭建项目原型 2025-10-05 03:21:27 +08:00
.gitignore feat: 搭建项目原型 2025-10-05 03:21:27 +08:00
DEVELOPMENT_PLAN.md feat: 搭建项目原型 2025-10-05 03:21:27 +08:00
QUICKSTART.md feat: 搭建项目原型 2025-10-05 03:21:27 +08:00
README.md feat: 搭建项目原型 2025-10-05 03:21:27 +08:00
index.html feat: 搭建项目原型 2025-10-05 03:21:27 +08:00
package-lock.json feat: 搭建项目原型 2025-10-05 03:21:27 +08:00
package.json feat: 搭建项目原型 2025-10-05 03:21:27 +08:00
postcss.config.js feat: 搭建项目原型 2025-10-05 03:21:27 +08:00
tailwind.config.js feat: 搭建项目原型 2025-10-05 03:21:27 +08:00
tsconfig.json feat: 搭建项目原型 2025-10-05 03:21:27 +08:00
tsconfig.node.json feat: 搭建项目原型 2025-10-05 03:21:27 +08:00
vite.config.ts feat: 搭建项目原型 2025-10-05 03:21:27 +08:00

README.md

红山智能开发助手 (Red Mountain Intelligent Development Assistant)

Red Mountain TypeScript React Tauri Python FastAPI

📖 项目概述

红山智能开发助手是一款基于大模型的智能开发辅助工具,专为红山开源平台生态打造。项目采用双核驱动架构,集成了智能问答助手和类似 DeepWiki 式代码仓库智能分析两大核心功能,并预留基于大模型的开源项目质量分析和缺陷检测等接口,旨在提升开发者在红山平台上的开发效率和质量。

核心功能

🎯 已实现Demo 阶段)

  • 现代化桌面应用界面 - 基于 Tauri + React + TypeScript
  • 智能问答助手界面 - 支持与 AI 对话的聊天界面
  • 代码仓库分析界面 - 支持 GitHub/GitLab/Bitbucket 仓库输入
  • 后端 API 框架 - FastAPI 基础架构
  • 配置管理 - 支持多种 AI 模型提供商

🚧 开发中

  • 🔄 RAG 智能问答 - 基于检索增强生成的智能问答
  • 🔄 代码仓库分析 - 自动生成代码文档和可视化图表
  • 🔄 红山平台集成 - 与红山开源平台 API 集成

📋 规划中

  • 📅 质量分析系统 - AI 驱动的代码质量评估
  • 📅 缺陷检测 - 智能识别潜在代码缺陷
  • 📅 安全漏洞扫描 - 自动检测安全问题
  • 📅 最佳实践建议 - 提供改进建议

🏗️ 技术架构

前端技术栈

  • 核心框架: Vite + React 18 + TypeScript
  • 桌面应用: Tauri 2.0 (Rust)
  • UI 框架: Tailwind CSS
  • 路由: React Router v7
  • 状态管理: Zustand
  • Markdown 渲染: react-markdown
  • 图表可视化: Mermaid
  • HTTP 客户端: Axios

后端技术栈

  • Web 框架: FastAPI
  • AI 框架: adalflow
  • 向量数据库: FAISS
  • 嵌入模型: OpenAI / Google / Ollama
  • 大语言模型: OpenAI GPT / Google Gemini / Azure OpenAI
  • 数据处理: tiktoken, numpy

架构设计

┌─────────────────────────────────────────────────────────┐
│                   Tauri Desktop App                      │
│  ┌─────────────────────────────────────────────────┐   │
│  │         React + TypeScript Frontend              │   │
│  │  ┌──────────┬──────────┬──────────┬──────────┐  │   │
│  │  │   智能   │   代码   │   质量   │   设置   │  │   │
│  │  │   问答   │   分析   │   检测   │   管理   │  │   │
│  │  └──────────┴──────────┴──────────┴──────────┘  │   │
│  └─────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────┘
                          │ HTTP/WebSocket
                          ▼
┌─────────────────────────────────────────────────────────┐
│                  Python FastAPI Backend                  │
│  ┌─────────────┬─────────────┬──────────────────────┐  │
│  │   Chat API  │   RAG Core  │   Repo Analysis     │  │
│  │             │             │                      │  │
│  │  • 对话管理  │  • 向量检索  │  • Git Clone        │  │
│  │  • 上下文    │  • 文档分割  │  • 代码解析         │  │
│  │  • 流式输出  │  • 嵌入生成  │  • 文档生成         │  │
│  └─────────────┴─────────────┴──────────────────────┘  │
│                                                          │
│  ┌────────────────────────────────────────────────┐    │
│  │         LLM Integration Layer                   │    │
│  │  OpenAI • Google Gemini • Azure • Ollama       │    │
│  └────────────────────────────────────────────────┘    │
└─────────────────────────────────────────────────────────┘
                          │
                          ▼
┌─────────────────────────────────────────────────────────┐
│            红山开源平台 API (Future)                      │
│  • 项目管理  • 代码托管  • CI/CD  • 问题跟踪             │
└─────────────────────────────────────────────────────────┘

🚀 快速开始

环境要求

  • Node.js: >= 18.0.0
  • Python: >= 3.10
  • Rust: >= 1.70 (Tauri 需要)
  • 操作系统: Windows 10+, macOS 10.15+, Linux

安装步骤

1. 克隆项目

git clone <repository-url>
cd Red

2. 安装前端依赖

npm install
# 或
yarn install

3. 安装后端依赖

cd api
pip install -r requirements.txt
# 推荐使用虚拟环境
python -m venv venv
source venv/bin/activate  # Linux/Mac
# 或
venv\Scripts\activate  # Windows
pip install -r requirements.txt

4. 配置环境变量

复制 .env.example.env 并填入你的 API 密钥:

cp .env.example .env

编辑 .env 文件:

# 至少配置一个 AI 提供商
OPENAI_API_KEY=sk-...
# 或
GOOGLE_API_KEY=...

# 模型配置
MODEL_PROVIDER=openai
MODEL_NAME=gpt-4

# 嵌入模型
EMBEDDER_TYPE=openai

5. 启动开发服务器

终端 1 - 启动后端 API

cd api
python -m main

终端 2 - 启动前端开发服务器:

npm run dev
# 或
yarn dev

终端 3 - 启动 Tauri 桌面应用(可选):

npm run tauri:dev
# 或
yarn tauri:dev

访问应用

📂 项目结构

Red/
├── src/                      # 前端源代码
│   ├── components/          # React 组件
│   │   ├── Layout.tsx       # 布局组件
│   │   └── Sidebar.tsx      # 侧边栏导航
│   ├── pages/               # 页面组件
│   │   ├── HomePage.tsx     # 首页
│   │   ├── ChatPage.tsx     # 智能问答页面
│   │   ├── WikiPage.tsx     # 代码分析页面
│   │   ├── QualityPage.tsx  # 质量检测页面
│   │   └── SettingsPage.tsx # 设置页面
│   ├── styles/              # 样式文件
│   ├── App.tsx              # 应用入口
│   └── main.tsx             # React 入口
│
├── src-tauri/               # Tauri Rust 后端
│   ├── src/
│   │   ├── main.rs          # Rust 主文件
│   │   └── lib.rs           # Rust 库文件
│   ├── Cargo.toml           # Rust 依赖配置
│   └── tauri.conf.json      # Tauri 配置
│
├── api/                     # Python 后端 API
│   ├── __init__.py
│   ├── main.py              # API 入口
│   ├── api.py               # FastAPI 应用
│   ├── config.py            # 配置管理
│   └── requirements.txt     # Python 依赖
│
├── reference-deepwiki/      # DeepWiki 参考实现
│
├── package.json             # Node.js 依赖
├── tsconfig.json            # TypeScript 配置
├── vite.config.ts           # Vite 配置
├── tailwind.config.js       # Tailwind CSS 配置
└── README.md                # 项目文档

🔧 配置说明

支持的 AI 模型提供商

OpenAI

OPENAI_API_KEY=sk-...
MODEL_PROVIDER=openai
MODEL_NAME=gpt-4
EMBEDDER_TYPE=openai

Google Gemini

GOOGLE_API_KEY=...
MODEL_PROVIDER=google
MODEL_NAME=gemini-pro
EMBEDDER_TYPE=google

Azure OpenAI

AZURE_OPENAI_API_KEY=...
AZURE_OPENAI_ENDPOINT=https://...
AZURE_OPENAI_VERSION=2024-02-15-preview
MODEL_PROVIDER=azure

Ollama (本地模型)

OLLAMA_HOST=http://localhost:11434
MODEL_PROVIDER=ollama
MODEL_NAME=llama3
EMBEDDER_TYPE=ollama

📝 开发计划

详细的开发计划请参见 DEVELOPMENT_PLAN.md

阶段规划

第一阶段:基础框架搭建 (当前)

  • 项目结构设计
  • 前端界面开发
  • 后端 API 框架
  • 配置管理系统

第二阶段:核心功能实现 (2-4 周)

  • 🔄 RAG 智能问答实现
  • 🔄 代码仓库分析功能
  • 🔄 向量数据库集成
  • 🔄 WebSocket 实时通信

第三阶段:平台集成 (2-3 周)

  • 📅 红山平台 API 集成
  • 📅 用户认证和授权
  • 📅 项目管理功能

第四阶段:质量检测 (3-4 周)

  • 📅 代码质量分析
  • 📅 缺陷检测
  • 📅 安全漏洞扫描
  • 📅 报告生成

第五阶段:优化和发布 (1-2 周)

  • 📅 性能优化
  • 📅 用户体验改进
  • 📅 文档完善
  • 📅 正式发布

🤝 参考项目

本项目参考了以下优秀开源项目:

  • DeepWiki - 代码仓库智能分析的实现参考
  • 关键技术借鉴:
    • RAG (检索增强生成) 架构
    • 向量嵌入和文档检索
    • 多种 LLM 模型集成
    • WebSocket 流式输出

📄 许可证

MIT License

👥 贡献

欢迎贡献代码、提出问题和建议!

📧 联系方式

  • 项目地址: [GitHub Repository URL]
  • 问题反馈: [Issues URL]

Built with ❤️ for Red Mountain Open Source Platform