From d1089ed269841870c66f3d980ff85f16c67df709 Mon Sep 17 00:00:00 2001 From: saime428 <51110572+saime428@users.noreply.github.com> Date: Mon, 10 Aug 2026 00:16:28 -1000 Subject: [PATCH] fix(ui): support remote working directory for external backend (#10827) Co-authored-by: saixin --- .../settings/app/ExternalBackendSection.tsx | 31 +++++++++++++++++++ ui/desktop/src/i18n/messages/de.json | 9 ++++++ ui/desktop/src/i18n/messages/en.json | 9 ++++++ ui/desktop/src/i18n/messages/es.json | 9 ++++++ ui/desktop/src/i18n/messages/fr.json | 9 ++++++ ui/desktop/src/i18n/messages/hi.json | 9 ++++++ ui/desktop/src/i18n/messages/id.json | 9 ++++++ ui/desktop/src/i18n/messages/it.json | 9 ++++++ ui/desktop/src/i18n/messages/ja.json | 9 ++++++ ui/desktop/src/i18n/messages/ko.json | 9 ++++++ ui/desktop/src/i18n/messages/ms.json | 9 ++++++ ui/desktop/src/i18n/messages/pt.json | 9 ++++++ ui/desktop/src/i18n/messages/ru.json | 9 ++++++ ui/desktop/src/i18n/messages/tr.json | 9 ++++++ ui/desktop/src/i18n/messages/vi.json | 9 ++++++ ui/desktop/src/i18n/messages/zh-CN.json | 9 ++++++ ui/desktop/src/i18n/messages/zh-TW.json | 9 ++++++ ui/desktop/src/main.ts | 22 +++++++++++-- .../src/utils/__tests__/workingDir.test.ts | 12 +++++++ ui/desktop/src/utils/settings.ts | 1 + ui/desktop/src/utils/workingDir.ts | 6 ++++ 21 files changed, 213 insertions(+), 3 deletions(-) create mode 100644 ui/desktop/src/utils/__tests__/workingDir.test.ts diff --git a/ui/desktop/src/components/settings/app/ExternalBackendSection.tsx b/ui/desktop/src/components/settings/app/ExternalBackendSection.tsx index 7552d5861..ea4f3d932 100644 --- a/ui/desktop/src/components/settings/app/ExternalBackendSection.tsx +++ b/ui/desktop/src/components/settings/app/ExternalBackendSection.tsx @@ -34,6 +34,19 @@ const i18n = defineMessages({ defaultMessage: 'Enter the HTTP(S) base URL. Goose checks /status and connects to /acp under this base.', }, + workingDir: { + id: 'externalBackendSection.workingDir', + defaultMessage: 'Remote Working Directory (optional)', + }, + workingDirPlaceholder: { + id: 'externalBackendSection.workingDirPlaceholder', + defaultMessage: '/home/goose/workspace', + }, + workingDirHelp: { + id: 'externalBackendSection.workingDirHelp', + defaultMessage: + 'Absolute path on the external backend. Leave blank to send the local working directory.', + }, secretKey: { id: 'externalBackendSection.secretKey', defaultMessage: 'Secret Key', @@ -222,6 +235,24 @@ export default function ExternalBackendSection() {

+
+ + updateField('workingDir', e.target.value)} + onBlur={() => saveConfig(config)} + disabled={isSaving} + /> +

+ {intl.formatMessage(i18n.workingDirHelp)} +

+
+