From 5d286654103b203aaf97a5ce280dc19aedd30bcc Mon Sep 17 00:00:00 2001 From: Chen Jin Date: Sat, 8 Aug 2026 15:27:29 +0800 Subject: [PATCH] fix(desktop): declare NSLocalNetworkUsageDescription for macOS 15+ (#81563) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Since macOS 15 (Sequoia), an app that accesses the local network without declaring NSLocalNetworkUsageDescription in its Info.plist is denied silently: no prompt, no entry in System Settings → Privacy & Security → Local Network, and LAN connections are dropped at the network layer (manifesting as 'No route to host'). The desktop's build.mac.extendInfo declares camera/microphone/audio usage descriptions but not the local-network one, so the terminal and SSH features inside the app could never reach LAN hosts on macOS 15+. Add the missing declaration. --- apps/desktop/package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/desktop/package.json b/apps/desktop/package.json index 1414708beb..51dc543445 100644 --- a/apps/desktop/package.json +++ b/apps/desktop/package.json @@ -244,7 +244,8 @@ "NSCalendarsFullAccessUsageDescription": "Hermes needs full access to Calendar to read and manage events when explicitly requested.", "NSRemindersUsageDescription": "Hermes needs access to Reminders to provide requested personal-assistant and scheduling support.", "NSRemindersFullAccessUsageDescription": "Hermes needs full access to Reminders to read and manage reminders when explicitly requested.", - "NSScreenCaptureUsageDescription": "Hermes captures the screen when you ask the agent to screenshot or record it." + "NSScreenCaptureUsageDescription": "Hermes captures the screen when you ask the agent to screenshot or record it.", + "NSLocalNetworkUsageDescription": "Hermes connects to devices on your local network when a plugin or feature you enable requests it." }, "gatekeeperAssess": false, "hardenedRuntime": true,