/** * Example Plugin: Logger * * Dieses Plugin zeigt, wie man ein einfaches Plugin schreibt * das Messages und Responses logt. * * Um Plugins zu schreiben: * 1. Neue JS-Datei im /plugins Ordner erstellen * 2. Export der Hook-Funktionen (onPluginInit, onMessageSent, etc.) * 3. Plugin wird automatisch geladen! */ // Wird aufgerufen, wenn das Plugin initialisiert wird export function onPluginInit(context) { context.log('Example Logger Plugin initialized! 📝') // Du kannst hier verschiedene Dinge machen: // - State speichern // - Event Listener registrieren // - Daten fetchen // Beispiel: Speichere Session-Start window.pluginState = window.pluginState || {} window.pluginState.sessionStart = new Date() window.pluginState.messageCount = 0 context.log(`Session started at: ${window.pluginState.sessionStart}`) } // Wird aufgerufen, wenn der Benutzer eine Nachricht sendet export function onMessageSent(context, detail) { const { message, systemPrompt } = detail window.pluginState.messageCount++ context.log(`📤 Message #${window.pluginState.messageCount}: "${message.substring(0, 50)}..."`) // Beispiele für weitere Dinge, die man hier machen könnte: // - Analytics tracken // - Nachricht validieren // - Benutzerdaten speichern // - API calls machen } // Wird aufgerufen, wenn eine Antwort vom Model einkommt export function onResponseReceived(context, detail) { const { content, stats } = detail context.log(`📥 Response received:`) context.log(` - Length: ${content.length} characters`) context.log(` - Tokens: ${stats.tokens}`) context.log(` - Time: ${stats.time}s`) // Beispiele für weitere Dinge: // - Response analysieren // - Sentiment analysieren // - Qualität prüfen // - In Datenbank speichern } // Optional: Weitere Hook-Funktionen die du definieren kannst: // export function onError(context, error) { } // export function onModelLoaded(context, model) { } // export function onSettingsChanged(context, settings) { }