https://github.com/daugaard/rulesbot
AI powered boardgame rules chat bot powered by LLM.
https://github.com/daugaard/rulesbot
Last synced: 3 months ago
JSON representation
AI powered boardgame rules chat bot powered by LLM.
- Host: GitHub
- URL: https://github.com/daugaard/rulesbot
- Owner: daugaard
- Created: 2023-08-10T01:30:39.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2025-10-15T14:32:52.000Z (9 months ago)
- Last Synced: 2025-10-16T11:39:34.587Z (9 months ago)
- Language: CSS
- Homepage: https://rulesbot.ai/
- Size: 47.3 MB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Agents: agents.md
Awesome Lists containing this project
README
[](https://github.com/daugaard/rulesbot/actions/workflows/test.yml)
# RulesBot
AI powered boardgame rules bot.
## Development
### Setup
```
poetry install
poetry shell # start a shell so you don't have to poetry run everything (optional)
python manage.py migrate
python manage.py createsuperuser
```
### Run
```
poetry run python manage.py runserver
```
### Shell
```
poetry run python manage.py shell
```
### Tests
```
poetry run coverage run --source='.' manage.py test
poetry run coverage report
```
## Production
All production deployment and resource management is done with Kamal.
Deploy a new version:
```
kamal deploy
```
### Run a production shell
Login to the server and start a docker container with a shell command:
```
kamal shell
```
To start a django shell:
```
kamal console
```
### Database backup
Databases are backed up daily to an S3 bucket, and retained for 30 days.
You can also create a manual backup with:
```
kamal accessory exec db_backup "sh backup.sh"
```
You can restore the latest backup with:
```
kamal accessory exec db_backup "sh restore.sh"
```
Or a specific backup file:
```
kamal accessory exec db_backup "sh restore.sh "
```
### Cleanup empty chats
```
from chat.models import ChatSession
empty_sessions = ChatSession.no_user_no_messages()
for session in empty_sessions:
session.delete()
```