Docs: Update README.md

- Reflect 15 roles (including DeepBit)
- Document ./setup.sh and ./test.sh usage
- Update Feature list (RAG, Memory)
- Update Tech Stack info
This commit is contained in:
2025-12-07 20:56:25 +01:00
parent 7457733f75
commit ec70f14841

View File

@@ -5,9 +5,9 @@
## ✨ Features
### 🎭 Role System (Neu!)
- **8 Unique Characters**: DumboSQL, SnakePy, KungfuTaube, etc.
- **Role-Based Chat**: Dedizierte Chat-Interfaces für jede Rolle.
- **Syntax Highlighting**: Code-Blöcke werden automatisch hervorgehoben.
- **15 Unique Characters**: Von **DeepBit** (System Octopus) über **Prof. Eule** bis **Schraubaer**.
- **Role-Based Chat**: Dedizierte Chat-Interfaces für jede Rolle mit individueller Persona.
- **Memory & RAG**: Rollen haben Zugriff auf das "Nullfeld" (Wissensdatenbank) und erinnern sich an Kontext.
- **Mock Code Execution**: Simulierte Code-Ausführung für Python/PHP.
- **History Export**: Chat-Verläufe als JSON exportieren.
@@ -17,58 +17,83 @@
- **Group-Based Access**: Unterschiedliche Ansichten für Home, Demo und Admin.
### 🤖 RAG & Core
- **Document Auto-Indexing**: Markdown-Dateien werden automatisch indexiert.
- **Semantic Search**: Durchsuche Dokumentation via Embeddings.
- **Multi-Provider**: OpenAI, Anthropic Claude, OpenRouter.
- **Document Auto-Indexing**: Markdown-Dateien werden automatisch in **Qdrant** indexiert.
- **Deep Memory**: Semantische Suche ermöglicht komplexes Kontext-Verständnis (z.B. "Was ist das Nullfeld?").
- **Multi-Provider**: Support für OpenAI, Anthropic Claude, Google Gemini und OpenRouter.
## 🚀 Quick Start
Das System läuft vollständig in Docker.
### 1. Starten
```bash
./start.sh
```
*Startet alle Container (App, DB, Qdrant).*
### 1. Setup & Start
Der `setup.sh` Script kümmert sich um alles (Environment, Docker Build, Start):
### 2. Setup (Einmalig)
```bash
python3 setup_demo_user.py
./setup.sh
```
*Richtet den Demo-User mit korrekter Gruppe und Theme ein.*
### 3. Loslegen
Öffne **[http://localhost:8000](http://localhost:8000)**
### 2. Loslegen
Nach dem Start sind folgende Services erreichbar:
- **Web App**: [http://localhost:8000](http://localhost:8000)
- **Qdrant UI**: [http://localhost:6333/dashboard](http://localhost:6333/dashboard)
**Login Credentials:**
- **User**: `demo@crumb.local`
- **Pass**: `demo123`
| User | Email | Password | Rolle |
|------|-------|----------|-------|
| **Admin** | `admin@crumb.local` | `admin123` | Vollzugriff, Terminal, RAG Config |
| **Demo** | `demo@crumb.local` | `demo123` | Chat, Rollen, Suche |
---
## 🧪 Testing
Das Projekt enthält eine umfangreiche Test-Suite, gesteuert über `test.sh`.
```bash
./test.sh
```
**Optionen:**
1. **Quick Test**: Health-Checks und API-Erreichbarkeit.
2. **Integration Test**: Der volle Flow:
- Erstellt Kind & Tagebucheintrag (Python auf Host)
- Indiziert den Eintrag via FastAPI in Qdrant
- Prüft semantische Suche und RAG-Antworten
- *Requires: Python 3 in lokaler Umgebung (wird via `.venv` automatisch eingerichtet)*
---
## 📂 Project Structure
- `crumbforest_config.json` - Zentrale Konfiguration für Rollen & Themes.
- `app/routers/crumbforest_roles.py` - Backend Logik für das Rollensystem.
- `app/templates/crumbforest/` - Frontend Templates (Dashboard, Chat).
- `docs/` - Dokumentation und RAG-Quellen.
- `crumbforest_config.json` - Zentrale Konfiguration für alle 15 Rollen & Themes.
- `app/routers/` - FastAPI Endpoints (Auth, Chat, RAG).
- `app/services/` - Business Logic (RAG Service, Provider Factory).
- `compose/` - Docker Configuration (`docker-compose.yml`, `.env`).
- `docs/` - Dokumentation und RAG-Quellen (Markdowns).
- `tests/` - Python Integration Tests.
## 🔧 Configuration
Die Konfiguration erfolgt über `.env` (Secrets) und `crumbforest_config.json` (Logik).
Die Konfiguration erfolgt über zwei Ebenen:
1. **Secrets (`compose/.env`)**: API Keys, Passwörter, Hostnames.
2. **App Config (`crumbforest_config.json`)**: Rollen-Definitionen, Prompts, UI-Themes.
**Wichtige Env-Vars:**
```bash
OPENROUTER_API_KEY=sk-or-...
APP_SECRET=...
MARIADB_PASSWORD=...
MARIADB_ROOT_PASSWORD=...
# Ports werden in docker-compose.yml verwaltet (App: 8000, DB: 3306, Qdrant: 6333)
```
## 📖 Dokumentation
- **[walkthrough.md](walkthrough.md)** - Detaillierte Tour durch das neue System.
- **[walkthrough.md](walkthrough.md)** - Detaillierte Tour durch die letzten Änderungen.
- **[DATA_PRIVACY_LOCATION.md](DATA_PRIVACY_LOCATION.md)** - Datenschutz-Infos.
- **[QUICKSTART.md](QUICKSTART.md)** - (Legacy) RAG API Beispiele.
- **[test.sh](test.sh)** - Das zentrale Test-Script.
## 🦉 Happy Coding!
@@ -76,4 +101,3 @@ MARIADB_PASSWORD=...
**Lizenz**: MIT License
**Kontakt**: OZM / Crumb B.