Multi-Agent Researcher is a full-stack, AI-powered research assistant platform. It automates the process of researching, synthesizing, and reporting on complex topics using a pipeline of specialized AI agents. The system features real-time progress tracking, authentication, and a modern, user-friendly interface.
Click an image below to play the full demo GIF!

1. Submitting a Research Query

2. Viewing Research Results
- Overview
- Demo
- Features
- Architecture & Workflow
- Tech Stack Explained
- Setup (Local Development)
- API Endpoints
- User Experience Flow
- Deployment
- Contributing
- License
- Automated Multi-Agent Research: Submit a topic and let a pipeline of AI agents handle web search, outlining, research, review, synthesis, and publishing.
- Real-Time Progress Tracking: See each agent's status and progress live as your research is processed.
- Authentication & User History: Secure login, personalized settings, and a dashboard of all your past research queries and results.
- Rich Results & Export: Download research reports, view sources and perspectives, and export or share results in multiple formats.
- Modern, Responsive UI: Beautiful, accessible interface that works on desktop and mobile.
- Customizable Workflow: Easily add, remove, or modify agents and research steps.
- Supabase Integration: Real-time database and authentication for seamless user experience.
- Gemini AI & LangGraph: Advanced content generation and multi-agent orchestration.
- User interacts with the web UI to submit research queries and view results.
- Frontend authenticates users, submits queries, and displays real-time progress/results.
- Supabase manages user accounts, stores research data, and streams updates to the UI.
- Backend receives research requests, authenticates via Supabase JWT, and launches a multi-agent workflow.
- LangGraph Agents (in the backend) perform research, synthesis, review, and reporting, updating progress in the database.
Each agent is a specialized AI module:
- Browser Agent: Performs initial web research and gathers sources.
- Editor Agent: Creates a structured outline for the research topic.
- Researcher Agent: Conducts in-depth research and drafts content for each section.
- Reviewer Agent: Fact-checks and revises the draft for accuracy and clarity.
- Writer Agent: Synthesizes the final report in the requested format.
- Publisher Agent: Saves the results and updates the query status.
- Backend:
- FastAPI: High-performance Python web framework for building APIs.
- LangGraph: Orchestrates a pipeline of AI agents, each handling a stage of the research process.
- Supabase: Provides authentication, real-time database, and secure data storage.
- Gemini AI: Used for advanced content generation and analysis.
- Frontend:
- React + Vite: Fast, modern UI with instant feedback and hot reloading.
- Supabase JS: Handles authentication and real-time data updates in the browser.
- Tailwind CSS & shadcn/ui: For a beautiful, responsive, and accessible design.
-
Create and activate a Python virtual environment (recommended):
cd backend python3 -m venv .venv source .venv/bin/activate # On Windows use: .venv\Scripts\activate
-
Install dependencies:
pip install -r requirements.txt
-
Configure environment variables:
-
Create a file named
.envin thebackenddirectory (if it doesn't exist) and add the following:SUPABASE_URL=<your-supabase-url> SUPABASE_ANON_KEY=<your-supabase-anon-key> GEMINI_API_KEY=<your-gemini-api-key> FRONTEND_URL=<your-local-frontend-url> PORT=8000
-
Replace the placeholders with your actual values.
-
-
Run the backend server:
uvicorn main:app --reload --host 0.0.0.0 --port 8000
-
Install dependencies:
npm install
-
Configure environment variables:
-
Create a file named
.envin the root directory (if it doesn't exist) and add the following:VITE_SUPABASE_URL=<your-supabase-url> VITE_SUPABASE_PUBLISHABLE_KEY=<your-supabase-anon-key> VITE_BACKEND_URL=http://localhost:8000
-
Replace the placeholders with your actual values.
-
-
Run the frontend dev server:
npm run dev
GET /api/health— Health check (returns status of backend)POST /api/research-agent— Start a research workflow (requires JWT)- Body:
{ "queryId": "uuid-of-research-query" }
All endpoints are documented and protected as needed. The main workflow endpoint requires a valid Supabase JWT for user context and Row-Level Security.
- Sign up or log in (Supabase authentication)
- Submit a research query (topic, depth, perspectives, sources, etc.)
- Track progress in real-time as each agent completes its task
- View results: Download, review sources, perspectives, and provide feedback
- Access history: All your past queries and results are available in your dashboard
-
Backend: Deploy on Railway, Render, or any platform supporting FastAPI + Python. Set environment variables for Supabase, Gemini and deployed frontend URL.
-
Frontend: Deploy on Vercel, Netlify, or any static hosting. Set environment variables for Supabase and deployed backend URL.
We welcome contributions from the community! To contribute:
- Fork this repository.
- Create a new branch for your feature or bugfix.
- Make your changes and commit them with clear messages.
- Open a Pull Request describing your changes.
Thank you for helping improve Multi-Agent Researcher!
This project is licensed under the MIT License.
