RetroChat is a powerful command-line interface for interacting with various AI language models. It provides a seamless experience for engaging with different chat providers while offering robust features for managing and customizing your conversations.
One installer for all platforms (Windows/Linux/macOS):
powershell -ExecutionPolicy Bypass -Command "iwr -useb https://raw.githubusercontent.com/DefamationStation/Retrochat-v2/main/install.ps1 | iex"
curl -fsSL https://raw.githubusercontent.com/DefamationStation/Retrochat-v2/main/install.ps1 | pwsh -
Then run rchat
from anywhere! 🎉
What the installer does:
- Downloads to
~/.retrochat/
- Sets up Python environment
- Installs dependencies
- Creates global
rchat
command - Enables auto-updates
Interactive installation:
# Download first, then run with options
./install.ps1 -Interactive
./install.ps1 -Force
./install.ps1 -CustomPath "C:\MyApps\RetroChat"
- 🤖 Multi-Provider Support: Ollama, Anthropic, OpenAI, Google, OpenRouter
- 📝 Document RAG: Load and query local documents (PDF, Word, Markdown, TXT)
- 🔄 Auto-Updates: Always get the latest features automatically
- ⚙️ Customizable Settings: Fine-tune AI behavior with adjustable parameters
- ✏️ Conversation Editing: Edit entire conversation history
- 📋 Multi-line Input: Enter complex queries with ease
- 🎯 Command System: Control everything with '/' prefixed commands
- 🔢 Token Counting: Track usage for messages and conversations
- 🔀 Provider Switching: Switch between AI providers mid-conversation
ATTENTION: RAG only works with nomic-embed-text
on Ollama currently.
- Create a folder in
~/.retrochat/
and put your files in it - Type
/load <folder_name>
to process documents - Use
@<folder_name> <question>
to query documents
For development or custom setup:
- Clone the repository:
git clone https://github.com/DefamationStation/Retrochat-v2.git
- Create virtual environment:
python -m venv venv
- Activate environment:
venv\Scripts\activate
(Windows) orsource venv/bin/activate
(Linux/macOS) - Install dependencies:
pip install -r requirements.txt
- Run:
python retrochat.py
cd C:\Users\<your username>\.retrochat
- Install the required packages:
pip install -r requirements.txt
- Run the script with the setup flag to configure RetroChat:
python retrochat.py --setup
NOTE: If chromadb doesn't properly install for you, all you need to do is download and install Microsoft Visual Studio Build Tools and after installing that navigate to the individual components and install MSVC v143 - VS 2022 C++ x64/x86 build tools (Latest) and Windows 11 SDK (10.0.22621.0)
After installation, you can start RetroChat by running the shortcut command:
rchat
This command can be used from any directory in your terminal.
RetroChat supports various commands to manage your chat sessions and settings:
/chat rename <new_name>
- Rename the current chat/chat delete
- Delete the current chat/chat new <chat_name>
- Create a new chat/chat reset
- Reset the current chat history/chat list
- List all available chats/chat open <chat_name>
- Open a specific chat/set system <message>
- Set the system message/set
- Show available parameters and their current values/set <parameter> <value>
- Set a parameter/edit
- Edit the entire conversation/show length
- Display the total conversation tokens/show context
- Display the context of the last query/switch
- Switch to a different provider or model/help
- Display the help message/exit
- Exit the program/load <folder_name>
- Load documents from a specified folder@<folder_name> <query>
- Query loaded documents from a specific folder
RetroChat now supports loading and querying documents:
- Use
/load <folder_name>
to load documents from a specific folder in your.retrochat
directory. - Query loaded documents using
@<folder_name> <your question>
. - Supported file types include .txt, .pdf, .doc, .docx, and .md.
RetroChat uses a .env
file to store configuration settings. This file is automatically created in the .retrochat
directory in your home folder. You can manually edit this file to set API keys and other preferences.
RetroChat checks for updates automatically when you start the application. If updates are available, you'll be prompted to install them.
Contributions to RetroChat are welcome! Please feel free to submit pull requests or create issues for bugs and feature requests.
MIT License.