diff --git a/src/components/proxy/use-render-list.ts b/src/components/proxy/use-render-list.ts
index 8518a7a8c8d005306244c4e597b0ae1cc405ed3a..b11a462a5e07273b2af219fadbc7616f2f06c8e5 100644
--- a/src/components/proxy/use-render-list.ts
+++ b/src/components/proxy/use-render-list.ts
@@ -44,7 +44,9 @@ export const useRenderList = (mode: string) => {
     // global 和 direct 使用展开的样式
     const useRule = mode === "rule" || mode === "script";
     const renderGroups =
-      (useRule ? proxiesData?.groups : [proxiesData?.global!]) || [];
+      (useRule && proxiesData.groups.length
+        ? proxiesData.groups
+        : [proxiesData.global!]) || [];
 
     const retList = renderGroups.flatMap((group) => {
       const headState = headStates[group.name] || DEFAULT_STATE;