Skip to content

Puskar2Sora/RepoMind

Repository files navigation



7 Specialized Agents

Semantic Code Search

Groq + Gemini

Live Progress Tracking

🌟 What is RepoMind?

RepoMind is an autonomous AI agent system that acts as a virtual senior software engineer for any GitHub repository. Paste a URL — and within minutes, RepoMind clones, analyzes, explains, and lets you chat with the entire codebase using natural language.

"From a GitHub URL to a full architectural briefing in under 2 minutes."


  GitHub URL  ──►  Clone  ──►  Scan  ──►  Parse  ──►  AI Analysis
                                                            │
                              ┌─────────────────────────────┘
                              ▼
              ┌───────────────────────────────────┐
              │        Intelligence Agent         │
              │ Architecture · Purpose · Patterns │
              └──────────────┬────────────────────┘
                             │
           ┌─────────────────┼─────────────────┐
           ▼                 ▼                 ▼
      Docs Agent       Security Agent      Q&A Agent
    README · Guide    Secrets · Vulns    RAG · Chat
           │                 │                 │
           └─────────────────┴─────────────────┘
                             │
                             ▼
                     Unified Dashboard

Features

Deep Repository Analysis

  • Autonomous multi-agent pipeline
  • Understands any public GitHub repo
  • Extracts purpose, architecture, patterns
  • Identifies entry points & key modules
  • Detects design patterns & conventions

AI-Powered Q&A Chat

  • Chat with the codebase in natural language
  • Keyword-based RAG retrieval pipeline
  • Context-aware answers with file references
  • Suggested questions for quick exploration
  • Powered by Groq LLaMA 3.3 70B

Tech Stack Detection

  • Automatically identifies all frameworks
  • Detects languages, databases, tools
  • Package manager detection
  • Deployment platform recognition
  • Color-coded technology badges

Health Score Dashboard

  • Maintainability score (0–100)
  • Security vulnerability score
  • Documentation quality score
  • Complexity analysis score
  • Scalability assessment score

Interactive Dependency Graph

  • Real-time D3.js Canvas visualization
  • Entry points, files, packages, patterns
  • Drag, zoom, and pan interactions
  • Click nodes for detailed info
  • Filter by node type

Security Scan

  • Regex + LLM hybrid scanning
  • Detects hardcoded secrets & API keys
  • Finds dangerous function patterns
  • XSS, injection vulnerability detection
  • Severity-rated issue reports

Auto Documentation

  • Generates professional README.md
  • Developer setup guide
  • Architecture documentation
  • Mermaid.js architecture diagrams
  • Improvement suggestions

Architecture

Multi-Agent Pipeline

┌─────────────────────────────────────────────────────────────────┐
│                        REPOMIND SYSTEM                          │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│   Frontend (Next.js)          Backend (Express.js)              │
│   ┌─────────────────┐         ┌──────────────────────┐          │
│   │  Landing Page   │◄───────►│  POST /api/analyze   │          │
│   │  Dashboard      │         │  GET  /api/status    │          │
│   │  Progress Track │         │  POST /api/chat      │          │
│   │  Dep. Graph     │         │  GET  /api/graph     │          │
│   │  Chat Panel     │         │  GET  /api/health    │          │ 
│   └─────────────────┘         └──────────┬───────────┘          │
│                                          │                      │
│                               ┌──────────▼───────────┐          │
│                               │     ORCHESTRATOR     │          │
│                               │   (State Machine)    │          │
│                               └──────────┬───────────┘          │
│                                          │                      │
│          ┌───────────┬──────────┬───────┴──┬──────────┐         │
│          ▼           ▼          ▼           ▼          ▼        │
│      ┌───────┐  ┌────────┐ ┌────────┐ ┌───────┐ ┌────────┐      │
│      │Clone  │  │Scanner │ │Parser  │ │Intel. │ │  Docs  │      │
│      │Agent  │  │Agent   │ │Agent   │ │Agent  │ │  Agent │      │
│      └───────┘  └────────┘ └────────┘ └───────┘ └────────┘      │
│                                                                 │
│          ┌───────────────────┐    ┌──────────────────┐          │
│          │   Security Agent  │    │    Q&A Agent     │          │
│          │  Regex + LLM Scan │    │   Keyword RAG    │          │
│          └───────────────────┘    └──────────────────┘          │
│                                                                 │
│     AI Layer:  Groq LLaMA 3.3 70B  ·  Gemini text-embedding     │
└─────────────────────────────────────────────────────────────────┘

Agent Pipeline

Multi-Agent Pipeline

Chat with Codebase

Q&A Chat Panel

Dependency Graph

Dependency Graph

Health Score Dashboard

Health Score

Tech Stack

Frontend

Next.js TypeScript Tailwind CSS React

Backend

Node.js Express ES Modules

AI & Intelligence

Groq Gemini

Deployment

Vercel Render


Project Structure

RepoMind/
│
├── 📂 backend/
│   ├── 📄 server.js                    # Express entry point
│   ├── 📂 routes/
│   │   ├── 📄 analyze.js               # POST /analyze · GET /status
│   │   └── 📄 chat.js                  # POST /chat
│   │
│   ├── 📂 orchestrator/
│   │   └── 📄 index.js                 # Agent pipeline coordinator
│   │
│   ├── 📂 agents/
│   │   ├── 📂 cloneAgent/              # GitHub repo cloning
│   │   │   └── 📄 index.js
│   │   ├── 📂 scannerAgent/            # File tree scanner
│   │   │   └── 📄 index.js
│   │   ├── 📂 parserAgent/             # Import & export parser
│   │   │   └── 📄 index.js
│   │   ├── 📂 intelligenceAgent/       # Core AI analysis
│   │   │   ├── 📄 index.js
│   │   │   └── 📄 prompts.js
│   │   ├── 📂 docsAgent/               # Documentation generator
│   │   │   └── 📄 index.js
│   │   ├── 📂 securityAgent/           # Vulnerability scanner
│   │   │   └── 📄 index.js
│   │   └── 📂 qaAgent/                 # Q&A + RAG pipeline
│   │       ├── 📄 index.js
│   │       └── 📄 embedder.js
│   │
│   ├── 📂 services/
│   │   └── 📄 llm.js                   # Groq LLM wrapper
│   │
│   ├── 📂 utils/
│   │   ├── 📄 contextBuilder.js        # LLM context builder
│   │   ├── 📄 ignoreFilter.js          # File ignore rules
│   │   └── 📄 tokenCounter.js          # Token estimator
│   │
│   ├── 📂 cloned_repos/                # Local repo storage
│   └── 📄 .env                         # Environment variables
│
└── 📂 frontend/
    ├── 📂 app/
    │   ├── 📄 page.tsx                  # Root page
    │   ├── 📄 layout.tsx               # App layout
    │   └── 📄 globals.css              # Royal gold theme
    │
    ├── 📂 components/
    │   ├── 📄 LandingPage.tsx          # Hero + URL input
    │   ├── 📄 Dashboard.tsx            # Main report view
    │   ├── 📄 ProgressTracker.tsx      # Live step tracker
    │   ├── 📄 SummaryCard.tsx          # Project summary
    │   ├── 📄 TechStackCard.tsx        # Tech badges
    │   ├── 📄 HealthScoreCard.tsx      # Score rings
    │   ├── 📄 ArchitectureView.tsx     # Mermaid diagram
    │   ├── 📄 DependencyGraph.tsx      # D3 Canvas graph
    │   ├── 📄 FileExplorer.tsx         # Important files
    │   ├── 📄 SecurityReport.tsx       # Security issues
    │   ├── 📄 ChatPanel.tsx            # Ask Repo chat
    │   └── 📄 AnimatedBackground.tsx   # Canvas animations
    │
    ├── 📄 .env.local                   # Frontend env vars
    └── 📄 tailwind.config.ts           # Tailwind config

Quick Start

Prerequisites

node >= 18.0.0
npm  >= 9.0.0
git

1️⃣ Clone the Repository

git clone https://github.com/yourusername/RepoMind.git
cd RepoMind

2️⃣ Setup Backend

cd backend
npm install

Create .env file:

GROQ_API_KEY=your_groq_api_key_here
GEMINI_API_KEY=your_gemini_api_key_here
PORT=3001
NODE_ENV=development

Start backend:

npm run dev
# RepoMind backend running on :3001

3️⃣ Setup Frontend

cd ../frontend
npm install

Create .env.local file:

NEXT_PUBLIC_API_URL=http://localhost:3001

Start frontend:

npm run dev
#  Ready at http://localhost:3000

4️⃣ Analyze Your First Repo

Open http://localhost:3000, paste any GitHub URL, and click Analyze!

https://github.com/expressjs/express    ← great starter
https://github.com/fastapi/fastapi      ← Python example
https://github.com/vitejs/vite          ← modern tooling

Getting Free API Keys

Service Used For Cost Get Key
LLM inference (all AI analysis)

100% Free

console.groq.com
Text embeddings (Q&A search)

Free Tier

aistudio.google.com

RepoMind runs completely free — no credit card required for the hackathon demo!


📡 API Reference

POST /api/analyze

Start analyzing a GitHub repository.

// Request
{
  "url": "https://github.com/expressjs/express"
}

// Response
{
  "jobId": "4e7c5990-b820-4dba-9212-f409ecb4c32e"
}

GET /api/status/:jobId

Poll the analysis progress.

// Response (running)
{
  "status": "running",
  "progress": [
    { "step": "Cloning repository",  "status": "done" },
    { "step": "Scanning files",      "status": "done" },
    { "step": "Running AI analysis", "status": "running" }
  ]
}

// Response (done)
{
  "status": "done",
  "report": {
    "projectName": "express",
    "purpose": "Fast, unopinionated web framework for Node.js",
    "techStack": ["Node.js", "JavaScript", "HTTP"],
    "healthScore": {
      "maintainability": 88,
      "security": 76,
      "documentation": 95,
      "complexity": 72,
      "scalability": 90
    },
    "importantFiles": [...],
    "securityIssues": [...],
    "generatedDocs": { "readme": "...", "setupGuide": "..." }
  }
}

POST /api/chat

Ask a question about the analyzed repository.

// Request
{
  "jobId": "4e7c5990-b820-4dba-9212-f409ecb4c32e",
  "question": "How is routing handled?",
  "projectName": "express"
}

// Response
{
  "answer": "Express routing is handled through the Router class...",
  "sources": ["lib/router/index.js", "lib/router/route.js"]
}

GET /api/graph/:jobId

Get dependency graph data for visualization.

GET /api/health

Backend health check.

{ "status": "ok", "timestamp": "2026-05-09T..." }

Agent Details

Agent Responsibility Technology
Clone Agent Clone repos, validate URLs, manage storage simple-git, GitHub API
Scanner Agent Recursive file scanning, ignore filtering, content extraction Node.js fs module
Parser Agent Import/export analysis, entry point detection, dependency mapping Regex, AST patterns
Intelligence Agent Architecture understanding, purpose extraction, health scoring Groq LLaMA 3.3 70B
Docs Agent README generation, setup guides, architecture docs, Mermaid diagrams Groq LLaMA 3.3 70B
Security Agent Secret detection, dangerous pattern scanning, vulnerability analysis Regex + Groq LLM
Q&A Agent Natural language Q&A, keyword RAG retrieval, source attribution Keyword Search + Groq

🌐 Deployment

Backend → Render

  1. Push code to GitHub
  2. Go to render.com → New Web Service
  3. Connect your repo, set root to backend/
  4. Build command: npm install
  5. Start command: node server.js
  6. Add environment variables: GROQ_API_KEY, GEMINI_API_KEY

Frontend → Vercel

cd frontend
npx vercel --prod

Add environment variable in Vercel dashboard:

  • NEXT_PUBLIC_API_URL = your Render backend URL

🗺 Roadmap

  • Multi-agent pipeline (7 agents)
  • AI-powered repository analysis
  • Interactive dependency graph
  • RAG-based Q&A chat
  • Security vulnerability scanner
  • Auto documentation generation
  • Live progress tracking
  • Royal gold UI theme
  • Animated canvas backgrounds
  • Deploy to Render + Vercel
  • GitHub OAuth login
  • Repository history & saved analyses
  • PR diff analysis ("what changed?")
  • GitHub Actions bot integration
  • Tree-sitter deep AST parsing
  • Multi-repo comparison
  • VS Code extension
  • Organization-wide analytics

Contributing

Contributions are welcome! Here's how to get started:

# Fork the repo, then:
git clone https://github.com/Puskar2Sora/RepoMind.git
cd RepoMind
git checkout -b feature/your-amazing-feature

# Make your changes
git commit -m "feat: add amazing feature"
git push origin feature/your-amazing-feature

# Open a Pull Request 

Please read CONTRIBUTING.md for our code of conduct and contribution guidelines.


📄 License

This project is licensed under the MIT License — see the LICENSE file for details.


⭐ Star this repo if RepoMind helped you understand a codebase!


Made by PUSKAR NATH


GitHub followers Twitter Follow

About

An open-source, AI-powered application using Agentic CAG to chat with any public GitHub repository or developer profile, offering deep code analysis, visual architecture maps and security audits.

Topics

Resources

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors