ChatAgents is a full-stack AI assistant that gives large language models real-time access to the web. Built on a Streamlit + FastAPI hybrid architecture with LangGraph orchestration, it lets you switch between a lightning-fast mode for simple queries and a deep-research mode that crawls, searches, and synthesizes information from multiple sources before answering.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/EllisYuan/ChatAgents/llms.txt
Use this file to discover all available pages before exploring further.
Quickstart
Get ChatAgents running locally in under 5 minutes with pip and a couple of API keys.
Docker Deployment
Deploy the full stack with a single
docker-compose up command, including health checks.Agent Modes
Understand the difference between Fast Mode and Deep Thinking Mode and when to use each.
API Reference
Explore the FastAPI backend — streaming endpoint, session management, and more.
What ChatAgents Can Do
ChatAgents wraps any supported LLM (Claude, OpenAI, or Groq) in a ReAct agent loop that can autonomously search the web, extract page content, and deep-crawl sites to answer your questions with cited sources.Web Search
Real-time Tavily Search with configurable depth, topic filtering (news, finance, general), and time-range constraints.
Content Extraction
TavilyExtract pulls full page content from one or more URLs, summarized by a fast LLM to save tokens.
Deep Crawl
TavilyCrawl follows nested links from a starting URL and returns a structured summary of an entire site.
Streaming Responses
All agent output streams token-by-token over NDJSON, with real-time tool-call visualization in the UI.
Session Memory
Every conversation is persisted as JSON with a unique session ID, title auto-generation, and rename/delete support.
Multi-Model Support
Plug in Claude Haiku, Sonnet, or Opus; OpenAI GPT models; or Groq — switchable per request.
Architecture at a Glance
ChatAgents is split into two services that communicate over HTTP:- Streamlit Frontend (port
8501) — chat UI, sidebar API key management, tool-call visualization - FastAPI Backend (port
8080) — LangGraph agent, streaming endpoint, session CRUD API
Get Started
Obtain API Keys
You need an Anthropic Claude API key and a Tavily API key. OpenAI and Groq keys are optional.
Install & Configure
Clone the repo, create a virtual environment, install dependencies, and copy
.env.sample to .env with your keys. See the Quickstart for exact commands.Start the Services
Run
python app.py in one terminal and streamlit run streamlit_app.py in another — or use docker-compose up -d --build for a one-liner.Open the Chat UI
Navigate to http://localhost:8501, enter your API keys in the sidebar, choose an agent mode, and start chatting.