Lucy v2 (Etappe 3+4): Mimik nach Bedeutung + Overlay v2

Etappe 3 (natuerlich reagieren, App-Teil):
- optionaler <emo:...>-Tag von Hermes -> Avatar-Mimik nach Inhalt (Fallback: Sentiment-Heuristik)
- Tag wird aus Anzeige UND Sprachausgabe entfernt (stripEmoTag)

Etappe 4 (aus der App ausbrechen):
- Geistmodus: Overlay durchklickbar (setIgnoreMouseEvents+forward), AUSSER ueber .clickable-Zonen
  -> Lucy sitzt auf dem Desktop, Arbeit dahinter laeuft weiter, Bedienelemente bleiben klickbar
- Overlay-Blasen: Links (oeffnen/kopieren) + Code (kopieren/in App ansehen) griffbereit ohne Chat-Panel
- neue IPC win:setClickThrough + preload setClickThrough

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Hitonabi
2026-06-30 19:20:39 +02:00
parent 16f4683859
commit feba73a11a
6 changed files with 389 additions and 3 deletions
+1
View File
@@ -13,6 +13,7 @@ contextBridge.exposeInMainWorld("lucy", {
captureWindow: (id: string) => ipcRenderer.invoke("screen:captureWindow", id),
captureByName: (q: string) => ipcRenderer.invoke("screen:captureByName", q),
openExternal: (url: string) => ipcRenderer.invoke("open:external", url), // Link im System-Browser
setClickThrough: (on: boolean) => ipcRenderer.invoke("win:setClickThrough", on), // Geistmodus (Overlay v2)
// Events aus dem Main-Prozess (Tray/Hotkey/Modus)
onMode: (cb: (m: "full" | "overlay") => void) => {
const h = (_e: unknown, m: "full" | "overlay") => cb(m)