Production-Ready Knowledge & Memory System für militärische Wargaming-Szenarien
Vollständige Implementierung eines RAG-basierten Systems mit Memory-Layer für intelligente Dokumentenanalyse und Entscheidungsunterstützung.
- 🐳 Vollständig containerisiert - Alle Services in Docker, keine lokale Installation nötig
- 🔍 Semantische Suche - ChromaDB-basiertes RAG mit OpenAI Embeddings
- 🧠 Memory-Layer - Mem0-Integration für persistente Memories und Präferenzen
- 🤖 OpenAI Agent-Bridge - Direkte Integration mit OpenAI Responses API
- 📊 Strukturiertes Logging - JSON-Logs mit Correlation-IDs und Tracing
- 🛡️ Production-Ready - Health-Checks, Error-Handling, Thread-Safety
- 🔧 Developer-Friendly - Makefile mit 30+ Commands, CI/CD Pipeline
- 📚 Umfassende Dokumentation - Vollständige Anleitung in HowToUse.md
# 1. Repository klonen
git clone <repository-url>
cd Wargame_MCP
# 2. Konfiguration erstellen
make setup
# Bearbeite .env und füge deinen OPENAI_API_KEY hinzu
# 3. Alles starten und initialisieren
make init
# Das wars! System läuft jetzt mit:
# - ChromaDB auf Port 8000
# - Mem0 auf Port 8080
# - Wargame MCP App containerisiert# Dokumente einlesen
make ingest
# Suchen
docker-compose exec wargame-mcp wargame-mcp search "urban defense"
# Health-Check
make health
# Logs anzeigen
make logs
# Alle Commands anzeigen
make help# Virtual Environment erstellen
python -m venv venv
source venv/bin/activate
# Paket installieren
pip install -e .
# Umgebungsvariablen setzen
export CHROMA_PATH="./data/chroma"
export OPENAI_API_KEY="sk-..." # optional
# Dokumente einlesen
wargame-mcp ingest examples/sample_docs --fake-embeddings
# Suchen
wargame-mcp search "urban defense" --fake-embeddings┌─────────────────────────────────────────────────────────────┐
│ Docker Compose Stack │
├─────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ ChromaDB │ │ Mem0 │ │ Wargame MCP │ │
│ │ Vector DB │◄───┤ Memory DB │◄───┤ App │ │
│ │ Port: 8000 │ │ Port: 8080 │ │ (CLI/API) │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
- ChromaDB - Vector Store für semantische Suche
- Mem0 - Memory-Layer für User-Präferenzen und Episoden
- Wargame MCP - CLI-Tools und MCP Server
- OpenAI Integration - Agent-Bridge für intelligente Analyse
Detaillierte Architektur-Dokumentation: docs/PRD.md
- HowToUse.md - Vollständige Anleitung mit Beispielen
- docs/PRD.md - Product Requirements & Spezifikation
- CHANGELOG.md - Versionshistorie und Updates
- Makefile - Alle verfügbaren Commands
# Dev-Dependencies installieren
make dev-install
# Tests ausführen
make test-local
# Code-Quality-Checks
make qa
# Formatieren
make format- pytest - Testing-Framework mit Coverage
- ruff - Linting und Formatting
- mypy - Type-Checking
- GitHub Actions - CI/CD Pipeline
Diese Version behebt 4 kritische Bugs aus v0.1.0:
- ✅ Missing Config Settings - Mem0-Konfiguration fehlte
- ✅ Unsafe Type Conversions - Kein Error-Handling bei int/float
- ✅ No Error Handling in Ingestion - Single file failure crashed batch
- ✅ Thread-Unsafe Singleton - Race Conditions in Mem0-Client
Details: CHANGELOG.md
- Version: 0.2.0
- Status: ✅ Production-Ready
- Python: >= 3.11
- Docker: >= 20.10
- Test Coverage: 85%+ (Ziel: 90%)
Pull Requests sind willkommen! Bitte:
- Fork das Repository
- Erstelle einen Feature-Branch (
git checkout -b feature/amazing-feature) - Commit deine Changes (
git commit -m 'Add amazing feature') - Push zum Branch (
git push origin feature/amazing-feature) - Öffne einen Pull Request
- Folge dem bestehenden Code-Style
- Füge Tests hinzu für neue Features
- Aktualisiere die Dokumentation
- Lasse
make qadurchlaufen
[Hier Lizenz einfügen]
Dieses Projekt nutzt:
- ChromaDB - Vector Database
- Mem0 - Memory Layer
- OpenAI - LLM & Embeddings
- Typer - CLI Framework
- Rich - Terminal Formatting
Erstellt mit ❤️ für die Wargaming-Community