Commit Graph
3 Commits
Author SHA1 Message Date
Meleki 9abb5fd217 fix: esc() Quote-Escaping für Attribut-Kontexte + cache_control für Sub-Agents/Telegram
- esc() um "→" Escaping erweitert (Bug: Anführungszeichen in value="..."-Attributen brachen HTML)
- cache_control: ephemeral zu RunAgentChat() hinzugefügt (Preparer/Review/Finalizer hatten kein Prompt Caching)
- cache_control: ephemeral zu ChatNonStreaming() hinzugefügt (Telegram hatte kein Prompt Caching)
- Trailing-Leerzeile in commands-ui.js bereinigt
2026-03-07 22:42:20 +01:00
Meleki e930268476 refactor(js): 4. Iteration – Card-Preview-Helper, Button-Loading, Stream-Events vereinfacht
Neue Helper:
- _renderCardPreview(): Gemeinsamer Helper für Agent/Session-Card-Vorschau
  (ersetzt renderAgentInCard + renderSessionSelectCard Duplikate)
- withButtonLoading(btn, text, fn): Eliminiert ~15x identisches
  disable/text/try/finally/reset Pattern in allen Pages
- formatDate(): Nach ui-helpers.js verschoben (war in dashboard.js)
- createMDE(): maxHeight-Option hinzugefügt

Dedupliziert:
- handleStreamEvent: 12 Preparer/Review/Finalizer cases → 7 durch
  case-Grouping (start/text/tool_use shared)
- _escCmdAttr() entfernt → nutzt jetzt esc() aus ui-helpers.js
- feInitEasyMDE() nutzt jetzt createMDE() statt eigener EasyMDE-Init

Betroffene Dateien: ui-helpers.js, chat.js, commands-ui.js,
file-explorer.js, dashboard.js, session-page.js, cronjob-page.js,
profile-page.js, admin-page.js, server-settings-page.js, settings-page.js
2026-03-07 22:34:37 +01:00
Meleki e79a69a364 Custom Commands für Agents: gleiche Befehls-UI wie Sessions, im Chat werden Agent- und Session-Commands zusammengeführt
Backend:
- AgentRecord um CustomCommands-Feld erweitert
- DB-Migration: custom_commands Spalte für agents Tabelle
- Agent-CRUD (Create/Update) verarbeitet customCommands

Frontend:
- commands-ui.js: Shared Utility (createCommandRow, getCommandsFromUI, loadCommandsIntoUI) für Agent- und Session-Page
- Agent-Page: Benutzerdefinierte Befehle Sektion mit Typ-Dropdown
- Chat-Page: Lädt Agent-Commands + Session-Commands, zeigt beide mit Labels wenn beide vorhanden
- Session-Page: Refactored auf shared commands-ui.js Funktionen
- CSS: cmd-bar-label Styling für Agent:/Session: Trennung in der Command-Bar
2026-02-28 21:35:34 +01:00