diff --git a/diagnostic/index.html b/diagnostic/index.html
index 6e8ba17..89571fc 100644
--- a/diagnostic/index.html
+++ b/diagnostic/index.html
@@ -4120,7 +4120,18 @@
try {
const r = await fetch('/api/brain/memory/delete/' + encodeURIComponent(id), { method: 'DELETE' });
if (!r.ok) throw new Error('HTTP ' + r.status);
- loadBrainMemoryList();
+ // Lokalen Cache + Such-State bereinigen damit die Liste nicht den Geist
+ // des geloeschten Eintrags weiterzeigt.
+ delete brainMemoryCache[id];
+ if (Array.isArray(brainSearchIds)) {
+ brainSearchIds = brainSearchIds.filter(x => x !== id);
+ }
+ // Re-Render: bei aktiver Suche neu suchen (Filter respektieren),
+ // sonst die Vollliste neu vom Server holen.
+ const which = (typeof brainSearchActive === 'function') ? brainSearchActive() : null;
+ if (which === 'single') await runBrainSearch();
+ else if (which === 'advanced') await runAdvancedSearch();
+ else await loadBrainMemoryList();
loadBrainStatus();
} catch (e) {
alert('Löschen fehlgeschlagen: ' + e.message);
diff --git a/diagnostic/server.js b/diagnostic/server.js
index ff15fcb..ddc7de9 100644
--- a/diagnostic/server.js
+++ b/diagnostic/server.js
@@ -617,6 +617,21 @@ function connectRVS(forcePlain) {
// Mode-Broadcast von der Bridge → an Browser-Clients weiterreichen
log("info", "rvs", `Mode-Broadcast: ${msg.payload?.mode} (${msg.payload?.name})`);
broadcast({ type: "mode", payload: msg.payload });
+ } else if (msg.type === "agent_activity") {
+ // Bridge meldet "ARIA denkt/schreibt/tool" oder "idle" — an Browser
+ // weiterreichen, damit der Thinking-Indikator im Chat erscheint.
+ // Wenn gerade ein chat:final vorbei ist, unterdruecken wir trailing
+ // 'thinking'-Events (gleiches Schema wie alter OpenClaw-Pfad).
+ const activity = msg.payload?.activity || msg.activity || "idle";
+ if (activity !== "idle" && Date.now() - lastChatFinalAt < SETTLED_WINDOW_MS) {
+ // chat:final ist gerade durch — verstaubende thinking-Events ignorieren
+ } else {
+ broadcast({
+ type: "agent_activity",
+ activity,
+ tool: msg.payload?.tool || msg.tool || "",
+ });
+ }
} else if (msg.type === "memory_saved") {
// ARIA hat selber etwas in die Qdrant-DB gespeichert (via memory_save Tool).
const m = msg.payload || {};