A universal terminal chat client that auto-detects and connects to any chat API endpoint
Project description
llm-chatifier
Dead simple terminal chat client for LLM APIs.
Features
- Auto-detection: Automatically detects API type by testing common endpoints
- Multi-API support: Works with OpenAI, Ollama, Anthropic, and generic chat APIs
- Rich terminal UI: Beautiful formatting with markdown support
- Smart defaults: Tries common ports and endpoints automatically
- Minimal configuration: Just provide an IP and optionally port/token
Install
pipx install llm-chatifier
Or with pip:
pip install llm-chatifier
Usage
# Auto-detect API on localhost
llm-chatifier
# Specify IP
llm-chatifier 192.168.1.100
# With port and token
llm-chatifier 192.168.1.100 --port 8080 --token sk-...
# Force specific API type
llm-chatifier --override openai
# Use specific model
llm-chatifier --model gpt-4
# Verbose output to see detection process
llm-chatifier -v
Supported APIs
- OpenAI compatible: OpenAI, llama.cpp, vLLM, LocalAI, etc.
- Ollama: Local Ollama installations
- Anthropic: Claude API
- Google Gemini: Gemini Pro and Vision models
- Cohere: Command and Command-R models
- Generic: Any chat API with common REST patterns
Commands
Once connected, you can use these commands in the chat:
/exitor Ctrl+C - Quit the application/clear- Clear conversation history/help- Show help message- Ctrl+Enter - Multi-line input mode
How it Works
- Detection: Tests common ports (8080, 8000, 3000, 5000, 11434, 80, 443) if no port specified
- Protocol: Tries HTTPS first, falls back to HTTP
- Endpoints: Tests API-specific endpoints to identify the service type
- Connection: Creates appropriate client and tests authentication
- Chat: Starts interactive terminal session
API Detection
The tool automatically detects API types by testing these endpoints:
- OpenAI:
/v1/models,/v1/chat/completions - Anthropic:
/v1/messages,/v1/models - Ollama:
/api/tags,/api/generate - Gemini:
/v1beta/models,/v1beta/models/gemini-pro:generateContent - Cohere:
/v1/chat - Generic:
/chat,/api/chat,/message,/api/message
Examples
# Local Ollama (usually on port 11434)
llm-chatifier localhost
# Remote OpenAI-compatible API
llm-chatifier my-server.com --port 8000 --token sk-xxx
# Force Ollama even if detection fails
llm-chatifier --override ollama
# Connect to Anthropic API
llm-chatifier --override anthropic --token your-claude-key
# Connect to Google Gemini
llm-chatifier --override gemini --token your-gemini-key
# Connect to Cohere
llm-chatifier --override cohere --token your-cohere-key
Development
git clone https://github.com/fluffypony/llm-chatifier
cd llm-chatifier
pip install -e .
python -m chatifier --help
License
BSD-3-Clause
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
llm_chatifier-0.1.9.tar.gz
(20.9 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file llm_chatifier-0.1.9.tar.gz.
File metadata
- Download URL: llm_chatifier-0.1.9.tar.gz
- Upload date:
- Size: 20.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
94c20ec38c79743f352b6ce7c205f1760333dd01ac15c1c951737e479dfe91ad
|
|
| MD5 |
79cd45fb7b2716e6c752f8cc6ef0ac02
|
|
| BLAKE2b-256 |
94a718c1b3a634d865b79e85cb7129ce3b34057b4a552e8d3d7956ce8915dd2b
|
File details
Details for the file llm_chatifier-0.1.9-py3-none-any.whl.
File metadata
- Download URL: llm_chatifier-0.1.9-py3-none-any.whl
- Upload date:
- Size: 21.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
14e583d5e7cf8aadc504db406f8931bd322e16a9db3dff1570b5b59e06e7e28e
|
|
| MD5 |
61ad3e4c6ee5a4565366ad6bbf115ddb
|
|
| BLAKE2b-256 |
c078e2723290c89f72b74f0623166187d53f26b3f5d10cb43b15fd9f5e67c4e7
|