diff --git a/pkg/api/http/controller/groups/system.py b/pkg/api/http/controller/groups/system.py index 9e85e3ad..ee107401 100644 --- a/pkg/api/http/controller/groups/system.py +++ b/pkg/api/http/controller/groups/system.py @@ -14,6 +14,7 @@ class SystemRouterGroup(group.RouterGroup): 'version': constants.semantic_version, 'debug': constants.debug_mode, 'enabled_platform_count': len(self.ap.platform_mgr.get_running_adapters()), + 'enable_marketplace': self.ap.instance_config.data['plugin'].get('enable_marketplace', True), 'cloud_service_url': ( self.ap.instance_config.data['plugin']['cloud_service_url'] if 'cloud_service_url' in self.ap.instance_config.data['plugin'] diff --git a/templates/config.yaml b/templates/config.yaml index 5e9448c8..942ace3f 100644 --- a/templates/config.yaml +++ b/templates/config.yaml @@ -21,4 +21,5 @@ system: secret: '' plugin: runtime_ws_url: 'ws://langbot_plugin_runtime:5400/control/ws' - cloud_service_url: 'https://space.langbot.app' \ No newline at end of file + enable_marketplace: true + cloud_service_url: 'https://space.langbot.app' diff --git a/web/src/app/home/plugins/page.tsx b/web/src/app/home/plugins/page.tsx index 7172e5bc..fb751c4c 100644 --- a/web/src/app/home/plugins/page.tsx +++ b/web/src/app/home/plugins/page.tsx @@ -33,6 +33,7 @@ import { httpClient } from '@/app/infra/http/HttpClient'; import { toast } from 'sonner'; import { useTranslation } from 'react-i18next'; import { PluginV4 } from '@/app/infra/entities/plugin'; +import { systemInfo } from '@/app/infra/http/HttpClient'; enum PluginInstallStatus { WAIT_INPUT = 'wait_input', @@ -213,9 +214,11 @@ export default function PluginConfigPage() { {t('plugins.installed')} - - {t('plugins.marketplace')} - + {systemInfo.enable_marketplace && ( + + {t('plugins.marketplace')} + + )}
@@ -241,14 +244,16 @@ export default function PluginConfigPage() { {t('plugins.uploadLocal')} - { - setActiveTab('market'); - }} - > - - {t('plugins.marketplace')} - + {systemInfo.enable_marketplace && ( + { + setActiveTab('market'); + }} + > + + {t('plugins.marketplace')} + + )}
diff --git a/web/src/app/infra/entities/api/index.ts b/web/src/app/infra/entities/api/index.ts index 055b92b6..5b187cae 100644 --- a/web/src/app/infra/entities/api/index.ts +++ b/web/src/app/infra/entities/api/index.ts @@ -212,6 +212,7 @@ export interface ApiRespSystemInfo { debug: boolean; version: string; cloud_service_url: string; + enable_marketplace: boolean; } export interface ApiRespAsyncTasks { diff --git a/web/src/app/infra/http/index.ts b/web/src/app/infra/http/index.ts index dad2b68c..df46dca0 100644 --- a/web/src/app/infra/http/index.ts +++ b/web/src/app/infra/http/index.ts @@ -6,6 +6,7 @@ import { ApiRespSystemInfo } from '@/app/infra/entities/api'; export let systemInfo: ApiRespSystemInfo = { debug: false, version: '', + enable_marketplace: true, cloud_service_url: '', };