OpenCognitOpenCognitDOCS

Konfiguration

LLM-Provider, API-Keys und System-Einstellungen konfigurieren.

Übersicht

OpenCognit speichert alle Konfigurationen in der SQLite-Datenbank unter der Tabelle einstellungen. Die Einstellungen können über das Dashboard → Einstellungen verwaltet oder direkt über die API gesetzt werden.


LLM-Provider

Anthropic (Claude)

Der Standard-Provider für komplexe Aufgaben.

Navigiere zu Einstellungen → API-Keys und füge deinen Anthropic API-Key ein.

curl -X PUT http://localhost:3201/api/einstellungen/anthropic_api_key \
  -H "Authorization: Bearer <dein-jwt-token>" \
  -H "Content-Type: application/json" \
  -d '{"wert": "sk-ant-..."}'

OpenAI

curl -X PUT http://localhost:3201/api/einstellungen/openai_api_key \
  -H "Authorization: Bearer <dein-jwt-token>" \
  -H "Content-Type: application/json" \
  -d '{"wert": "sk-..."}'

OpenRouter

OpenRouter gibt Zugang zu 100+ Modellen (GPT-4, Gemini, Mistral, Llama, etc.) über eine einzige API.

curl -X PUT http://localhost:3201/api/einstellungen/openrouter_api_key \
  -H "Authorization: Bearer <dein-jwt-token>" \
  -H "Content-Type: application/json" \
  -d '{"wert": "sk-or-..."}'

Ollama (Lokal)

Für lokale Modelle ohne Cloud-Abhängigkeit. Standardmäßig wird http://localhost:11434 verwendet.

curl -X PUT http://localhost:3201/api/einstellungen/ollama_base_url \
  -H "Authorization: Bearer <dein-jwt-token>" \
  -H "Content-Type: application/json" \
  -d '{"wert": "http://localhost:11434"}'

Ollama muss separat installiert und gestartet sein. Modelle können mit ollama pull llama3 heruntergeladen werden.


Einstellungen-Schlüssel (Referenz)

SchlüsselBeschreibungBeispielwert
anthropic_api_keyClaude API-Keysk-ant-api03-...
openai_api_keyOpenAI API-Keysk-proj-...
openrouter_api_keyOpenRouter API-Keysk-or-v1-...
ollama_base_urlOllama-Server URLhttp://localhost:11434

Server-Konfiguration

Umgebungsvariablen — müssen vor dem Start gesetzt werden. Der install.sh-Installer generiert eine sichere .env automatisch.

VariableStandardBeschreibung
JWT_SECRET(Dev-Fallback — unsicher)JWT-Signing-Secret. In Produktion immer setzen.
ENCRYPTION_KEYAutomatisch generiert32-Byte-Hex-Schlüssel für die Verschlüsselung von API-Keys. Wird in data/.encryption_key erstellt, wenn nicht gesetzt.
PORT3201Port des Backend-Servers
APP_URLhttp://localhost:3200Öffentliche Frontend-URL. Erforderlich für OAuth-Callbacks (GitHub, Google).

Der Standard-JWT-Secret ist öffentlich bekannt. Setze in Produktion zwingend eine eigene JWT_SECRET Umgebungsvariable. Der install.sh-Installer generiert einen automatisch.

Beispiel .env-Datei:

JWT_SECRET=mein-sicherer-zufaelliger-schluessel-abc123xyz
ENCRYPTION_KEY=a1b2c3d4e5f6...  # 32-Byte-Hex
PORT=3201
APP_URL=https://mein-opencognit.beispiel.de

Agent-Konfiguration

Jeder Experte (Agent) hat seine eigene Verbindungskonfiguration. Diese wird beim Anlegen eines Agenten gesetzt.

Verbindungstypen

verbindungsTypBeschreibungKonfigurationsfelder
claudeClaude API direktmodel, maxTokens
claude-codeClaude Code CLI (Session-Persistenz)workDir, sessionPrefix
openrouterOpenRouter Multi-Modelmodel, maxTokens
ollamaLokales Ollama-Modellmodel, baseUrl
openaiOpenAI APImodel, maxTokens
bashShell-Kommandos ausführenshell, timeout
httpHTTP-Requests an externe APIsbaseUrl, headers

Beispiel: Claude-Experte

{
  "verbindungsTyp": "claude",
  "verbindungsConfig": {
    "model": "claude-opus-4-6",
    "maxTokens": 8096
  }
}

Beispiel: OpenRouter-Experte

{
  "verbindungsTyp": "openrouter",
  "verbindungsConfig": {
    "model": "anthropic/claude-3.5-sonnet",
    "maxTokens": 4096
  }
}

Beispiel: Ollama-Experte

{
  "verbindungsTyp": "ollama",
  "verbindungsConfig": {
    "model": "llama3.2",
    "baseUrl": "http://localhost:11434"
  }
}

Agent-Workspaces

Jede Aufgabe läuft in einem isolierten Workspace-Verzeichnis — Agenten können keine Dateien in die OpenCognit-Installation selbst schreiben.

Wie es funktioniert

Beim Start einer Aufgabe wird automatisch ein eigener Ordner zugewiesen:

data/workspaces/{taskId}/   ← pro Task isoliert
  .meta.json                ← Task-Metadaten
  <Agent-Output-Dateien>    ← alles was der Agent produziert

Ist kein Workspace konfiguriert, fällt der Agent immer auf data/workspaces/agent-default/ zurück — niemals auf das OpenCognit-Projektverzeichnis.

Verbotene Zonen

Der Workspace Guard verhindert, dass Agenten innerhalb der OpenCognit-Installation arbeiten. Nur diese Pfade innerhalb des Installationsordners sind erlaubt:

PfadErlaubt
data/workspaces/**✅ Ja
data/sessions/**✅ Ja
src/, server/, node_modules/⛔ Blockiert
OpenCognit-Root direkt⛔ Blockiert

Alle Pfade außerhalb der OpenCognit-Installation sind erlaubt — so zeigst du Agenten auf dein eigenes Projekt.

Agenten auf dein eigenes Projekt zeigen

Setze ein Firmen-Arbeitsverzeichnis unter Einstellungen → Firma → Arbeitsverzeichnis:

/home/du/mein-projekt/

Agenten arbeiten dann innerhalb deines Projektordners. Das Verzeichnis muss ein absoluter Pfad außerhalb der OpenCognit-Installation sein.

Wenn das konfigurierte Arbeitsverzeichnis versehentlich auf einen Pfad innerhalb des OpenCognit-Roots zeigt, loggt das System eine Warnung und weicht automatisch auf ein isoliertes data/workspaces/-Verzeichnis aus.


Heartbeat-Einstellungen

Pro Agent kann das autonome Zyklus-Verhalten konfiguriert werden:

FeldStandardBeschreibung
zyklusAktivfalseAutonome Zyklen aktivieren/deaktivieren
zyklusIntervallSek300Intervall zwischen Heartbeats (Sekunden)
budgetMonatCent0Monatliches Kostenbudget in Cent (0 = kein Limit)

Der globale Scheduler läuft alle 30 Sekunden und prüft, welche Agenten ihren nächsten Heartbeat benötigen.


Bash-Adapter Sicherheit

Der Bash-Adapter führt Shell-Kommandos aus. Es greifen zwei Schutzmechanismen:

1. Blockliste gefährlicher Befehle:

rm -rf, mkfs, dd, fdisk, format, deltree, rmdir /s

2. Workspace Guard (immer aktiv): Der Bash-Adapter läuft immer im zugewiesenen Workspace — nie im OpenCognit-Projektverzeichnis. Auch erlaubtePfade aus den Agent-Permissions werden geprüft (fail-closed).

Der Bash-Adapter sollte nur für vertrauenswürdige Agenten aktiviert werden. Laufzeit-Timeout: 5 Minuten.