Skip to main content

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.

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.

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
Both services are packaged in the same Docker image and orchestrated via Docker Compose.

Get Started

1

Obtain API Keys

You need an Anthropic Claude API key and a Tavily API key. OpenAI and Groq keys are optional.
2

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.
3

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.
4

Open the Chat UI

Navigate to http://localhost:8501, enter your API keys in the sidebar, choose an agent mode, and start chatting.

Build docs developers (and LLMs) love