- Ability to define the system message
- Ability to change the completion model via bot buttons
- A self-contained Sqlite3 database for data storage
- Dockerfile and docker-compose for running the bot in a container
- Abstract the LLM API into the LLMService trait