diff --git a/packages/desktop/src/daemon/daemon-manager.ts b/packages/desktop/src/daemon/daemon-manager.ts index 1bd61bf85..4b8cb18dd 100644 --- a/packages/desktop/src/daemon/daemon-manager.ts +++ b/packages/desktop/src/daemon/daemon-manager.ts @@ -548,7 +548,9 @@ export function createDaemonCommandHandlers(): Record { const currentVersion = await resolveCurrentUpdateVersion(); - return downloadAndInstallUpdate(currentVersion); + return downloadAndInstallUpdate(currentVersion, async () => { + await stopDaemon(); + }); }, get_local_daemon_version: () => getLocalDaemonVersion(), }; diff --git a/packages/desktop/src/features/auto-updater.ts b/packages/desktop/src/features/auto-updater.ts index bf4810c33..d1c1dca8f 100644 --- a/packages/desktop/src/features/auto-updater.ts +++ b/packages/desktop/src/features/auto-updater.ts @@ -98,6 +98,7 @@ export async function checkForAppUpdate(currentVersion: string): Promise Promise, ): Promise { if (!app.isPackaged) { return { @@ -131,8 +132,9 @@ export async function downloadAndInstallUpdate( await autoUpdater.downloadUpdate(); // quitAndInstall restarts the app with the new version. // Use a short delay to allow the renderer to receive the response. - setTimeout(() => { + setTimeout(async () => { try { + if (onBeforeQuit) await onBeforeQuit(); autoUpdater.quitAndInstall(/* isSilent */ false, /* isForceRunAfter */ true); } catch (error) { console.error("[auto-updater] quitAndInstall failed:", error); diff --git a/packages/server/src/server/agent/provider-manifest.ts b/packages/server/src/server/agent/provider-manifest.ts index 65e20fbc6..687a90bb8 100644 --- a/packages/server/src/server/agent/provider-manifest.ts +++ b/packages/server/src/server/agent/provider-manifest.ts @@ -83,30 +83,6 @@ const CODEX_MODES: AgentProviderModeDefinition[] = [ }, ]; -const COPILOT_MODES: AgentProviderModeDefinition[] = [ - { - id: "https://agentclientprotocol.com/protocol/session-modes#agent", - label: "Agent", - description: "Default agent mode for conversational interactions", - icon: "ShieldAlert", - colorTier: "moderate", - }, - { - id: "https://agentclientprotocol.com/protocol/session-modes#plan", - label: "Plan", - description: "Plan mode for creating and executing multi-step plans", - icon: "ShieldCheck", - colorTier: "planning", - }, - { - id: "https://agentclientprotocol.com/protocol/session-modes#autopilot", - label: "Autopilot", - description: "Autonomous mode that runs until task completion without user interaction", - icon: "ShieldOff", - colorTier: "dangerous", - }, -]; - const OPENCODE_MODES: AgentProviderModeDefinition[] = [ { id: "build",