@microsoft/teamsfx-core 3.0.9-rc.1 → 3.0.10-alpha.08ea48cc3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/client/graphClient.d.ts +1 -0
- package/build/client/graphClient.d.ts.map +1 -1
- package/build/client/teamsDevPortalClient.d.ts +1 -0
- package/build/client/teamsDevPortalClient.d.ts.map +1 -1
- package/build/common/featureFlags.d.ts +9 -50
- package/build/common/featureFlags.d.ts.map +1 -1
- package/build/common/featureFlags.js +12 -42
- package/build/common/featureFlags.js.map +1 -1
- package/build/common/localizeUtils.d.ts.map +1 -1
- package/build/common/localizeUtils.js +36 -12
- package/build/common/localizeUtils.js.map +1 -1
- package/build/common/telemetry.d.ts +2 -0
- package/build/common/telemetry.d.ts.map +1 -1
- package/build/common/telemetry.js +2 -0
- package/build/common/telemetry.js.map +1 -1
- package/build/common/templates-config.json +4 -4
- package/build/component/constants.d.ts +1 -0
- package/build/component/constants.d.ts.map +1 -1
- package/build/component/constants.js +2 -1
- package/build/component/constants.js.map +1 -1
- package/build/component/coordinator/index.d.ts.map +1 -1
- package/build/component/coordinator/index.js +0 -11
- package/build/component/coordinator/index.js.map +1 -1
- package/build/component/deps-checker/internal/dotnetChecker.d.ts +5 -1
- package/build/component/deps-checker/internal/dotnetChecker.d.ts.map +1 -1
- package/build/component/deps-checker/internal/dotnetChecker.js +16 -8
- package/build/component/deps-checker/internal/dotnetChecker.js.map +1 -1
- package/build/component/driver/deploy/spfx/utility/spoClient.d.ts +1 -0
- package/build/component/driver/deploy/spfx/utility/spoClient.d.ts.map +1 -1
- package/build/component/driver/devTool/httpClient.d.ts +1 -0
- package/build/component/driver/devTool/httpClient.d.ts.map +1 -1
- package/build/component/driver/devTool/nodeInstaller.d.ts +1 -0
- package/build/component/driver/devTool/nodeInstaller.d.ts.map +1 -1
- package/build/component/driver/script/scriptDriver.d.ts +1 -0
- package/build/component/driver/script/scriptDriver.d.ts.map +1 -1
- package/build/component/driver/script/scriptDriver.js +1 -1
- package/build/component/driver/script/scriptDriver.js.map +1 -1
- package/build/component/driver/share/utils.d.ts.map +1 -1
- package/build/component/driver/share/utils.js +6 -0
- package/build/component/driver/share/utils.js.map +1 -1
- package/build/component/driver/teamsApp/constants.d.ts +1 -1
- package/build/component/driver/teamsApp/constants.d.ts.map +1 -1
- package/build/component/driver/teamsApp/constants.js +2 -2
- package/build/component/driver/teamsApp/constants.js.map +1 -1
- package/build/component/driver/teamsApp/copyAppPackageToSPFx.d.ts +1 -0
- package/build/component/driver/teamsApp/copyAppPackageToSPFx.d.ts.map +1 -1
- package/build/component/driver/teamsApp/createAppPackage.d.ts.map +1 -1
- package/build/component/driver/teamsApp/createAppPackage.js +12 -1
- package/build/component/driver/teamsApp/createAppPackage.js.map +1 -1
- package/build/component/driver/teamsApp/interfaces/appdefinitions/appPackage.d.ts +1 -0
- package/build/component/driver/teamsApp/interfaces/appdefinitions/appPackage.d.ts.map +1 -1
- package/build/component/driver/teamsApp/publishAppPackage.d.ts +2 -0
- package/build/component/driver/teamsApp/publishAppPackage.d.ts.map +1 -1
- package/build/component/driver/teamsApp/publishAppPackage.js +79 -4
- package/build/component/driver/teamsApp/publishAppPackage.js.map +1 -1
- package/build/component/driver/teamsApp/utils/ManifestUtils.d.ts +1 -0
- package/build/component/driver/teamsApp/utils/ManifestUtils.d.ts.map +1 -1
- package/build/component/driver/teamsApp/utils/ManifestUtils.js +7 -8
- package/build/component/driver/teamsApp/utils/ManifestUtils.js.map +1 -1
- package/build/component/driver/teamsApp/utils/PluginManifestUtils.d.ts +20 -0
- package/build/component/driver/teamsApp/utils/PluginManifestUtils.d.ts.map +1 -1
- package/build/component/driver/teamsApp/utils/PluginManifestUtils.js +152 -2
- package/build/component/driver/teamsApp/utils/PluginManifestUtils.js.map +1 -1
- package/build/component/generator/configFiles/configGenerator.d.ts +15 -0
- package/build/component/generator/configFiles/configGenerator.d.ts.map +1 -0
- package/build/component/generator/configFiles/configGenerator.js +167 -0
- package/build/component/generator/configFiles/configGenerator.js.map +1 -0
- package/build/component/generator/configFiles/copyPolicy.d.ts +10 -0
- package/build/component/generator/configFiles/copyPolicy.d.ts.map +1 -0
- package/build/component/generator/configFiles/copyPolicy.js +42 -0
- package/build/component/generator/configFiles/copyPolicy.js.map +1 -0
- package/build/component/generator/configFiles/jsonMerger.d.ts +11 -0
- package/build/component/generator/configFiles/jsonMerger.d.ts.map +1 -0
- package/build/component/generator/configFiles/jsonMerger.js +83 -0
- package/build/component/generator/configFiles/jsonMerger.js.map +1 -0
- package/build/component/generator/configFiles/renderTemplate.d.ts +2 -0
- package/build/component/generator/configFiles/renderTemplate.d.ts.map +1 -0
- package/build/component/generator/configFiles/renderTemplate.js +16 -0
- package/build/component/generator/configFiles/renderTemplate.js.map +1 -0
- package/build/component/generator/declarativeAgent/generator.d.ts +5 -0
- package/build/component/generator/declarativeAgent/generator.d.ts.map +1 -1
- package/build/component/generator/declarativeAgent/generator.js +78 -28
- package/build/component/generator/declarativeAgent/generator.js.map +1 -1
- package/build/component/generator/declarativeAgent/helper.d.ts.map +1 -1
- package/build/component/generator/declarativeAgent/helper.js +0 -1
- package/build/component/generator/declarativeAgent/helper.js.map +1 -1
- package/build/component/generator/generator.d.ts.map +1 -1
- package/build/component/generator/generator.js +3 -13
- package/build/component/generator/generator.js.map +1 -1
- package/build/component/generator/generatorAction.d.ts +1 -0
- package/build/component/generator/generatorAction.d.ts.map +1 -1
- package/build/component/generator/officeAddin/generator.d.ts.map +1 -1
- package/build/component/generator/officeAddin/generator.js +6 -4
- package/build/component/generator/officeAddin/generator.js.map +1 -1
- package/build/component/generator/officeAddin/metaOSHelper.d.ts.map +1 -1
- package/build/component/generator/officeAddin/metaOSHelper.js +13 -6
- package/build/component/generator/officeAddin/metaOSHelper.js.map +1 -1
- package/build/component/generator/openApiSpec/common.d.ts.map +1 -1
- package/build/component/generator/openApiSpec/common.js +11 -22
- package/build/component/generator/openApiSpec/common.js.map +1 -1
- package/build/component/generator/openApiSpec/kiota.d.ts +0 -6
- package/build/component/generator/openApiSpec/kiota.d.ts.map +1 -1
- package/build/component/generator/openApiSpec/kiota.js +2 -17
- package/build/component/generator/openApiSpec/kiota.js.map +1 -1
- package/build/component/generator/templates/metadata/index.d.ts.map +1 -1
- package/build/component/generator/templates/metadata/index.js +21 -25
- package/build/component/generator/templates/metadata/index.js.map +1 -1
- package/build/component/generator/templates/templateInfo.d.ts +1 -1
- package/build/component/generator/templates/templateInfo.d.ts.map +1 -1
- package/build/component/generator/templates/templateNames.d.ts +1 -0
- package/build/component/generator/templates/templateNames.d.ts.map +1 -1
- package/build/component/generator/templates/templateNames.js +1 -0
- package/build/component/generator/templates/templateNames.js.map +1 -1
- package/build/component/generator/templates/templateReplaceMap.d.ts.map +1 -1
- package/build/component/generator/templates/templateReplaceMap.js +2 -12
- package/build/component/generator/templates/templateReplaceMap.js.map +1 -1
- package/build/component/generator/utils.d.ts +3 -2
- package/build/component/generator/utils.d.ts.map +1 -1
- package/build/component/generator/utils.js.map +1 -1
- package/build/component/m365/packageService.d.ts.map +1 -1
- package/build/component/m365/packageService.js +16 -20
- package/build/component/m365/packageService.js.map +1 -1
- package/build/component/middleware/envMW.d.ts.map +1 -1
- package/build/component/middleware/envMW.js +7 -0
- package/build/component/middleware/envMW.js.map +1 -1
- package/build/component/utils/envUtil.d.ts +1 -0
- package/build/component/utils/envUtil.d.ts.map +1 -1
- package/build/component/utils/odrProvider.d.ts +49 -0
- package/build/component/utils/odrProvider.d.ts.map +1 -0
- package/build/component/utils/odrProvider.js +100 -0
- package/build/component/utils/odrProvider.js.map +1 -0
- package/build/component/utils/pathUtils.d.ts +2 -1
- package/build/component/utils/pathUtils.d.ts.map +1 -1
- package/build/component/utils/pathUtils.js +19 -3
- package/build/component/utils/pathUtils.js.map +1 -1
- package/build/component/utils/settingsUtil.d.ts +1 -1
- package/build/component/utils/settingsUtil.d.ts.map +1 -1
- package/build/component/utils/settingsUtil.js +20 -7
- package/build/component/utils/settingsUtil.js.map +1 -1
- package/build/core/FxCore.d.ts +10 -3
- package/build/core/FxCore.d.ts.map +1 -1
- package/build/core/FxCore.declarativeAgent.d.ts +6 -0
- package/build/core/FxCore.declarativeAgent.d.ts.map +1 -0
- package/build/core/FxCore.declarativeAgent.js +210 -0
- package/build/core/FxCore.declarativeAgent.js.map +1 -0
- package/build/core/FxCore.js +99 -208
- package/build/core/FxCore.js.map +1 -1
- package/build/core/generateConfigFiles.d.ts +4 -0
- package/build/core/generateConfigFiles.d.ts.map +1 -0
- package/build/core/generateConfigFiles.js +61 -0
- package/build/core/generateConfigFiles.js.map +1 -0
- package/build/core/middleware/projectSettingsLoader.d.ts.map +1 -1
- package/build/core/middleware/projectSettingsLoader.js +8 -2
- package/build/core/middleware/projectSettingsLoader.js.map +1 -1
- package/build/index.d.ts +2 -1
- package/build/index.d.ts.map +1 -1
- package/build/index.js +5 -5
- package/build/index.js.map +1 -1
- package/build/question/collaborator.d.ts.map +1 -1
- package/build/question/collaborator.js +5 -8
- package/build/question/collaborator.js.map +1 -1
- package/build/question/constants.d.ts.map +1 -1
- package/build/question/constants.js +1 -3
- package/build/question/constants.js.map +1 -1
- package/build/question/inputs/CreateProjectInputs.d.ts +1 -15
- package/build/question/inputs/CreateProjectInputs.d.ts.map +1 -1
- package/build/question/options/CreateProjectOptions.d.ts +1 -1
- package/build/question/options/CreateProjectOptions.d.ts.map +1 -1
- package/build/question/options/CreateProjectOptions.js +0 -56
- package/build/question/options/CreateProjectOptions.js.map +1 -1
- package/build/question/other.d.ts.map +1 -1
- package/build/question/other.js +7 -8
- package/build/question/other.js.map +1 -1
- package/build/question/questionNames.d.ts +3 -0
- package/build/question/questionNames.d.ts.map +1 -1
- package/build/question/questionNames.js +3 -0
- package/build/question/questionNames.js.map +1 -1
- package/build/question/scaffold/commonNodes.d.ts +7 -0
- package/build/question/scaffold/commonNodes.d.ts.map +1 -0
- package/build/question/scaffold/commonNodes.js +154 -0
- package/build/question/scaffold/commonNodes.js.map +1 -0
- package/build/question/scaffold/constructNode.d.ts +3 -0
- package/build/question/scaffold/constructNode.d.ts.map +1 -0
- package/build/question/scaffold/constructNode.js +50 -0
- package/build/question/scaffold/constructNode.js.map +1 -0
- package/build/question/scaffold/vs/createRootNode.d.ts +1 -0
- package/build/question/scaffold/vs/createRootNode.d.ts.map +1 -1
- package/build/question/scaffold/vs/createRootNode.js +14 -16
- package/build/question/scaffold/vs/createRootNode.js.map +1 -1
- package/build/question/scaffold/vsc/ProjectTypeOptions.d.ts +0 -1
- package/build/question/scaffold/vsc/ProjectTypeOptions.d.ts.map +1 -1
- package/build/question/scaffold/vsc/ProjectTypeOptions.js +1 -14
- package/build/question/scaffold/vsc/ProjectTypeOptions.js.map +1 -1
- package/build/question/scaffold/vsc/createFromTdpNode.js +1 -1
- package/build/question/scaffold/vsc/createFromTdpNode.js.map +1 -1
- package/build/question/scaffold/vsc/createRootNode.d.ts +0 -7
- package/build/question/scaffold/vsc/createRootNode.d.ts.map +1 -1
- package/build/question/scaffold/vsc/createRootNode.js +4 -77
- package/build/question/scaffold/vsc/createRootNode.js.map +1 -1
- package/build/question/scaffold/vsc/customEngineAgentNode.d.ts +1 -1
- package/build/question/scaffold/vsc/customEngineAgentNode.d.ts.map +1 -1
- package/build/question/scaffold/vsc/customEngineAgentNode.js +22 -24
- package/build/question/scaffold/vsc/customEngineAgentNode.js.map +1 -1
- package/build/question/scaffold/vsc/daProjectTypeNode.d.ts.map +1 -1
- package/build/question/scaffold/vsc/daProjectTypeNode.js +4 -4
- package/build/question/scaffold/vsc/daProjectTypeNode.js.map +1 -1
- package/build/question/scaffold/vsc/officeAddinProjectTypeNode.d.ts +0 -1
- package/build/question/scaffold/vsc/officeAddinProjectTypeNode.d.ts.map +1 -1
- package/build/question/scaffold/vsc/officeAddinProjectTypeNode.js +2 -51
- package/build/question/scaffold/vsc/officeAddinProjectTypeNode.js.map +1 -1
- package/build/question/scaffold/vsc/teamsProjectTypeNode.d.ts +4 -7
- package/build/question/scaffold/vsc/teamsProjectTypeNode.d.ts.map +1 -1
- package/build/question/scaffold/vsc/teamsProjectTypeNode.js +96 -202
- package/build/question/scaffold/vsc/teamsProjectTypeNode.js.map +1 -1
- package/build/ui/visitor.d.ts.map +1 -1
- package/build/ui/visitor.js +5 -0
- package/build/ui/visitor.js.map +1 -1
- package/package.json +6 -6
- package/resource/package.nls.cs.json +116 -84
- package/resource/package.nls.de.json +126 -94
- package/resource/package.nls.es.json +126 -94
- package/resource/package.nls.fr.json +114 -82
- package/resource/package.nls.it.json +127 -95
- package/resource/package.nls.ja.json +115 -83
- package/resource/package.nls.json +16 -27
- package/resource/package.nls.ko.json +123 -91
- package/resource/package.nls.pl.json +125 -93
- package/resource/package.nls.pt-BR.json +122 -90
- package/resource/package.nls.ru.json +116 -84
- package/resource/package.nls.tr.json +113 -81
- package/resource/package.nls.zh-Hans.json +114 -82
- package/resource/package.nls.zh-Hant.json +120 -88
- package/resource/templates/package.nls.cs.json +33 -0
- package/resource/templates/package.nls.de.json +33 -0
- package/resource/templates/package.nls.es.json +33 -0
- package/resource/templates/package.nls.fr.json +33 -0
- package/resource/templates/package.nls.it.json +33 -0
- package/resource/templates/package.nls.ja.json +33 -0
- package/resource/templates/package.nls.json +33 -0
- package/resource/templates/package.nls.ko.json +33 -0
- package/resource/templates/package.nls.pl.json +33 -0
- package/resource/templates/package.nls.pt-BR.json +33 -0
- package/resource/templates/package.nls.ru.json +33 -0
- package/resource/templates/package.nls.tr.json +33 -0
- package/resource/templates/package.nls.zh-Hans.json +33 -0
- package/resource/templates/package.nls.zh-Hant.json +33 -0
- package/resource/templates/package.nls.zh-cn.json +21 -0
- package/resource/templates/package.nls.zh-tw.json +21 -0
- package/templates/configs/local/python/.vscode/launch.json.tpl +93 -0
- package/templates/configs/local/python/.vscode/tasks.json.tpl +103 -0
- package/templates/configs/local/python/env/.env.local +6 -0
- package/templates/configs/local/python/m365agents.local.yml.tpl +121 -0
- package/templates/configs/local/typescript/.gitignore +1 -0
- package/templates/configs/local/typescript/.vscode/launch.json.tpl +147 -0
- package/templates/configs/local/typescript/.vscode/tasks.json.tpl +129 -0
- package/templates/configs/local/typescript/env/.env.local +6 -0
- package/templates/configs/local/typescript/m365agents.local.yml.tpl +129 -0
- package/templates/configs/local/typescript/package.json +8 -0
- package/templates/configs/playground/python/.vscode/launch.json +46 -0
- package/templates/configs/playground/python/.vscode/tasks.json +35 -0
- package/templates/configs/playground/python/env/.env.playground +7 -0
- package/templates/configs/playground/python/m365agents.playground.yml +14 -0
- package/templates/configs/playground/typescript/.gitignore +4 -0
- package/templates/configs/playground/typescript/.localConfigs.playground +0 -0
- package/templates/configs/playground/typescript/.vscode/launch.json +31 -0
- package/templates/configs/playground/typescript/.vscode/tasks.json +104 -0
- package/templates/configs/playground/typescript/env/.env.playground +7 -0
- package/templates/configs/playground/typescript/env/.env.playground.user +0 -0
- package/templates/configs/playground/typescript/m365agents.playground.yml +23 -0
- package/templates/configs/playground/typescript/package.json +9 -0
- package/templates/fallback/common.zip +0 -0
- package/templates/fallback/csharp.zip +0 -0
- package/templates/fallback/js.zip +0 -0
- package/templates/fallback/python.zip +0 -0
- package/templates/fallback/ts.zip +0 -0
- package/templates/metadata/allTemplates.json +429 -0
- package/templates/metadata/defaultGeneratorTemplates.json +233 -0
- package/templates/metadata.zip +0 -0
- package/templates/ui/ceaNode.json +30 -0
- package/templates/ui/teamsNode.json +124 -0
- package/build/component/generator/templates/metadata/agentForTeams.d.ts +0 -3
- package/build/component/generator/templates/metadata/agentForTeams.d.ts.map +0 -1
- package/build/component/generator/templates/metadata/agentForTeams.js +0 -147
- package/build/component/generator/templates/metadata/agentForTeams.js.map +0 -1
- package/build/component/generator/templates/metadata/bot.d.ts +0 -3
- package/build/component/generator/templates/metadata/bot.d.ts.map +0 -1
- package/build/component/generator/templates/metadata/bot.js +0 -142
- package/build/component/generator/templates/metadata/bot.js.map +0 -1
- package/build/component/generator/templates/metadata/customEngineAgent.d.ts +0 -3
- package/build/component/generator/templates/metadata/customEngineAgent.d.ts.map +0 -1
- package/build/component/generator/templates/metadata/customEngineAgent.js +0 -39
- package/build/component/generator/templates/metadata/customEngineAgent.js.map +0 -1
- package/build/component/generator/templates/metadata/da.d.ts +0 -3
- package/build/component/generator/templates/metadata/da.d.ts.map +0 -1
- package/build/component/generator/templates/metadata/da.js +0 -117
- package/build/component/generator/templates/metadata/da.js.map +0 -1
- package/build/component/generator/templates/metadata/graphConnector.d.ts +0 -3
- package/build/component/generator/templates/metadata/graphConnector.d.ts.map +0 -1
- package/build/component/generator/templates/metadata/graphConnector.js +0 -15
- package/build/component/generator/templates/metadata/graphConnector.js.map +0 -1
- package/build/component/generator/templates/metadata/me.d.ts +0 -3
- package/build/component/generator/templates/metadata/me.d.ts.map +0 -1
- package/build/component/generator/templates/metadata/me.js +0 -111
- package/build/component/generator/templates/metadata/me.js.map +0 -1
- package/build/component/generator/templates/metadata/special.d.ts +0 -3
- package/build/component/generator/templates/metadata/special.d.ts.map +0 -1
- package/build/component/generator/templates/metadata/special.js +0 -70
- package/build/component/generator/templates/metadata/special.js.map +0 -1
- package/build/component/generator/templates/metadata/tab.d.ts +0 -3
- package/build/component/generator/templates/metadata/tab.d.ts.map +0 -1
- package/build/component/generator/templates/metadata/tab.js +0 -59
- package/build/component/generator/templates/metadata/tab.js.map +0 -1
- package/build/component/generator/templates/metadata/teams.d.ts +0 -3
- package/build/component/generator/templates/metadata/teams.d.ts.map +0 -1
- package/build/component/generator/templates/metadata/teams.js +0 -238
- package/build/component/generator/templates/metadata/teams.js.map +0 -1
- package/build/component/generator/templates/metadata/vs.d.ts +0 -3
- package/build/component/generator/templates/metadata/vs.d.ts.map +0 -1
- package/build/component/generator/templates/metadata/vs.js +0 -22
- package/build/component/generator/templates/metadata/vs.js.map +0 -1
- package/build/component/generator/templates/metadata/wxp.d.ts +0 -3
- package/build/component/generator/templates/metadata/wxp.d.ts.map +0 -1
- package/build/component/generator/templates/metadata/wxp.js +0 -33
- package/build/component/generator/templates/metadata/wxp.js.map +0 -1
- package/build/tsconfig.tsbuildinfo +0 -1
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright (c) Microsoft Corporation.
|
|
3
|
+
// Licensed under the MIT license.
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.FxCoreDeclarativeAgentPart = void 0;
|
|
6
|
+
const tslib_1 = require("tslib");
|
|
7
|
+
const hooks_1 = require("@feathersjs/hooks");
|
|
8
|
+
const teamsfx_api_1 = require("@microsoft/teamsfx-api");
|
|
9
|
+
const axios_1 = tslib_1.__importDefault(require("axios"));
|
|
10
|
+
const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
|
|
11
|
+
const path = tslib_1.__importStar(require("path"));
|
|
12
|
+
const globalVars_1 = require("../common/globalVars");
|
|
13
|
+
const localizeUtils_1 = require("../common/localizeUtils");
|
|
14
|
+
const actionInjector_1 = require("../component/configManager/actionInjector");
|
|
15
|
+
const constants_1 = require("../component/constants");
|
|
16
|
+
const questionMW_1 = require("../component/middleware/questionMW");
|
|
17
|
+
const pathUtils_1 = require("../component/utils/pathUtils");
|
|
18
|
+
const constants_2 = require("../question/constants");
|
|
19
|
+
const concurrentLocker_1 = require("./middleware/concurrentLocker");
|
|
20
|
+
const errorHandler_1 = require("./middleware/errorHandler");
|
|
21
|
+
class FxCoreDeclarativeAgentPart {
|
|
22
|
+
async updateActionWithMCP(inputs) {
|
|
23
|
+
var _a, _b, _c, _d;
|
|
24
|
+
const context = (0, globalVars_1.createContext)();
|
|
25
|
+
const projectPath = inputs.projectPath;
|
|
26
|
+
if (!projectPath) {
|
|
27
|
+
throw new Error("projectPath is undefined"); // should never happen
|
|
28
|
+
}
|
|
29
|
+
const aiPluginFilePath = inputs[constants_2.QuestionNames.PluginManifestFilePath];
|
|
30
|
+
if (!(await fs_extra_1.default.pathExists(aiPluginFilePath))) {
|
|
31
|
+
const error = new teamsfx_api_1.SystemError("MCPForDAPluginManifestNotFound", "PluginManifestNotFound", (0, localizeUtils_1.getDefaultString)("core.MCPForDA.pluginManifestNotFound", aiPluginFilePath), (0, localizeUtils_1.getLocalizedString)("core.MCPForDA.pluginManifestNotFound", aiPluginFilePath));
|
|
32
|
+
return (0, teamsfx_api_1.err)(error);
|
|
33
|
+
}
|
|
34
|
+
const aiPluginFilePathRelative = path.basename(aiPluginFilePath);
|
|
35
|
+
const mcpServerUrl = inputs[constants_2.QuestionNames.MCPForDAServerUrl];
|
|
36
|
+
const serverName = inputs[constants_2.QuestionNames.MCPForDAServerName];
|
|
37
|
+
const mcpAuth = inputs[constants_2.QuestionNames.MCPForDAAuth];
|
|
38
|
+
const authType = inputs[constants_2.QuestionNames.MCPForDAAuthType];
|
|
39
|
+
let oauthAuthorizationUrl = undefined;
|
|
40
|
+
let oauthTokenUrl = undefined;
|
|
41
|
+
let oauthRefreshUrl = undefined;
|
|
42
|
+
let registrationId = undefined;
|
|
43
|
+
if (mcpAuth === "OAuthPluginVault") {
|
|
44
|
+
try {
|
|
45
|
+
registrationId = `MCP_DA_AUTH_ID_${serverName.toUpperCase()}`;
|
|
46
|
+
if (authType === "oauth") {
|
|
47
|
+
let wellKnownMetadataUrl = inputs[constants_2.QuestionNames.MCPForDAAuthWellKnownUrl];
|
|
48
|
+
if (!wellKnownMetadataUrl) {
|
|
49
|
+
const mcpAuthMetadataUrl = inputs[constants_2.QuestionNames.MCPForDAAuthMetadataUrl];
|
|
50
|
+
if (!mcpAuthMetadataUrl) {
|
|
51
|
+
throw new Error((0, localizeUtils_1.getLocalizedString)("core.MCPForDA.mcpAuthMetadataUrlNotFound"));
|
|
52
|
+
}
|
|
53
|
+
const response = await axios_1.default.get(mcpAuthMetadataUrl);
|
|
54
|
+
if (response.status === 200 &&
|
|
55
|
+
response.data &&
|
|
56
|
+
response.data.authorization_servers &&
|
|
57
|
+
response.data.authorization_servers.length > 0) {
|
|
58
|
+
const mcpServerMetadataUrl = (_a = response.data.authorization_servers) === null || _a === void 0 ? void 0 : _a[0];
|
|
59
|
+
// Transform the URL to the proper OAuth authorization server metadata endpoint
|
|
60
|
+
// According to RFC 8414, the well-known endpoint should be constructed as:
|
|
61
|
+
// https://{domain}/.well-known/oauth-authorization-server{path}
|
|
62
|
+
const serverUrl = new URL(mcpServerMetadataUrl);
|
|
63
|
+
wellKnownMetadataUrl = `${serverUrl.protocol}//${serverUrl.host}/.well-known/oauth-authorization-server${serverUrl.pathname}`;
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
throw new Error((0, localizeUtils_1.getLocalizedString)("core.MCPForDA.mcpServerMetadataUrlNotFound"));
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
const metadataResponse = await axios_1.default.get(wellKnownMetadataUrl);
|
|
70
|
+
if (metadataResponse.status === 200) {
|
|
71
|
+
oauthAuthorizationUrl = metadataResponse.data.authorization_endpoint;
|
|
72
|
+
oauthTokenUrl = metadataResponse.data.token_endpoint;
|
|
73
|
+
oauthRefreshUrl = metadataResponse.data.refresh_endpoint;
|
|
74
|
+
}
|
|
75
|
+
if (!oauthAuthorizationUrl || !oauthTokenUrl) {
|
|
76
|
+
throw new Error((0, localizeUtils_1.getLocalizedString)("core.MCPForDA.authUrlNotFound"));
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
catch (error) {
|
|
81
|
+
void context.userInteraction.showMessage("error", (0, localizeUtils_1.getLocalizedString)("core.MCPForDA.mcpAuthMetadataMissingError", error.message), false);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
// 2. Read ai-plugin.json
|
|
85
|
+
const aiPluginContent = await fs_extra_1.default.readJSON(aiPluginFilePath);
|
|
86
|
+
// For dynamic fetch tools, keep the functions empty and add runtime info
|
|
87
|
+
// TODO: support dynamic fetch tools in the future
|
|
88
|
+
const mcpToolsDetail = inputs[constants_2.QuestionNames.MCPForDAAvailableTools];
|
|
89
|
+
const mcpToolsSelected = inputs[constants_2.QuestionNames.MCPForDAPreFetchTools];
|
|
90
|
+
if (!mcpToolsDetail || !mcpToolsSelected) {
|
|
91
|
+
const error = new teamsfx_api_1.UserError("MCPForDAPreFetchToolsNotFound", "PreFetchToolsNotFound", (0, localizeUtils_1.getDefaultString)("core.MCPForDA.preFetchToolsNotFound"), (0, localizeUtils_1.getLocalizedString)("core.MCPForDA.preFetchToolsNotFound"));
|
|
92
|
+
return (0, teamsfx_api_1.err)(error);
|
|
93
|
+
}
|
|
94
|
+
const toolsSelectedPrevious = [];
|
|
95
|
+
aiPluginContent.runtimes
|
|
96
|
+
.filter((runtime) => (runtime.type === "RemoteMCPServer" && runtime.spec.url === mcpServerUrl) ||
|
|
97
|
+
runtime.type === "LocalPlugin")
|
|
98
|
+
.forEach((runtime) => {
|
|
99
|
+
toolsSelectedPrevious.push(...runtime.run_for_functions);
|
|
100
|
+
});
|
|
101
|
+
aiPluginContent.functions = aiPluginContent.functions.filter((func) => !toolsSelectedPrevious.includes(func.name));
|
|
102
|
+
aiPluginContent.functions = [
|
|
103
|
+
...aiPluginContent.functions,
|
|
104
|
+
...mcpToolsDetail
|
|
105
|
+
.filter((tool) => mcpToolsSelected.includes(tool.name))
|
|
106
|
+
.map((tool) => {
|
|
107
|
+
if (inputs[constants_2.QuestionNames.MCPLocalServerIdentifier] != null) {
|
|
108
|
+
return {
|
|
109
|
+
name: tool.name,
|
|
110
|
+
description: tool.description,
|
|
111
|
+
parameters: {
|
|
112
|
+
type: tool.inputSchema.type || "object",
|
|
113
|
+
properties: tool.inputSchema.properties,
|
|
114
|
+
required: tool.inputSchema.required || [],
|
|
115
|
+
},
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
return {
|
|
120
|
+
name: tool.name,
|
|
121
|
+
description: tool.description,
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
}),
|
|
125
|
+
];
|
|
126
|
+
const matchedRuntime = aiPluginContent.runtimes.find((runtime) => runtime.type === "RemoteMCPServer" && runtime.spec.url === mcpServerUrl);
|
|
127
|
+
aiPluginContent.runtimes = aiPluginContent.runtimes.filter((runtime) => (runtime.type !== "RemoteMCPServer" && runtime.type !== "LocalPlugin") ||
|
|
128
|
+
runtime.spec.url !== mcpServerUrl);
|
|
129
|
+
if (inputs[constants_2.QuestionNames.MCPLocalServerIdentifier] != null) {
|
|
130
|
+
aiPluginContent.runtimes.push({
|
|
131
|
+
type: "LocalPlugin",
|
|
132
|
+
spec: {
|
|
133
|
+
local_endpoint: `${constants_1.LocalMcpPrefix}${inputs[constants_2.QuestionNames.MCPLocalServerIdentifier]}`,
|
|
134
|
+
},
|
|
135
|
+
run_for_functions: mcpToolsSelected,
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
else {
|
|
139
|
+
let mcpFile = (_b = matchedRuntime === null || matchedRuntime === void 0 ? void 0 : matchedRuntime.spec.mcp_tool_description) === null || _b === void 0 ? void 0 : _b.file;
|
|
140
|
+
if (!mcpFile) {
|
|
141
|
+
mcpFile = "mcp-tools.json";
|
|
142
|
+
let suffix = 1;
|
|
143
|
+
while (await fs_extra_1.default.pathExists(path.join(path.dirname(aiPluginFilePath), mcpFile))) {
|
|
144
|
+
mcpFile = `mcp-tools-${suffix}.json`;
|
|
145
|
+
suffix += 1;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
await fs_extra_1.default.writeJSON(path.join(path.dirname(aiPluginFilePath), mcpFile), {
|
|
149
|
+
tools: [
|
|
150
|
+
...mcpToolsDetail
|
|
151
|
+
.filter((tool) => mcpToolsSelected.includes(tool.name))
|
|
152
|
+
.map((tool) => {
|
|
153
|
+
return Object.assign(Object.assign({}, tool), { title: tool.name
|
|
154
|
+
.replace(/_/g, " ")
|
|
155
|
+
.replace(/^./, (str) => str.toUpperCase()) });
|
|
156
|
+
}),
|
|
157
|
+
],
|
|
158
|
+
}, { spaces: 4 });
|
|
159
|
+
aiPluginContent.runtimes.push({
|
|
160
|
+
type: "RemoteMCPServer",
|
|
161
|
+
spec: {
|
|
162
|
+
url: mcpServerUrl,
|
|
163
|
+
mcp_tool_description: {
|
|
164
|
+
file: mcpFile,
|
|
165
|
+
},
|
|
166
|
+
},
|
|
167
|
+
run_for_functions: mcpToolsSelected,
|
|
168
|
+
auth: mcpAuth === "OAuthPluginVault" && !!registrationId
|
|
169
|
+
? {
|
|
170
|
+
type: "OAuthPluginVault",
|
|
171
|
+
reference_id: `$\{\{${registrationId}\}\}`,
|
|
172
|
+
}
|
|
173
|
+
: {
|
|
174
|
+
type: "None",
|
|
175
|
+
},
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
if (mcpAuth === "OAuthPluginVault" && !!registrationId) {
|
|
179
|
+
// insert oauth info in teamsapp.yaml
|
|
180
|
+
await actionInjector_1.ActionInjector.injectCreateOAuthActionForMCP(pathUtils_1.pathUtils.getYmlFilePath(projectPath), authType, serverName, registrationId, mcpServerUrl, oauthAuthorizationUrl, oauthTokenUrl, oauthRefreshUrl);
|
|
181
|
+
}
|
|
182
|
+
void context.userInteraction
|
|
183
|
+
.showMessage("info", (0, localizeUtils_1.getLocalizedString)("core.MCPForDA.updatePluginManifest", aiPluginFilePathRelative), false, "Provision")
|
|
184
|
+
.then((result) => {
|
|
185
|
+
if (result.isOk() && result.value === "Provision") {
|
|
186
|
+
void this.provisionResources(inputs);
|
|
187
|
+
}
|
|
188
|
+
});
|
|
189
|
+
await fs_extra_1.default.writeJSON(aiPluginFilePath, aiPluginContent, { spaces: 4 });
|
|
190
|
+
void ((_d = (_c = context.userInteraction).openFile) === null || _d === void 0 ? void 0 : _d.call(_c, aiPluginFilePath));
|
|
191
|
+
return (0, teamsfx_api_1.ok)(undefined);
|
|
192
|
+
}
|
|
193
|
+
// This method will be implemented by FxCore
|
|
194
|
+
provisionResources(_inputs) {
|
|
195
|
+
throw new Error("Method not implemented.");
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
tslib_1.__decorate([
|
|
199
|
+
(0, hooks_1.hooks)([
|
|
200
|
+
(0, globalVars_1.ErrorContextMW)({ component: "FxCore", stage: teamsfx_api_1.Stage.installApp }),
|
|
201
|
+
errorHandler_1.ErrorHandlerMW,
|
|
202
|
+
(0, questionMW_1.QuestionMW)("updateActionWithMCP"),
|
|
203
|
+
concurrentLocker_1.ConcurrentLockerMW,
|
|
204
|
+
]),
|
|
205
|
+
tslib_1.__metadata("design:type", Function),
|
|
206
|
+
tslib_1.__metadata("design:paramtypes", [Object]),
|
|
207
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
208
|
+
], FxCoreDeclarativeAgentPart.prototype, "updateActionWithMCP", null);
|
|
209
|
+
exports.FxCoreDeclarativeAgentPart = FxCoreDeclarativeAgentPart;
|
|
210
|
+
//# sourceMappingURL=FxCore.declarativeAgent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FxCore.declarativeAgent.js","sourceRoot":"","sources":["../../src/core/FxCore.declarativeAgent.ts"],"names":[],"mappings":"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"}
|