5db913ffcb453d249aed174bceca83d02b42348b
🦉 Crumbforest CRM & RAG System
Multilingual CRM mit Role-Based Chat, RAG-Funktionalität und Tagebuch-System.
✨ Features
🎭 Role System (Neu!)
- 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.
🎨 Theming & Accessibility
- 4 Themes: Standard, Accessible, High Contrast, Admin Dark.
- Settings Page: User-spezifische Einstellungen für Schriftgröße und Animationen.
- Group-Based Access: Unterschiedliche Ansichten für Home, Demo und Admin.
🤖 RAG & Core
- 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. Setup & Start
Der setup.sh Script kümmert sich um alles (Environment, Docker Build, Start):
./setup.sh
2. Content laden (Wichtig!)
Dieses Repo enthält nur die Engine (Core). Der Inhalt (Wissensdatenbank, Tagebücher) wird separat geladen. Nutze dafür den Content-Loader:
./load_content.sh <GIT_REPO_URL>
Ohne URL sucht er nach dem Default-Repo (aktuell Platzhalter).
3. Loslegen
Nach dem Start sind folgende Services erreichbar:
- Web App: http://localhost:8000
- Qdrant UI: http://localhost:6333/dashboard
Login Credentials:
| User | Password | Rolle | |
|---|---|---|---|
| Admin | admin@crumb.local |
admin123 |
Vollzugriff, Terminal, RAG Config |
| Demo | demo@crumb.local |
demo123 |
Chat, Rollen, Suche |
4. Bash Magic 🪄 (Scripts)
Das Projekt wird über Helper-Scripte im Root-Verzeichnis gesteuert. Kein cd compose nötig!
| Script | Beschreibung |
|---|---|
./start.sh |
Startet alle Container und prüft Health |
./stop.sh |
Stoppt Container (alias: docker compose stop) |
./restart.sh |
Full Restart (Stop -> Start) |
./logs.sh |
Zeigt Logs an (Interaktives Menü) |
🧪 Testing
Das Projekt enthält eine umfangreiche Test-Suite, gesteuert über test.sh.
./test.sh
Optionen:
- Quick Test: Health-Checks und API-Erreichbarkeit.
- 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
.venvautomatisch eingerichtet)
📂 Project Structure
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 zwei Ebenen:
- Secrets (
compose/.env): API Keys, Passwörter, Hostnames. - App Config (
crumbforest_config.json): Rollen-Definitionen, Prompts, UI-Themes.
Wichtige Env-Vars:
OPENROUTER_API_KEY=sk-or-...
MARIADB_ROOT_PASSWORD=...
# Ports werden in docker-compose.yml verwaltet (App: 8000, DB: 3306, Qdrant: 6333)
📖 Dokumentation
- walkthrough.md - Detaillierte Tour durch die letzten Änderungen.
- DATA_PRIVACY_LOCATION.md - Datenschutz-Infos.
- test.sh - Das zentrale Test-Script.
🦉 Happy Coding!
Lizenz: MIT License Kontakt: OZM / Crumb B.
Languages
Python
41.8%
HTML
39.6%
Shell
17.1%
CSS
1.4%
Dockerfile
0.1%