From bbbcf27dd5aacc0f1ceef3b7f1d82013d4684b11 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Fri, 27 Feb 2026 16:37:53 -0600 Subject: [PATCH] refac --- src/lib/components/chat/MessageInput/TerminalMenu.svelte | 7 +++++-- src/lib/components/chat/Settings/Integrations.svelte | 7 ++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/lib/components/chat/MessageInput/TerminalMenu.svelte b/src/lib/components/chat/MessageInput/TerminalMenu.svelte index 8703a1e1c..848d081f2 100644 --- a/src/lib/components/chat/MessageInput/TerminalMenu.svelte +++ b/src/lib/components/chat/MessageInput/TerminalMenu.svelte @@ -19,6 +19,9 @@ $: directTerminals = ($settings?.terminalServers ?? []).filter((s) => s.url); const refreshTerminalServersStore = async (servers: typeof directTerminals) => { + // Preserve system terminals (those with an `id`) — only refresh direct ones + const existingSystemTerminals = ($terminalServers ?? []).filter((t) => t.id); + const activeTerminals = servers.filter((s) => s.enabled); if (activeTerminals.length > 0) { let data = await getToolServersData( @@ -31,9 +34,9 @@ })) ); data = data.filter((d) => d && !d.error); - terminalServers.set(data); + terminalServers.set([...data, ...existingSystemTerminals]); } else { - terminalServers.set([]); + terminalServers.set(existingSystemTerminals); } }; diff --git a/src/lib/components/chat/Settings/Integrations.svelte b/src/lib/components/chat/Settings/Integrations.svelte index 9329b4e6e..7d24e52d5 100644 --- a/src/lib/components/chat/Settings/Integrations.svelte +++ b/src/lib/components/chat/Settings/Integrations.svelte @@ -45,7 +45,8 @@ }); toolServers.set(toolServersData); - // Refresh terminal servers store + // Refresh terminal servers store (preserve system terminals) + const existingSystemTerminals = ($terminalServers ?? []).filter((t) => t.id); const activeTerminals = terminalServerConfigs.filter((s) => s.enabled); if (activeTerminals.length > 0) { let terminalServersData = await getToolServersData( @@ -58,9 +59,9 @@ })) ); terminalServersData = terminalServersData.filter((data) => data && !data.error); - terminalServers.set(terminalServersData); + terminalServers.set([...terminalServersData, ...existingSystemTerminals]); } else { - terminalServers.set([]); + terminalServers.set(existingSystemTerminals); } };