Raggy is an autonomous AI research agent. Ask it any question and it plans its own research strategy, searches the web, reads and curates dozens of live sources, and writes a complete, fully-cited report — with charts and analytics generated automatically from the data it finds.
No twenty open tabs. No copy-pasting. Every finding is tied back to a real, traceable source. You ask, the agent works.
Built for the age of agentic AI: not a single prompt, but a multi-step reasoning loop — plan → search → scrape → curate → synthesize → cite — grounded in real sources through retrieval-augmented generation (RAG). That is where the name comes from.
- Autonomous agentic pipeline — Raggy plans sub-questions, runs live web searches, scrapes and ranks the results, then synthesizes an answer across dozens of sources.
- Source-grounded citations — findings are backed by in-text citations and a reference list, so the proof travels with the answer and stays traceable.
- Live charts and analytics — comparison tables in a report are turned into interactive charts automatically.
- Claude-style artifact panels — expand the report, PDF, or Word document inline, on the same page.
- MCP-ready — connects to external tools and data through the Model Context Protocol.
- Clean, professional output — a strict zero-emoji policy at both the model and the render layer; every emoji becomes a proper icon or is stripped.
- Premium research-terminal UI — a black-and-red interface with a GPU-light animated starfield that stays smooth.
- Export anywhere — download any report as PDF, Word, or Markdown.
- Backend: Python, FastAPI, WebSockets
- Agent core: LangChain / LangGraph orchestration, RAG with vector embeddings for source grounding
- LLM: any OpenAI-compatible endpoint (defaults to Google Gemini's free tier)
- Retrieval: DuckDuckGo out of the box, with pluggable retrievers
- Frontend: hand-built vanilla JavaScript with Chart.js
- Protocols: Model Context Protocol (MCP) support
- Python 3.11 or newer
git clone https://github.com/fadil013/raggy.git
cd raggy
pip install -r requirements.txtCopy the example environment file and add your keys. Any OpenAI-compatible LLM works; the default setup uses Google Gemini's free tier, which comfortably fits a full research report in a single call.
cp .env.example .envA minimal working .env:
# Any OpenAI-compatible endpoint. Example below uses Google Gemini (free tier).
OPENAI_API_KEY=your_api_key_here
OPENAI_BASE_URL=https://generativelanguage.googleapis.com/v1beta/openai/
FAST_LLM=openai:gemini-flash-latest
SMART_LLM=openai:gemini-flash-latest
STRATEGIC_LLM=openai:gemini-flash-latest
# Local embeddings (no extra key needed)
EMBEDDING=huggingface:all-MiniLM-L6-v2
# Web retriever
RETRIEVER=duckduckgoGet a free Gemini key at https://aistudio.google.com/apikey. Your .env is git-ignored and never leaves your machine.
python main.pyThen open http://localhost:8000/site/index.html and start researching.
docker compose up --buildCommon settings in .env:
| Variable | Description | Example |
|---|---|---|
FAST_LLM / SMART_LLM / STRATEGIC_LLM |
Models for each reasoning tier | openai:gemini-flash-latest |
OPENAI_API_KEY |
Key for your OpenAI-compatible endpoint | your_key |
OPENAI_BASE_URL |
Base URL of that endpoint | Gemini / OpenAI / local |
RETRIEVER |
Web search backend | duckduckgo |
EMBEDDING |
Embedding model for source grounding | huggingface:all-MiniLM-L6-v2 |
TOTAL_WORDS |
Target report length | 1800 |
MAX_ITERATIONS |
Depth of the research loop | 3 |
raggy/ Core autonomous research agent (planning, retrieval, RAG, report writing)
backend/ FastAPI server, WebSocket streaming, report generation endpoints
multi_agents/ LangGraph multi-agent pipeline for detailed reports
frontend/ Web UI (vanilla JS, Chart.js, the research-terminal interface)
main.py Entry point — boots the FastAPI app on port 8000
Raggy is built on open-source foundations released under the Apache-2.0 license. See the NOTICE file for attribution.
Released under the Apache License 2.0. See LICENSE.
Fadil Awan
- Portfolio: https://fadil-awan.vercel.app
- GitHub: https://github.com/fadil013
- LinkedIn: https://www.linkedin.com/in/fadil-awan-821bb9282