Assistent: Claude-Proxy auf Host statt Volume-Mount

- Claude CLI Volumes aus docker-compose.yml entfernt
- Eigener Proxy-Service auf dem Host (Port 3100, systemd)
- assistant.js nutzt HTTP-Request an Proxy statt child_process.spawn
- Token-Auth zwischen Container und Proxy
- Saubere Trennung: Claude laeuft nur auf dem Host

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Dieser Commit ist enthalten in:
Server Deploy
2026-03-19 22:54:56 +01:00
Ursprung c4304a4f88
Commit ecd8158532
4 geänderte Dateien mit 305 neuen und 149 gelöschten Zeilen

Datei anzeigen

@@ -1,6 +1,54 @@
TASKMATE - CHANGELOG
====================
================================================================================
19.03.2026 - v402 - Assistent: Umbau auf Claude-Proxy (HTTP/SSE)
================================================================================
- Backend: child_process.spawn('claude') ersetzt durch HTTP-Request an Claude-Proxy
- Proxy-URL: http://172.20.0.1:3100/api/chat (SSE-Streaming)
- Authentifizierung: PROXY_TOKEN als Environment-Variable
- docker-compose.yml: Claude-bezogene Volume-Mounts entfernt (claude binary, .claude config, anthropic modules)
- docker-compose.yml: PROXY_TOKEN als Environment-Variable hinzugefuegt
- .env: PROXY_TOKEN hinzugefuegt
- Geaendert: backend/routes/assistant.js, docker-compose.yml, .env, frontend/sw.js (Cache v402)
================================================================================
19.03.2026 - v401 - Assistent: Beendete Sessions koennen fortgesetzt werden
================================================================================
- Bug: Nachricht an beendete Session senden fuehrte zu "Keine aktive Session"
- Fix: sendMessage() reaktiviert beendete Sessions automatisch via assistant:start
- Session wird im Backend auf active zurueckgesetzt, dann Nachricht gesendet
- Geaendert: frontend/js/assistant.js, frontend/sw.js (Cache v401)
================================================================================
19.03.2026 - v400 - Assistent: Layout-Fixes (Zentrierung, Input-Bar, Flex-Kette)
- Empty-State Icon+Text jetzt zentriert (Flexbox statt position absolute)
- Input-Bar immer sichtbar (auch ohne aktive Session)
- Layout-Kette korrekt: view flex-column, layout flex:1, chat flex-column
- Empty-State im HTML vor Input-Bar verschoben (korrektes Flex-Order)
================================================================================
19.03.2026 - v399 - Assistent: Print-Modus statt interaktiver Prozess
- Backend komplett umgestellt auf claude -p (print mode) mit --output-format stream-json
- Kein dauerhafter Prozess mehr - jede Nachricht ist ein separater Aufruf
- --resume haelt den Konversationskontext zwischen Aufrufen
- Sauberer Output ohne Terminal-UI (Status-Balken, Steuerzeichen)
- Neue Status-Events: active (bereit), thinking (verarbeitet)
- Session-Reconnect beim Oeffnen aktiver Sessions
- Frontend: Neuer Status 'Bereit' fuer wartende Sessions
================================================================================
19.03.2026 - v398 - Assistent: Berechtigungspruefung Fix + CSS-Spezifitaet
- requireAssistantAccess/checkSocketAccess: Prueft jetzt username UND displayName
- Erlaubte Werte: hendrik, monami, hendrik_gebhardt@gmx.de, momohomma@googlemail.com
- CSS: .view.view-assistant statt .view-assistant (hoehere Spezifitaet gegen .view override)
================================================================================
19.03.2026 - v397 - Assistent: Layout-Fix Fensterhoehe (kein Seiten-Scroll mehr)
- .view-assistant begrenzt auf verfuegbaren Platz (100vh minus Header minus Tabs)
- Durchgaengige Hoehen-Kette: view -> layout -> chat -> messages
- min-height: 0 auf assistant-messages damit flex-shrink greift
- Nur noch Chat-Verlauf scrollt intern, Eingabeleiste bleibt sichtbar
================================================================================
19.03.2026 - v396 - Claude Assistent: Task an Assistent Button (Schritt 3/3)