From 482dc3a15d5289629c2987961114823d86f1c834 Mon Sep 17 00:00:00 2001 From: LukeParkerDev <10430890+Hona@users.noreply.github.com> Date: Thu, 16 Apr 2026 14:46:48 +1000 Subject: [PATCH] refactor: carry local runtime metadata through startup --- packages/desktop-electron/src/main/index.ts | 2 ++ packages/desktop-electron/src/preload/types.ts | 5 +++++ packages/desktop-electron/src/renderer/index.tsx | 8 ++++++-- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/packages/desktop-electron/src/main/index.ts b/packages/desktop-electron/src/main/index.ts index d5d92ee07b..a2763e356e 100644 --- a/packages/desktop-electron/src/main/index.ts +++ b/packages/desktop-electron/src/main/index.ts @@ -153,10 +153,12 @@ async function initialize() { throw error }) server = listener + const runtime = localServer.getState().runtime serverReady.resolve({ url, username: "opencode", password, + local: runtime, }) const loadingTask = (async () => { diff --git a/packages/desktop-electron/src/preload/types.ts b/packages/desktop-electron/src/preload/types.ts index f2bd4adce3..45c6ead54d 100644 --- a/packages/desktop-electron/src/preload/types.ts +++ b/packages/desktop-electron/src/preload/types.ts @@ -4,6 +4,11 @@ export type ServerReadyData = { url: string username: string | null password: string | null + local: { + key: string + mode: LocalServerMode + distro: string | null + } } export type SqliteMigrationProgress = { type: "InProgress"; value: number } | { type: "Done" } diff --git a/packages/desktop-electron/src/renderer/index.tsx b/packages/desktop-electron/src/renderer/index.tsx index 3cd3124396..330f90ccca 100644 --- a/packages/desktop-electron/src/renderer/index.tsx +++ b/packages/desktop-electron/src/renderer/index.tsx @@ -291,7 +291,9 @@ render(() => { const server: ServerConnection.Sidecar = { displayName: "Local Server", type: "sidecar", - variant: "base", + ...(data.local.mode === "wsl" && data.local.distro + ? { variant: "wsl", distro: data.local.distro } + : { variant: "base" }), http: { url: data.url, username: data.username ?? undefined, @@ -341,7 +343,9 @@ render(() => { {(_) => { return (