syedmazharrs7/RepoMind
GitHub: syedmazharrs7/RepoMind
一个 AI 驱动的代码仓库智能分析系统,结合 AST、依赖图和 RAG 技术帮助开发者快速理解陌生代码库。
Stars: 0 | Forks: 0
# RepoMind
RepoMind 是一个由 AI 驱动的仓库智能系统,它利用抽象语法树(AST)、依赖图、语义搜索和检索增强生成(RAG)来分析软件项目。
RepoMind 并不将仓库仅仅视为纯文本,而是构建了对代码库的结构化理解,使开发者能够探索架构、追踪依赖、分析影响,并基于扎实的依据与代码库进行对话交流。
## 愿景
现代 AI 助手在处理大型仓库时往往力不从心,因为它们主要依赖于文本检索。
RepoMind 旨在通过结合以下技术来解决这一问题:
- 仓库摄取
- 使用 Tree-sitter 解析源代码
- 符号图构建
- 语义代码嵌入
- 依赖分析
- 检索增强生成(RAG)
其目标是极大地加快理解陌生代码库的速度。
## 当前进度
### ✅ 模块 1 — 仓库摄取
- 克隆 Git 仓库
- 验证 GitHub URL
- 检测现有仓库
- 防止损坏的克隆
- 结构化日志
- 单元测试
### ✅ 模块 2 — 仓库扫描器
- 递归遍历仓库
- 多语言源文件检测
- 忽略构建和缓存目录
- 确定性扫描
- 源文件元数据提取
- 全面的单元测试
### 🚧 即将推出的模块
- Tree-sitter 解析
- 符号图构建
- 影响分析
- 语义嵌入
- 向量搜索
- 仓库 RAG 对话
- 架构可视化
- 仓库健康指标
- Web Dashboard
## 项目架构
```
Git Repository
│
▼
Repository Downloader
│
▼
Repository Scanner
│
▼
Tree-sitter Parser
│
▼
Symbol Graph
│
▼
Embeddings
│
▼
Semantic Search
│
▼
Repository RAG
```
## 技术栈
- Python 3.13
- GitPython
- Pytest
- Tree-sitter *(即将推出)*
- FAISS *(即将推出)*
- LangChain *(即将推出)*
- FastAPI *(已规划)*
- React *(已规划)*
## 仓库结构
```
RepoMind/
│
├── backend/
├── tests/
├── docs/
├── repos/
├── requirements.txt
└── README.md
```
## 运行项目
克隆仓库:
```
git clone https://github.com//RepoMind.git
```
安装依赖:
```
pip install -r requirements.txt
```
运行应用:
```
python -m backend.main
```
示例:
```
python -m backend.main https://github.com/pallets/flask
```
运行测试:
```
pytest -v
```
## 开发理念
RepoMind 正在逐模块进行开发。
每个模块都是:
- 可独立测试的
- 完全文档化的
- 面向生产环境的
- 在集成前经过评审
这种方法强调软件工程原则,如模块化、可维护性、确定性行为以及全面的测试。
## 路线图
- [x] 仓库摄取
- [x] 仓库扫描器
- [ ] Tree-sitter 解析
- [ ] 符号图
- [ ] 影响分析
- [ ] 语义嵌入
- [ ] 向量搜索
- [ ] 仓库 RAG
- [ ] 架构可视化
- [ ] 仓库健康指标
- [ ] 前端 Dashboard
- [ ] 部署
## 许可证
本项目基于 MIT 许可证授权。
标签:AI编程助手, 代码智能, 代码知识图谱, 检索增强生成, 语义搜索