Convergent is a lightweight multi-model AI chat application that lets users query multiple LMs simultaneously, compare outputs side-by-side, generate synthesized responses, search the web for real-time information, and organize conversations locally.
Unlike traditional AI chat apps that rely on a single response, Convergent helps users validate outputs across multiple models and current web sources.
Built as a single HTML application with no framework dependency.
Most AI chat apps work like this:
- Ask one model
- Get one response
- Hope it's correct
Convergent improves that workflow:
- Query multiple models simultaneously
- Compare responses side-by-side
- Generate synthesized answers
- Search the web for current information
- Save chats securely
- Organize conversations efficiently
Send one prompt to multiple AI models at the same time and compare responses in parallel.
Generate a final answer by combining outputs from multiple model responses.
Search the web for real-time information directly inside chats.
Useful for:
- Latest news
- Current events
- Recent documentation
- Real-time research
- Fact verification
Supports configurable search providers.
Use built-in slash commands for faster workflows.
Examples:
/summarize/rewrite/explain/debug
Users can also create custom slash commands for repetitive workflows. Type / in the prompt. See list of available slash commands or create new.
All conversations remain stored on your device.
No mandatory cloud storage.
Protect conversations using passphrase-based encryption.
Group chats into projects for better long-term organization.
Search across previous chats instantly.
Backup and restore conversations easily.
- Download the HTML file
- Open it in your browser
- Add your API keys
- Start chatting
No backend setup required.
No framework installation required.
Convergent works with any provider that exposes an API endpoint.
Examples:
- OpenAI
- Anthropic
- Google Gemini
- OpenRouter
- Groq
- Together AI
- Perplexity
- DeepSeek
- Mistral
- Ollama
- LM Studio
- Self-hosted OpenAI-compatible endpoints
- Custom API providers
If you're using Ollama, allow browser-based requests by setting OLLAMA_ORIGINS.
Windows:
set OLLAMA_ORIGINS=*Linux (bash) and Mac (Terminal):
export OLLAMA_ORIGINS=*For ollama running from remote server, run below commands on admin powershell console
[System.Environment]::SetEnvironmentVariable("OLLAMA_ORIGINS", "*,null", "Machine")
[System.Environment]::SetEnvironmentVariable("OLLAMA_HOST", "0.0.0.0", "Machine")Some APIs (for example NVIDIA and IndieRouter) do not allow requests from a website in the browser. They block them with a CORS error.
To use these APIs:
-
Install Node.js, then run:
node convergent-proxy.js
Leave the terminal open. If you close it, the models will stop working.
-
In the HTML file, open Settings → Endpoints. Enter
http://localhost:3030as the proxy URL and click “Test Proxy Connection”. -
Add the API’s base URL and your key as usual, then fetch models or start chatting.
The local proxy runs on your machine and forwards the requests for you. The browser talks only to the proxy (which allows CORS), and the proxy talks to the real API.
When you want to support a new CORS-restricted API, do two things:
- In the HTML file, add the API’s hostname to the
isNvidiaEndpoint(ep)function so requests are sent through the proxy. - In
convergent-proxy.js, add the same hostname to theALLOWED_HOSTSlist so the proxy is allowed to forward to it.
This is only needed for APIs that block browser CORS requests. Most other providers work without the proxy.
Use your preferred search provider for real-time information retrieval.
Examples:
- Tavily
- SearXNG
- Brave Search
- SerpAPI
- Serper
- Exa
- Custom search APIs
- HTML
- CSS
- JavaScript
- LocalStorage
- IndexedDB
- Browser Crypto APIs
Single-file architecture.
If you want to rename your existing storage folder or move your chats/configurations to a new folder:
- Use the Export Data option on the home page directly or navigate to Settings → Data
- Use Export Data to create a backup
- Rename your existing folder or create a new folder
- Use the Import Data option on the home page directly or navigate to Settings → Data
- Select the new folder location
- Import your exported backup
- Enter your existing password/passphrase
Your chats, configurations, and encrypted data will be restored and accessible in the new folder.
This project is licensed under the MIT License - see the LICENSE file for details