A chat interface for AI models using Simplemind.
Project description
Simplechat
A chat interface for AI models using Simplemind.
Overview
SimpleChat is a command-line chat application that provides an interactive interface for conversing with AI models. It features memory persistence, context awareness, and support for multiple AI providers.
Features
- Support for multiple AI providers (OpenAI, Anthropic, XAI, Ollama)
- Persistent conversation memory and context
- Entity and topic tracking
- User identity management
- Rich markdown rendering
- Command completion
- Clipboard integration
Installation
Requires Python 3.11 or higher.
$ pip install simplemind-chat
Usage
Start a chat session:
$ simplechat [--provider=<provider>] [--model=<model>]
API keys should be set in environment variables before running:
$ export OPENAI_API_KEY="..."
$ export ANTHROPIC_API_KEY="..."
$ export XAI_API_KEY="..."
$ export OLLAMA_API_KEY="..."
Options:
--provider
: LLM provider to use (openai/anthropic/xai/ollama)--model
: Specific model to use (e.g. o1-preview)
Available Commands
/copy
- Copy last assistant response to clipboard/paste
- Paste clipboard content into chat/help
- Show available commands/exit
- Exit the chat session/clear
- Clear the screen/invoke
- Invoke a specific persona/memories
- Display conversation memories
Features in Detail
Memory System
SimpleChat includes a sophisticated memory system that:
- Tracks conversation topics and entities
- Maintains user identity across sessions
- Records user preferences and characteristics
- Provides context awareness for more coherent conversations
Database
Uses SQLite for persistent storage of:
- Conversation entities
- User identity
- Essence markers (user characteristics and preferences)
- Memory markers
Rich Interface
- Markdown rendering for formatted output
- Command completion
- Status indicators
- Error handling with retries
Development
The project structure follows a modular design:
cli.py
: Command-line interface and main chat loopdb.py
: Database operations and schemaplugin.py
: Plugin system for memory and context managementsettings.py
: Configuration and path management
License
MIT License
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
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
Built Distribution
File details
Details for the file simplemind_chat-0.1.2.tar.gz
.
File metadata
- Download URL: simplemind_chat-0.1.2.tar.gz
- Upload date:
- Size: 14.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.4.28
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7eab478bace014d58c4c5f0f67c2446c8155493519b8f34ca275ca0fe7b46993 |
|
MD5 | b97d7df4911ab1b26ed0f52b117999dd |
|
BLAKE2b-256 | bd332ae18d2ba639e22c5913dc8f2aff3a2509ad78f9d646a04b1a4a4e263929 |
File details
Details for the file simplemind_chat-0.1.2-py3-none-any.whl
.
File metadata
- Download URL: simplemind_chat-0.1.2-py3-none-any.whl
- Upload date:
- Size: 14.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.4.28
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0e3d42b3893bce2e89a1c19e390ec8cd90b1489c656246de4105d96e2a85f138 |
|
MD5 | ff6f1a8df6753d81687a3ded3f11bbb4 |
|
BLAKE2b-256 | 067aa2f8758118b43af28ac91349ccc2d6c9cac57d4abc31fc100180d35b4840 |