403errors/repomind

GitHub: 403errors/repomind

基于 Agentic CAG 的开源 AI 平台,支持与任意公开 GitHub 仓库对话、架构可视化与安全审计。

Stars: 218 | Forks: 34

# RepoMind

停止阅读代码,开始与代码对话。

GitHub stars MIT License Next.js Gemini

在线体验 RepoMind · 查看 React 分析示例 · 参与贡献

![RepoMind Demo](https://raw.githubusercontent.com/403errors/repomind/main/public/assets/demo_repomind.gif) RepoMind 是一个开源的 AI 驱动平台,利用 **Agentic CAG** 技术帮助用户理解公开的 GitHub 仓库和开发者资料。它将深度代码推理、架构可视化和安全扫描结合在一起,提供快速、以浏览器为先的体验。 ## 为什么选择 RepoMind - **针对公开仓库零配置**:粘贴仓库或资料链接,即刻开始。 - **上下文感知分析**:选择完整的相关文件,而非碎片化的向量块。 - **可视化理解**:生成架构图和流程图,加速上手进程。 - **内置安全扫描**:快速/深度扫描,提供以验证为核心的报告。 - **实时步骤反馈**:聊天界面显示实时处理阶段(选择文件、读取文件、准备回答)。 - **对贡献者友好的代码库**:清晰的 TypeScript 服务、测试和模块化功能。 ## 产品亮点 ### 落地页体验 ![RepoMind Landing Page](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/621a31780f155743.png) ### 仓库资料智能分析 ![Repo Profile Example](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/a8c0288e3e155745.png) ### 核心能力 ![RepoMind Capabilities](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/e8ac8363ab155748.png) ## Agentic CAG 架构 RepoMind 使用 **Agentic Context-Augmented Generation (CAG)**。它不仅依赖嵌入(embeddings),还会修剪和加载连贯的源代码上下文,从而可靠地回答架构和实现问题。 ![CAG vs RAG](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/8e3e059bc5155750.gif) ![Architecture Example](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/a7a1b876ba155754.png) ## 架构流程图 这些图表提供了 RepoMind 如何处理查询、优化性能和验证安全发现的快速心智模型。 ### 1) 查询 + 上下文管道 ``` graph TD A[User enters repo or profile query] --> B[Context-Aware Engine] B --> C[Repository/Profile metadata fetch + file tree] B --> D[File selection via GEMINI_FILE_SELECTOR_MODEL] D --> E[25 files for Lite or 50 files for Thinking] E --> F[Fetch selected files with SHA-aware cache reuse] F --> G[Build context with repo folder structure + selected files] G --> H[Answer generation via Lite or Thinking model] H --> I[Streaming response with text-only live steps] ``` ### 2) 缓存 + 检索策略 ``` graph TD A[Request selected files] --> B{SHA-keyed file cache hit?} B -->|Yes| C{Compressed entry?} C -->|Yes| D[Decompress] C -->|No| E[Return cached payload] D --> E B -->|No| F[Fetch only missing/new files from GitHub API] F --> G{Payload <= 2MB?} G -->|Yes| H[Gzip + store in KV] G -->|No| I[Skip cache write] H --> J[Return full context] I --> J J --> K[Cache query -> selected files - 24h] J --> L[Cache query answer - 24h] ``` ### 3) 安全扫描 + 验证流程 ``` graph TD A[Start scan] --> B{Quick or Deep} B --> C[Collect scoped files + dependencies] C --> D[Deterministic security engine] D --> E{AI assist enabled?} E -->|Yes| F[AI validation pass] E -->|No| G[Verification gate] F --> G G --> H{Verified true?} H -->|Yes| I[Show finding in report] H -->|No| J[Hide as rejected/inconclusive] ``` ## 安全扫描 RepoMind 包含一个以验证为先的扫描流程,用于检测应用程序和依赖项风险。 - 快速扫描用于快速分流 - 深度扫描用于更广泛的覆盖 - 验证优先的报告管道 - 在仓库聊天流程中提供可操作的修复建议 ![Security Report](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/80676c660e155756.png) ## 仪表盘体验 ![Dashboard Overview](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/3af6a5e574155758.png) ![Recent Scans](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/b9bc952a6e155759.png) ![My Repositories](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/e9c2702af1155801.png) ![Starred Repositories](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/510afdb7de155803.png) ## 入门指南 ### 使用在线应用 1. 打开 [repomind.in](https://repomind.in) 2. 输入 `owner/repo` 或 GitHub 用户名 3. 询问架构、代码或安全问题 ### 本地运行 #### 前置条件 - Node.js 18+ - npm - GitHub token - Gemini API key #### 设置 ``` git clone https://github.com/403errors/repomind.git cd repomind npm install cp .env.example .env.local npm run dev ``` 打开 [http://localhost:3000](http://localhost:3000)。 ### 模型环境变量 仓库聊天现在使用独立的模型进行文件选择和答案生成: - `GEMINI_FILE_SELECTOR_MODEL`(默认值:`gemini-3.1-flash-lite-preview`) - `GEMINI_LITE_MODEL`(默认值:`gemini-3.1-flash-lite-preview`) - `GEMINI_THINKING_MODEL`(默认值:`gemini-3-flash-preview`) ### 实时聊天反馈 仓库聊天和资料聊天都将后端活动流式传输为实时文本状态更新(无进度条),包括: - 正在选择文件 - 正在读取仓库上下文 - 正在准备回答 - 工具活动(例如:获取提交、按时间获取仓库、使用 Google 搜索) ### 仓库聊天提交工具 - `fetch_recent_commits` 在 **Lite 和 Thinking** 模式下均可用。 - 当需要提交上下文时,仓库聊天会获取当前仓库**最近 10 条提交**。 - 助手消息可能包含: - `Commits checked: just now` 或 `cached N min ago` - `Tools used: ...` ### 资料聊天工具 - 资料聊天支持匿名和登录使用。 - 资料上下文预加载**各仓库最近 20 条提交**,缓存时间为 **15 分钟**。 - 如果明确询问某个仓库,工具可以获取**该仓库最近 10 条提交**。 - `fetch_repos_by_age` 支持: - `oldest`(10 个仓库) - `newest`(10 个仓库) - `journey`(最多 20 个仓库,在仓库年龄时间线上均匀分布) - 登录用户可通过聊天输入切换开关使用跨仓库上下文。 ### 身份层级、限制与配额 - 匿名用户: - 可在仓库/资料聊天中使用 Lite 模式 - 不能使用 Thinking 模式 - 不能启用跨仓库资料上下文 - 工具配额:**每个范围 10 次/天**(`repo`、`profile`) - 文件缓存写入配额:**10MB/天** - 文件缓存 TTL:**30 分钟** - 最大可缓存文件大小:**128KB**,但在连续两次匿名查询中使用的文件除外(最大可缓存至 2MB) - 登录用户: - 可使用 Lite + Thinking - 可启用跨仓库资料上下文 - 工具配额:**每个范围 30 次/天**(`repo`、`profile`) - 文件缓存写入配额:**20MB/天** - 文件缓存 TTL:**1 小时** 当超出匿名使用限制时,UI 会提示登录并说明特定上下文的好处。 当超出已验证用户使用限制时,聊天会返回联系信息以申请扩展限制。 ### 缓存隔离规则 - 公开仓库文件缓存按仓库命名空间共享。 - 私有仓库文件缓存按操作者隔离(不共享)。 - 查询到选定文件的缓存 TTL:**24 小时** - 查询答案缓存 TTL:**24 小时** ### 开发者命令 ``` npm run dev # local dev server npm run lint # lint checks npm run test # test suite npm run test:security # security-focused tests npm run build # production build ``` ## 贡献 我们希望 RepoMind 能成为 AI 辅助代码智能领域最好的开源项目之一。欢迎各种规模的贡献。 ### 为什么要贡献 - 针对真实仓库开发实用的 Agentic AI - 改进面向公众用户的开发者工具 - 快速交付可见功能,产生直接的产品影响 ### 高影响力领域 - **查询管道和推理质量**:改进文件选择、提示和响应质量 - **安全扫描器和验证**:提高检测准确性并减少误报 - **仪表盘和 DevTools UX**:改进可发现性、工作流和性能 - **文档、测试和可靠性**:加强贡献者的上手体验和信心 ### 贡献流程 1. Fork 本仓库 2. 创建分支:`git checkout -b feature/your-change` 3. 进行包含测试的针对性修改 4. 运行 `npm run lint` 和 `npm run test` 5. 打开一个包含上下文、截图和验证说明的 Pull Request ### Pull Request 期望 - 保持范围清晰且可审查 - 当行为发生变化时添加或更新测试 - 当引入用户可见的变更时更新文档 - UI 相关工作需包含前后对比截图 ## 更新日志 近期主要更新记录在 [CHANGELOG.md](CHANGELOG.md) 中,包括截至 **v1.3.6 (2026-02-23)** 的改进。 ## 技术栈 - [Next.js](https://nextjs.org/) - [React](https://react.dev/) - [Gemini](https://ai.google.dev/) - [Prisma](https://www.prisma.io/) - [Vercel KV](https://vercel.com/docs/storage/vercel-kv) - [Vitest](https://vitest.dev/) ## 许可证 根据 MIT 许可证授权。详见 [LICENSE](LICENSE)。

403errors 构建 · 在 GitHub 上 Star · 报告问题

标签:Agentic CAG, DevSecOps, DLL 劫持, DNS解析, Gemini, TypeScript, 上游代理, 云安全监控, 交互式分析, 人工智能, 代码分析, 代码助手, 代码理解, 凭证管理, 大语言模型, 威胁情报, 安全插件, 开发者工具, 开源项目, 数据管道, 架构可视化, 用户模式Hook绕过, 自动化攻击, 软件工程, 静态分析