Skip to content

Hunter5Thompson/Wargame_MCP

Repository files navigation

Wargame MCP

CI Version Python Docker License

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.


✨ Features

  • 🐳 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

🚀 Schnellstart (Docker - Empfohlen)

# 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

Verwendung

# 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

📦 Lokale Installation (ohne Docker)

# 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

🏗️ Architektur

┌─────────────────────────────────────────────────────────────┐
│                    Docker Compose Stack                      │
├─────────────────────────────────────────────────────────────┤
│                                                               │
│  ┌──────────────┐    ┌──────────────┐    ┌──────────────┐  │
│  │   ChromaDB   │    │     Mem0     │    │ Wargame MCP  │  │
│  │  Vector DB   │◄───┤  Memory DB   │◄───┤     App      │  │
│  │  Port: 8000  │    │  Port: 8080  │    │  (CLI/API)   │  │
│  └──────────────┘    └──────────────┘    └──────────────┘  │
│                                                               │
└─────────────────────────────────────────────────────────────┘

Komponenten

  • 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


📚 Dokumentation


🔧 Entwicklung

# Dev-Dependencies installieren
make dev-install

# Tests ausführen
make test-local

# Code-Quality-Checks
make qa

# Formatieren
make format

Verfügbare Tools

  • pytest - Testing-Framework mit Coverage
  • ruff - Linting und Formatting
  • mypy - Type-Checking
  • GitHub Actions - CI/CD Pipeline

🐛 Behobene Bugs (v0.2.0)

Diese Version behebt 4 kritische Bugs aus v0.1.0:

  1. Missing Config Settings - Mem0-Konfiguration fehlte
  2. Unsafe Type Conversions - Kein Error-Handling bei int/float
  3. No Error Handling in Ingestion - Single file failure crashed batch
  4. Thread-Unsafe Singleton - Race Conditions in Mem0-Client

Details: CHANGELOG.md


📊 Status

  • Version: 0.2.0
  • Status: ✅ Production-Ready
  • Python: >= 3.11
  • Docker: >= 20.10
  • Test Coverage: 85%+ (Ziel: 90%)

🤝 Contributing

Pull Requests sind willkommen! Bitte:

  1. Fork das Repository
  2. Erstelle einen Feature-Branch (git checkout -b feature/amazing-feature)
  3. Commit deine Changes (git commit -m 'Add amazing feature')
  4. Push zum Branch (git push origin feature/amazing-feature)
  5. Öffne einen Pull Request

Development Guidelines

  • Folge dem bestehenden Code-Style
  • Füge Tests hinzu für neue Features
  • Aktualisiere die Dokumentation
  • Lasse make qa durchlaufen

📄 Lizenz

[Hier Lizenz einfügen]


🙏 Credits

Dieses Projekt nutzt:


📞 Support


Erstellt mit ❤️ für die Wargaming-Community

About

FullStack Development by Codex

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors