diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx
index 012cabb..953ab8e 100644
--- a/frontend/src/App.tsx
+++ b/frontend/src/App.tsx
@@ -338,37 +338,45 @@ export default function App() {
),
- comfyui: (
-
- i.id === 'comfyui-managed')?.status !== 'not_installed' &&
- runtimeStatus?.installed !== false
- )}
- onStartEngine={toggleRuntime}
- onDeployEngine={() => handleStartDeployment('comfyui')}
- onOpenDirectory={() => setShowManagerModal(true)}
- />
-
- ),
- webui: (
-
- i.id === 'webui-managed')?.status === 'running')}
- isInstalled={Boolean(instances.find((i) => i.id === 'webui-managed')?.status !== 'not_installed')}
- onStartEngine={toggleRuntime}
- onDeployEngine={() => handleStartDeployment('webui')}
- onOpenDirectory={() => setShowManagerModal(true)}
- />
-
- ),
+ comfyui: (() => {
+ const comfyInst = instances.find((i) => i.id === 'comfyui-managed' || i.type === 'comfyui');
+ const dynamicPort = comfyStatus?.port || (comfyInst?.endpoint ? Number(new URL(comfyInst.endpoint).port) : 8188) || 8188;
+ return (
+
+ i.id === 'comfyui-managed')?.status !== 'not_installed' &&
+ runtimeStatus?.installed !== false
+ )}
+ onStartEngine={toggleRuntime}
+ onDeployEngine={() => handleStartDeployment('comfyui')}
+ onOpenDirectory={() => setShowManagerModal(true)}
+ />
+
+ );
+ })(),
+ webui: (() => {
+ const webuiInst = instances.find((i) => i.id === 'webui-managed' || i.type === 'webui');
+ const dynamicPort = (webuiInst?.endpoint ? Number(new URL(webuiInst.endpoint).port) : 7860) || 7860;
+ return (
+
+ i.id === 'webui-managed')?.status === 'running')}
+ isInstalled={Boolean(instances.find((i) => i.id === 'webui-managed')?.status !== 'not_installed')}
+ onStartEngine={toggleRuntime}
+ onDeployEngine={() => handleStartDeployment('webui')}
+ onOpenDirectory={() => setShowManagerModal(true)}
+ />
+
+ );
+ })(),
settings: (
setShowCloudModal(true)}