Docs
Self-Hosting
Agent Brain ist Open Source. Du kannst es auf deiner eigenen Infrastruktur betreiben.
Anforderungen
Docker
Docker 20+ mit Docker Compose
PostgreSQL
PostgreSQL 15+ mit pgvector Extension
RAM
Minimum 2 GB (für spaCy + Embeddings)
Quick Start mit Docker
Terminal
# Repository klonen
git clone https://github.com/kaderosio/agent-brain.git
cd agent-brain
# Environment konfigurieren
cp .env.example .env
# .env editieren (siehe Tabelle unten)
# Mit Docker Compose starten
docker compose up -d
# Logs prüfen
docker compose logs -f agent-brain
# Health Check
curl http://localhost:8111/healthEnvironment Variables
| Variable | Required | Beschreibung | Beispiel |
|---|---|---|---|
| DATABASE_URL | Ja | PostgreSQL Connection String mit pgvector | postgresql://user:pass@host:5432/brain |
| ADMIN_API_KEY | Ja | Admin Key für Workspace/Agent Verwaltung | admin_secret_key_here |
| PORT | Nein | Server Port (Standard: 8111) | 8111 |
| EMBEDDING_MODEL | Nein | sentence-transformers Modell | paraphrase-multilingual-MiniLM-L12-v2 |
| SPACY_MODEL | Nein | spaCy Sprachmodell für NER | de_core_news_md |
| DREAM_CYCLE_HOUR | Nein | Stunde für den Dream Cycle (Standard: 2 = 02:00) | 2 |
| PREDICT_INTERVAL_MIN | Nein | Predictive Engine Intervall in Minuten (Standard: 60) | 60 |
| NEO4J_URI | Nein | Neo4j Connection URI (optional, für Phase 2+) | neo4j+s://xxx.databases.neo4j.io |
| NEO4J_USER | Nein | Neo4j Username | neo4j |
| NEO4J_PASSWORD | Nein | Neo4j Passwort | password_here |
Lokale Entwicklung
Terminal
# Repository klonen
git clone https://github.com/kaderosio/agent-brain.git
cd agent-brain
# Virtual Environment erstellen
python3 -m venv venv
source venv/bin/activate
# Dependencies installieren
pip install -r requirements.txt
# spaCy Sprachmodell herunterladen
python -m spacy download de_core_news_md
# Environment konfigurieren
cp .env.example .env
# .env editieren
# Server starten
uvicorn app.main:app --reload --port 8111
# API Docs im Browser
# http://localhost:8111/docsTests
Agent Brain hat eine Test-Suite mit pytest.
Terminal
# Alle Tests laufen lassen
python -m pytest tests/ -v
# Einzelnen Test laufen lassen
python -m pytest tests/test_memory.py -v
# Mit Coverage
python -m pytest tests/ --cov=app --cov-report=htmlTech Stack
API:FastAPI (Python 3.12)
Datenbank:PostgreSQL + pgvector
Embeddings:sentence-transformers (384d)
NER:spaCy (de_core_news_md)
Scheduling:APScheduler
Hosting:Docker / Railway