diff --git a/src/pages/_layout.tsx b/src/pages/_layout.tsx
index f00ed966f989d5364def62d03c1e83ff64796251..b319897c61f5febc5b4f5d736a40a9f6368a1883 100644
--- a/src/pages/_layout.tsx
+++ b/src/pages/_layout.tsx
@@ -54,6 +54,7 @@ const Layout = () => {
       // the clash info may be updated
       await getAxios(true);
       mutate("getProxies");
+      mutate("getVersion");
       mutate("getClashConfig");
     });
 
diff --git a/src/pages/proxies.tsx b/src/pages/proxies.tsx
index dde730bc92460ffd34fc8e5164cbcd2f4940cdc6..ca5bc99e4a058e1a3dc566eb2a84a4432bfff765 100644
--- a/src/pages/proxies.tsx
+++ b/src/pages/proxies.tsx
@@ -42,7 +42,7 @@ const ProxyPage = () => {
   // 仅mode为全局和直连的时候展示global分组
   const displayGroups = useMemo(() => {
     if (!global) return groups;
-    if (curMode === "global" || curMode === "direct")
+    if (curMode === "global" || curMode === "direct" || groups.length === 0)
       return [global, ...groups];
     return groups;
   }, [global, groups, curMode]);