Meleki
51db01752f
style(chat): code-Hintergrund in User-Nachrichten anpassen
2026-03-04 12:01:37 +01:00
Meleki
07ea0fcafb
Zeilenreferenz-Hinweis (cat -n) aus System-Prompt entfernt und automatisch an User-Nachricht angehängt
...
- System-Prompt: 3x cat-n Hinweise entfernt (Workspace-Block, toolAny-Erinnerung, Workspace-Erinnerung)
- chat.js: <hint> Tag mit cat-n Hinweis wird automatisch angehängt wenn Datei-Refs Zeilennummern haben
- chat.js: Einzelne Zeilen (path:11) werden jetzt korrekt geparst und angezeigt
- chat.css: hint Tag Styling, file-ref-chip Spacing angepasst
2026-03-04 11:59:19 +01:00
Meleki
2673aecc5b
feat: Emoji-Picker Button im Chat-Input (rechts neben Senden)
...
- #emojiBtn links neben #send platziert
- Fluent Emoji 3D Rendering via parseFluentEmojis()
- Kein Tooltip auf den Emoji-Buttons
- Picker öffnet sich rechts-ausgerichtet über dem Button
- emoji.userdata.js geladen (Kategorien + Mappings)
- Schließt beim Klick außerhalb oder beim destroy()
2026-03-03 16:18:00 +01:00
Meleki
cdd3414771
Fix button spacing, opacity simplification, gitignore cleanup
2026-03-03 15:53:59 +01:00
Meleki
c720a06c16
feat: todo_write tool-box mit custom parser, kein input, standardmäßig sichtbar
2026-03-03 14:50:22 +01:00
Meleki
c3865d239f
chore: CSS-Cleanup opacity → var(--semi-transparent), TODO-Updates
2026-03-03 11:52:22 +01:00
Meleki
a14a991a0f
feat: Nachrichten als gelöscht markieren
...
- DB: deleted_on TEXT Spalte in messages (Migration)
- Backend: ToggleMessageDelete(), includeDeleted-Parameter in allen History-Queries
- Neuer Endpoint: PUT /api/messages/{id}/delete
- Frontend: Trash-Button zwischen Reply- und Mark-Button
- Gelöschte Nachrichten: durchgestrichen + roter Rand (oder versteckt je nach Einstellung)
- Einstellungen: Toggle-Switch 'Gelöschte Nachrichten anzeigen'
- KI-Payload: gelöschte Nachrichten werden nicht mitgeschickt
2026-03-03 11:45:52 +01:00
Meleki
493dfcda1c
fix: various small fixes (TODO, CSS z-index, telegram status styling, settings prompt)
2026-03-03 10:30:36 +01:00
Meleki
5d132585d5
Fluent Emoji 3D: Unicode-Emojis durch Microsoft Fluent Emoji ersetzen
...
- emoji.js: Emoji-Replacement-Engine mit umfassendem Unicode 15.0 Regex
- String-basiert (replaceEmojisWithFluent) in renderMarkdown()
- DOM-basiert (parseFluentEmojis) als Post-Processing via TreeWalker
- CDN: @lobehub/fluent-emoji-3d@1.1.0 via jsdelivr (WebP/3D)
- Intelligenter Fallback: fe0f-Varianten, dann Original-Unicode
- Fail-Cache verhindert wiederholte Requests für fehlende Emojis
- User-Nachrichten werden jetzt als Markdown gerendert (renderMarkdown)
- [Datei: ...] Refs: Platzhalter-Mechanismus vor Markdown-Parsing
- Reply-Quotes bleiben durch Wrapper-Div erhalten
- parseFluentEmojis an allen Render-Stellen integriert:
addAssistantBubble, endStreamBubble, _renderUserTextContent,
_renderSystemPromptBlocks, history._renderMessagesIntoFragment,
history.loadLatestArchive
- CSS: .fluent-emoji Klasse (1.2em, inline, scale 1.25)
- CSS: white-space:pre-wrap nur noch für .msg:not(.markdown)
2026-03-03 05:53:31 +01:00
Meleki
7410a18755
Fix: CodeMirror horizontaler Scroll im File Explorer
...
- min-width: 0 auf allen Flex-Ebenen (.fe-main, .fe-cm-wrap, #feCmHost, .CodeMirror)
- overflow: auto Override entfernt, CodeMirror-Default (overflow: scroll) reicht
- Klassisches Flexbox min-width: auto Problem behoben
2026-03-02 08:55:33 +01:00
Meleki
56d4d1be0a
Dashboard: Badges für Sessions (Kontext) und Agents (Features, Skills, Model-Name)
...
- prettyModelName() von chat.js nach ui.js als globale Funktion verschoben
- Session-Cards: Kontext-Badge mit Tooltip wenn context vorhanden
- Agent-Cards: Badges für ToolChoice:any, AutoCommit, Soul, Identity, UserInfo, Memory
- Agent-Cards: Skill-Badges pro aktiviertem Skill (parallel geladen)
- Agent-Cards: Model-Name via prettyModelName() statt roher Model-ID
- Neue CSS-Klassen: badge-feature, badge-forced-feature, badge-skill
- Theme: primary/dangerous Farben angepasst
- Chat: Input overflow hidden→auto
2026-03-02 08:22:18 +01:00
Meleki
754b2aa3e3
fix: Krea-Tags in Code-Blöcken nicht parsen, Git-Verhalten unabhängig von ToolChoice
...
- renderMarkdown: Code-Blöcke (<pre>, <code>) vor Krea-Regex schützen
via Platzhalter-Swap, danach wiederherstellen
- SystemPromptBuilder: Git-Commit-Regeln nur an Workspace gebunden,
nicht mehr an ToolChoice:any – eigener PromptBlock mit Label
- CSS: modal-width Variable, Krea-Modal width:max-content, minor tweaks
- TODO.md aktualisiert
2026-03-02 07:59:29 +01:00
Meleki
4bf500ad47
feat: Stream-Abbruch per Stop-Button
...
- Neuer Stop-Button (#stop) neben Send-Button, erscheint nur während Stream
- AbortController in chat.js: abort() schließt SSE-Verbindung → Backend CancellationToken triggered
- apiChat() akzeptiert optionales AbortSignal
- AbortError-Handling: zeigt 'Abgebrochen' statt Fehlermeldung
- Button-Toggle in sendMessage(), stopStreaming(), startStreamingPoll(), Page-Load-Recovery
- CSS: .stop-btn mit --dangerous Farbe
- Diverse kleine UI-Fixes (TODO.md, theme.css box-spacing, settings-section Layout)
2026-03-02 06:52:26 +01:00
Meleki
71bb97be13
Fix: Krea-Thumbnails mit fester Höhe statt scrollDown-Listener
...
- _scrollOnImages() komplett entfernt (verursachte ungewolltes Runterscrollen)
- .krea-ref: feste Höhe 240px + min-width 240px + Placeholder-Hintergrund
- .krea-thumb: width/height 100% mit object-fit contain
- Browser reserviert Platz vor dem Laden → kein Layout-Shift
2026-03-01 21:40:15 +01:00
Meleki
d42e5077c4
System-Prompt-Modal: strukturierte Blöcke via API statt Frontend-Parsing
...
- SystemPromptBuilder.BuildBlocks() liefert List<PromptBlock> mit Icon/Label/Content
- Neuer Endpoint GET /api/sessions/{id}/system-prompt-blocks (JSON-Array)
- Labels beschreiben präzise die Herkunft jedes Blocks (Agent, Session, System, Skills)
- Verhalten + Erinnerung nur noch mit Workspace + ToolChoice:any (Bugfix)
- Frontend: simples Block-Rendering statt komplexer Heuristik-Logik
- SP-Block Styling mit Label-Header und Content-Box
2026-03-01 21:31:38 +01:00
Meleki
40e56acc30
PROMPT.md-based skill injection, scroll-on-image-load fix, skill availability UI
...
- SkillService: read PROMPT.md instead of SKILL.md for system prompt injection
- SkillInfo: add HasPromptMd field, skills without PROMPT.md are not injectable
- Agent form: disable checkbox + warning for skills missing PROMPT.md
- Thumbnail size: 320px (was 300px)
- Chat: _scrollOnImages() re-scrolls after lazy-loaded images finish loading
- CSS: skill-unavailable/warning styling, adjusted thumb dimensions
2026-03-01 20:38:18 +01:00
Meleki
8d86406037
Krea inline thumbnails with cached WebP generation and gallery layout
...
- Add /api/skills/{slug}/output/{filename}/thumb endpoint with ImageSharp
- Generate 300px WebP thumbnails, cached in data/cache/skills/{slug}/
- Replace text badge with inline thumbnail preview in chat
- Click opens full-size image modal with backdrop blur
- wrapKreaGalleries() groups consecutive krea-refs into flex container
- Thumbnails lazy-loaded, cache invalidated when original is newer
2026-03-01 20:12:14 +01:00
Meleki
9e4ed6dada
Add image preview support: Krea-tag parsing with modal, file-explorer preview, skill output endpoint, increase execute timeout to 180s
...
- SkillEndpoint: GET /api/skills/{slug}/output/{filename} for skill output files
- WorkspaceEndpoint: GET /api/workspace/raw for raw file serving (images)
- File-Explorer: Image preview for png/jpg/gif/webp/svg/bmp/ico
- Chat UI: Parse [Krea: filename] tags into clickable chips with image modal
- ToolService: Increase execute timeout from 30s to 180s for long-running skills
2026-03-01 20:00:35 +01:00
Meleki
8f12e8dc1a
UI-Refactoring: Transitions vereinheitlicht, Card-Navigation auf Menü umgestellt, openChatBtn entfernt, Chat-Back navigiert zum Dashboard
2026-03-01 11:32:12 +01:00
Meleki
ab4ce839b4
fix: mark-button nach reply-button positionieren mit badge-spacing gap
2026-03-01 01:36:13 +01:00
Meleki
19f32442b1
feat: Nachrichten als wichtig markieren (Stern-Button)
...
- MessageRecord: neues Property IsMarked
- DatabaseService: Migration is_marked, ToggleMessageMark(), GetMarkedMessages()
- HistoryEndpoint: PUT /api/messages/{id}/mark (Toggle)
- SystemPromptBuilder: markierte Nachrichten als Referenz im System-Prompt
- ChatEndpoint + SessionEndpoint: markierte Nachrichten laden und an Builder übergeben
- Frontend: Stern-Button (☆/★) auf jeder Nachricht, Toggle per API
- CSS: .marked-Klasse mit gelbem Seitenrand, Button-Styling
2026-03-01 01:30:21 +01:00
Meleki
9af837a9e5
CSS: Hardcoded rgba-Werte durch Theme-Variablen ersetzt
2026-03-01 01:12:56 +01:00
Meleki
daa03c87d0
style(chat): reply-quote farbe auf secondary, opacity entfernt
2026-03-01 01:07:27 +01:00
Meleki
57b4b5931b
feat: Reply/Zitat-Feature für Chat-Nachrichten
...
- Reply-Button (Hover) auf jeder User/Assistant-Nachricht
- Reply-Preview-Leiste über dem Input-Feld (mit Timestamp, Rolle, Text-Preview)
- Beim Senden: Zitat als Kontext-Block vorangestellt (> [Zitat: HH:MM, Role]:)
- User-Nachrichten parsen Zitat-Blöcke als visuelle Quote-Elemente (blaue Borderlinie)
- Timestamp-basierte Referenzierung (HH:MM oder DD.MM. HH:MM)
- clearReply() bei Chat-Clear, Navigation und Destroy
2026-03-01 01:06:23 +01:00
Meleki
6f800e2d50
Header-Menü Dropdown: padding-block hinzugefügt
2026-03-01 00:08:06 +01:00
Meleki
41d99ec840
Custom Commands ins Header-Dropdown-Menü verschoben
...
- customCmdBar entfernt, Commands als header-menu-items ins Dropdown eingefügt
- Sektions-Labels: System, Agent, Session mit Separatoren
- Header-Menü-Init nach oben verschoben (vor Command-Aufbau)
- CSS: alte cmd-bar Styles entfernt, neue separator/label/cmd Styles
2026-02-28 22:02:18 +01:00
Meleki
38eaed12dd
Chat: chain-meta padding-bottom auf page-spacing angepasst
2026-02-28 21:53:46 +01:00
Meleki
57a197b685
Style: Chain-Meta Farbfilter auf 90deg und semi-transparent Opazität angepasst
2026-02-28 21:50:40 +01:00
Meleki
f20d94b08f
Streaming-Cursor: Block-Cursor-Stil, schnelleres Blinken, korrekte Inline-Positionierung
2026-02-28 21:48:15 +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
Meleki
ab234fde69
Custom Commands: Typen (Hintergrund/Vordergrund/Nachricht) mit Output-Modal
2026-02-28 21:30:15 +01:00
Meleki
38fb5d4de1
Update style, enhance mobile support
2026-02-28 20:20:22 +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
873e40b5d1
Chain-Meta als Badges im Chat statt in Meta-Bar anzeigen
...
- Meta-Bar zeigt nur noch Status (Streaming.../Bereit)
- Chain-Infos (Model, Tokens, Dauer etc.) als Badges im Chat
- Badges bei Streaming, History-Load und Archiv-Ansicht
- buildMetaString → buildMetaBadges, neue addChainMetaBubble Funktion
2026-02-28 18:31:28 +01:00
Meleki
5b2e8f4a11
File-Explorer: EasyMDE Edit-Mode, Font Awesome, Markdown-Preview-Styles
2026-02-28 17:49:07 +01:00
Meleki
c699a4d524
CSS: kleinere Anpassungen
2026-02-28 16:49:22 +01:00
Meleki
f74409dd89
Token-Optimierung: Prompt Caching + Tool-Result-Truncation in History
2026-02-28 16:21:08 +01:00
Meleki
76341dc42b
Fix: Chat scrollt nach Font-Loading nochmal nach unten
...
scrollDown() wartet jetzt auf document.fonts.ready und scrollt erneut.
chat-page.js wartet nach loadHistory() zusätzlich per requestAnimationFrame
auf den Repaint nach Font-Swap.
2026-02-28 15:54:47 +01:00
Meleki
3cb468f4e8
Chat: User-Nachrichten [Datei:]-Tags als klickbare Chips rendern, System-Prompt mit Workspace-Pfad und Leerzeilen-Hinweis erweitern
2026-02-28 11:53:50 +01:00
Meleki
18068adcba
Edit chat.css
2026-02-27 23:56:04 +01:00
Meleki
b07e776b7a
Massive style changes
2026-02-27 23:39:06 +01:00
Meleki
bd34d119b5
chat.css und index.html angepasst
2026-02-27 18:10:45 +01:00
Meleki
286a91204f
Layout/Style adjustments
2026-02-27 17:09:44 +01:00
Meleki
e662548d79
Avatar: Ctrl+V paste + serverseitige Skalierung auf max 256px; Tool-Boxes: Diff-View für edit/write_file, Foldout für alle Tools, stop_reason im Chat; ImageSharp 3.1.12
2026-02-27 16:46:07 +01:00
Meleki
6556d62f17
Add /api/info endpoint for build time, title.js, UI tweaks
2026-02-27 14:29:43 +01:00
Meleki
f33aa3f9b4
Fix chat button style, add Readme
2026-02-27 13:44:31 +01:00
Meleki
73c6d38254
fix: custom command execution via systemd-run für prozessunabhängigkeit
2026-02-27 13:34:14 +01:00
Meleki
2b8749ee3a
tool-box: background und border auf --f1-bg/--f1-border geändert
2026-02-27 11:26:28 +01:00
Meleki
a927d6da33
Chat-Page: Archivieren-Button durch 3-Dot-Menü ersetzt
2026-02-27 10:45:35 +01:00
Meleki
f4ad949db4
Layout/Style adjustments
2026-02-27 09:16:05 +01:00