Meleki
db1a7c7f64
Refactoring + Dokumentation: api.js komprimiert (745→267 Zeilen), SseHelper extrahiert, DatabaseService in Partial Classes aufgeteilt, unbenutztes CSS entfernt, ARCHITECTURE.md/ARCHITECTURE_QUICK.md/README.md aktualisiert (neue Features: Embedding, Remote, API-Keys, 16 Tools)
2026-03-12 13:29:19 +01:00
Meleki
a646e695cd
feat: embedding model warning modal on frontend load
...
- InfoEndpoint: EmbeddingService injiziert, embeddingAvailable in /api/info Response
- title.js: _showEmbeddingWarning() Modal via _createModal() wenn Modell fehlt
- base.css: ol margin-left wie ul (geordnete Listen)
2026-03-11 14:38:27 +01:00
Meleki
8e7bda50f9
feat: Ordner erstellen/löschen im File Explorer
...
Backend (WorkspaceEndpoint.cs):
- POST /api/workspace/mkdir – Ordner im Session-Workspace erstellen
- DELETE /api/workspace/dir – Leeren Ordner im Session-Workspace löschen
- POST /api/workspace/agent/mkdir – Ordner im Agent-Memory erstellen
- DELETE /api/workspace/agent/dir – Leeren Ordner im Agent-Memory löschen
- POST /api/workspace/browse/mkdir – Ordner im Folder-Browser erstellen
- Sicherheit: Path-Traversal-Schutz, Root nicht löschbar, nicht-leer → 409
Frontend (file-explorer.js):
- 📁 + Button im Header für neuen Ordner (File Explorer + Folder Browser)
- 🗑️ Button bei jedem Ordner (erscheint on hover, nur File Explorer)
- Validierung: ungültige Zeichen werden abgelehnt
CSS:
- base.css: Icon-Button mit zwei Icons (folder + plus)
- file-explorer.css: Ordner-Zeile als Flex (Label + Delete-Button)
2026-03-05 21:01:09 +01:00
Meleki
df68843e82
feat: EasyMDE-Editor für Persona und Session-Kontext
...
- profile-page.js: #profilePersona textarea → EasyMDE mit Toolbar und Dark-Theme
- session-page.js: #sessionContext textarea → EasyMDE mit Toolbar und Dark-Theme
- form.css: Override-Styles für EasyMDE in Formularen (height: auto, border-radius)
- base.css: ul margin-left für korrekte Listen-Einrückung
- Beide Editoren: sauberes Cleanup via toTextArea() in destroy()
- Nutzt bestehende fe-mde-wrap Styles aus file-explorer.css
2026-03-05 20:24:30 +01:00
Meleki
9140c4fcc7
feat(dashboard): klickbare Session-Cards + UI-Verbesserungen
...
- Session-Cards mit Agent sind klickbar (navigiert zum Chat)
- Card-Menü bleibt nutzbar via pointer-events Logik
- Menü-Reihenfolge: Bearbeiten vor Chat öffnen
- Session-Beschreibung: textarea → input (einzeilig)
- Globale Link-Styles (a { color: var(--primary) })
2026-03-05 19:50:43 +01:00
Meleki
64c3f165e9
style: CSS-Verbesserungen (dvh, shared-page, button-layout)
2026-03-05 09:39:09 +01:00
Meleki
9af1465ee5
Hourglass-Icon Spin-Animation hinzugefügt
2026-03-02 11:46:58 +01:00
Meleki
24cbce40c4
Globale .icon-btn Klasse für alle Icon-only Buttons, Hover-Filter, Theme-Anpassungen
2026-02-28 20:09:12 +01:00
Meleki
1bd14cdf94
Enter sendet, Shift+Enter für Zeilenumbruch
2026-02-28 00:18:42 +01:00
Meleki
da5959f5a0
Add Inter and JetBrains Mono fonts
2026-02-28 00:13:00 +01:00
Meleki
b07e776b7a
Massive style changes
2026-02-27 23:39:06 +01:00
Meleki
b1c1e462cc
Dashboard: Session message counts, workspace path, Agent persona
2026-02-27 17:58:14 +01:00
Meleki
6556d62f17
Add /api/info endpoint for build time, title.js, UI tweaks
2026-02-27 14:29:43 +01:00
Meleki
680f1d6fe2
Frontend style refactoring
2026-02-27 07:18:12 +01:00
Meleki
a90b9427a5
Sessions: edit form, soft-delete, lazy creation, chat as separate page
...
- Session click opens edit form (name, description, image, agent) instead of chat
- Chat is now a separate route (#chat/{id}), opened via button
- Sessions created on save, not on click
- Soft-delete for sessions (is_deleted flag)
- Delete button in session form
- Removed title double-click editing from chat
- Card images now square (aspect-ratio: 1)
- New Session as placeholder card
2026-02-26 21:25:35 +01:00
Meleki
0cd2d51d32
CSS refactor: border-width variable, darker border palette, hover/padding cleanup
2026-02-26 20:28:05 +01:00
Meleki
4bffcf2ee1
theme.css: CSS-Variablen für Farben und Größen, alle Files umgestellt
2026-02-26 20:09:33 +01:00
Meleki
c0db8322f3
CSS aufgeteilt (base/main/prototype), prototype.html eigenes Init-Script
2026-02-26 19:56:23 +01:00