unreal-engine-mcp-server 0.5.21 → 0.5.30
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/CHANGELOG.md +247 -4
- package/README.md +140 -85
- package/dist/automation/bridge.d.ts +8 -0
- package/dist/automation/bridge.d.ts.map +1 -1
- package/dist/automation/bridge.js +94 -14
- package/dist/automation/bridge.js.map +1 -1
- package/dist/automation/connection-manager.d.ts.map +1 -1
- package/dist/automation/connection-manager.js +13 -5
- package/dist/automation/connection-manager.js.map +1 -1
- package/dist/automation/handshake.d.ts.map +1 -1
- package/dist/automation/handshake.js +40 -27
- package/dist/automation/handshake.js.map +1 -1
- package/dist/automation/index.d.ts +1 -1
- package/dist/automation/index.d.ts.map +1 -1
- package/dist/automation/index.js +0 -1
- package/dist/automation/index.js.map +1 -1
- package/dist/automation/message-handler.d.ts.map +1 -1
- package/dist/automation/message-handler.js +13 -9
- package/dist/automation/message-handler.js.map +1 -1
- package/dist/automation/message-schema.d.ts.map +1 -1
- package/dist/automation/message-schema.js +19 -18
- package/dist/automation/message-schema.js.map +1 -1
- package/dist/automation/request-tracker.d.ts +1 -0
- package/dist/automation/request-tracker.d.ts.map +1 -1
- package/dist/automation/request-tracker.js +30 -31
- package/dist/automation/request-tracker.js.map +1 -1
- package/dist/automation/types.d.ts +38 -32
- package/dist/automation/types.d.ts.map +1 -1
- package/dist/cli.js +14 -16
- package/dist/cli.js.map +1 -1
- package/dist/config/class-aliases.d.ts.map +1 -1
- package/dist/config/class-aliases.js +10 -2
- package/dist/config/class-aliases.js.map +1 -1
- package/dist/config.d.ts +9 -8
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +58 -32
- package/dist/config.js.map +1 -1
- package/dist/handlers/resource-handlers.d.ts +15 -2
- package/dist/handlers/resource-handlers.d.ts.map +1 -1
- package/dist/handlers/resource-handlers.js +46 -63
- package/dist/handlers/resource-handlers.js.map +1 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +42 -48
- package/dist/index.js.map +1 -1
- package/dist/resources/assets.d.ts.map +1 -1
- package/dist/resources/assets.js +34 -9
- package/dist/resources/assets.js.map +1 -1
- package/dist/resources/levels.d.ts +3 -0
- package/dist/resources/levels.d.ts.map +1 -1
- package/dist/resources/levels.js +33 -17
- package/dist/resources/levels.js.map +1 -1
- package/dist/server/resource-registry.d.ts +15 -2
- package/dist/server/resource-registry.d.ts.map +1 -1
- package/dist/server/resource-registry.js +9 -8
- package/dist/server/resource-registry.js.map +1 -1
- package/dist/server/tool-registry.d.ts +0 -1
- package/dist/server/tool-registry.d.ts.map +1 -1
- package/dist/server/tool-registry.js +91 -101
- package/dist/server/tool-registry.js.map +1 -1
- package/dist/server-setup.d.ts +5 -2
- package/dist/server-setup.d.ts.map +1 -1
- package/dist/server-setup.js +15 -19
- package/dist/server-setup.js.map +1 -1
- package/dist/services/health-monitor.d.ts +3 -0
- package/dist/services/health-monitor.d.ts.map +1 -1
- package/dist/services/health-monitor.js +30 -11
- package/dist/services/health-monitor.js.map +1 -1
- package/dist/services/metrics-server.d.ts +1 -1
- package/dist/services/metrics-server.d.ts.map +1 -1
- package/dist/services/metrics-server.js +65 -3
- package/dist/services/metrics-server.js.map +1 -1
- package/dist/tools/base-tool.d.ts.map +1 -1
- package/dist/tools/base-tool.js +14 -16
- package/dist/tools/base-tool.js.map +1 -1
- package/dist/tools/consolidated-tool-definitions.d.ts +16 -1
- package/dist/tools/consolidated-tool-definitions.d.ts.map +1 -1
- package/dist/tools/consolidated-tool-definitions.js +1479 -2538
- package/dist/tools/consolidated-tool-definitions.js.map +1 -1
- package/dist/tools/consolidated-tool-handlers.d.ts.map +1 -1
- package/dist/tools/consolidated-tool-handlers.js +195 -217
- package/dist/tools/consolidated-tool-handlers.js.map +1 -1
- package/dist/tools/dynamic-handler-registry.d.ts +1 -0
- package/dist/tools/dynamic-handler-registry.d.ts.map +1 -1
- package/dist/tools/dynamic-handler-registry.js +15 -7
- package/dist/tools/dynamic-handler-registry.js.map +1 -1
- package/dist/tools/dynamic-tool-manager.d.ts +1 -1
- package/dist/tools/dynamic-tool-manager.d.ts.map +1 -1
- package/dist/tools/dynamic-tool-manager.js +30 -18
- package/dist/tools/dynamic-tool-manager.js.map +1 -1
- package/dist/tools/editor.d.ts +2 -2
- package/dist/tools/editor.d.ts.map +1 -1
- package/dist/tools/editor.js +4 -4
- package/dist/tools/editor.js.map +1 -1
- package/dist/tools/handlers/actor-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/actor-handlers.js +66 -7
- package/dist/tools/handlers/actor-handlers.js.map +1 -1
- package/dist/tools/handlers/ai-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/ai-handlers.js +24 -13
- package/dist/tools/handlers/ai-handlers.js.map +1 -1
- package/dist/tools/handlers/animation-authoring-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/animation-authoring-handlers.js +285 -218
- package/dist/tools/handlers/animation-authoring-handlers.js.map +1 -1
- package/dist/tools/handlers/animation-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/animation-handlers.js +69 -21
- package/dist/tools/handlers/animation-handlers.js.map +1 -1
- package/dist/tools/handlers/asset-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/asset-handlers.js +75 -16
- package/dist/tools/handlers/asset-handlers.js.map +1 -1
- package/dist/tools/handlers/audio-authoring-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/audio-authoring-handlers.js +102 -9
- package/dist/tools/handlers/audio-authoring-handlers.js.map +1 -1
- package/dist/tools/handlers/audio-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/audio-handlers.js +48 -13
- package/dist/tools/handlers/audio-handlers.js.map +1 -1
- package/dist/tools/handlers/blueprint-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/blueprint-handlers.js +28 -48
- package/dist/tools/handlers/blueprint-handlers.js.map +1 -1
- package/dist/tools/handlers/character-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/character-handlers.js +13 -12
- package/dist/tools/handlers/character-handlers.js.map +1 -1
- package/dist/tools/handlers/combat-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/combat-handlers.js +12 -12
- package/dist/tools/handlers/combat-handlers.js.map +1 -1
- package/dist/tools/handlers/common-handlers.d.ts +14 -0
- package/dist/tools/handlers/common-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/common-handlers.js +117 -9
- package/dist/tools/handlers/common-handlers.js.map +1 -1
- package/dist/tools/handlers/editor-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/editor-handlers.js +139 -67
- package/dist/tools/handlers/editor-handlers.js.map +1 -1
- package/dist/tools/handlers/effect-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/effect-handlers.js +324 -36
- package/dist/tools/handlers/effect-handlers.js.map +1 -1
- package/dist/tools/handlers/environment-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/environment-handlers.js +186 -21
- package/dist/tools/handlers/environment-handlers.js.map +1 -1
- package/dist/tools/handlers/game-framework-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/game-framework-handlers.js +10 -12
- package/dist/tools/handlers/game-framework-handlers.js.map +1 -1
- package/dist/tools/handlers/gas-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/gas-handlers.js +136 -20
- package/dist/tools/handlers/gas-handlers.js.map +1 -1
- package/dist/tools/handlers/geometry-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/geometry-handlers.js +130 -7
- package/dist/tools/handlers/geometry-handlers.js.map +1 -1
- package/dist/tools/handlers/graph-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/graph-handlers.js +46 -11
- package/dist/tools/handlers/graph-handlers.js.map +1 -1
- package/dist/tools/handlers/input-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/input-handlers.js +33 -75
- package/dist/tools/handlers/input-handlers.js.map +1 -1
- package/dist/tools/handlers/inspect-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/inspect-handlers.js +136 -39
- package/dist/tools/handlers/inspect-handlers.js.map +1 -1
- package/dist/tools/handlers/interaction-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/interaction-handlers.js +14 -12
- package/dist/tools/handlers/interaction-handlers.js.map +1 -1
- package/dist/tools/handlers/inventory-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/inventory-handlers.js +19 -12
- package/dist/tools/handlers/inventory-handlers.js.map +1 -1
- package/dist/tools/handlers/level-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/level-handlers.js +166 -149
- package/dist/tools/handlers/level-handlers.js.map +1 -1
- package/dist/tools/handlers/level-structure-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/level-structure-handlers.js +18 -34
- package/dist/tools/handlers/level-structure-handlers.js.map +1 -1
- package/dist/tools/handlers/manage-tools-handlers.js +3 -3
- package/dist/tools/handlers/manage-tools-handlers.js.map +1 -1
- package/dist/tools/handlers/material-authoring-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/material-authoring-handlers.js +382 -41
- package/dist/tools/handlers/material-authoring-handlers.js.map +1 -1
- package/dist/tools/handlers/navigation-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/navigation-handlers.js +11 -36
- package/dist/tools/handlers/navigation-handlers.js.map +1 -1
- package/dist/tools/handlers/networking-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/networking-handlers.js +17 -15
- package/dist/tools/handlers/networking-handlers.js.map +1 -1
- package/dist/tools/handlers/niagara-authoring-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/niagara-authoring-handlers.js +24 -23
- package/dist/tools/handlers/niagara-authoring-handlers.js.map +1 -1
- package/dist/tools/handlers/pcg-handlers.d.ts +4 -0
- package/dist/tools/handlers/pcg-handlers.d.ts.map +1 -0
- package/dist/tools/handlers/pcg-handlers.js +77 -0
- package/dist/tools/handlers/pcg-handlers.js.map +1 -0
- package/dist/tools/handlers/performance-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/performance-handlers.js +35 -42
- package/dist/tools/handlers/performance-handlers.js.map +1 -1
- package/dist/tools/handlers/pipeline-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/pipeline-handlers.js +157 -39
- package/dist/tools/handlers/pipeline-handlers.js.map +1 -1
- package/dist/tools/handlers/sequence-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/sequence-handlers.js +6 -4
- package/dist/tools/handlers/sequence-handlers.js.map +1 -1
- package/dist/tools/handlers/sessions-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/sessions-handlers.js +7 -15
- package/dist/tools/handlers/sessions-handlers.js.map +1 -1
- package/dist/tools/handlers/spline-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/spline-handlers.js +8 -35
- package/dist/tools/handlers/spline-handlers.js.map +1 -1
- package/dist/tools/handlers/system-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/system-handlers.js +100 -26
- package/dist/tools/handlers/system-handlers.js.map +1 -1
- package/dist/tools/handlers/texture-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/texture-handlers.js +14 -0
- package/dist/tools/handlers/texture-handlers.js.map +1 -1
- package/dist/tools/handlers/volume-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/volume-handlers.js +6 -33
- package/dist/tools/handlers/volume-handlers.js.map +1 -1
- package/dist/tools/handlers/widget-authoring-handlers.d.ts.map +1 -1
- package/dist/tools/handlers/widget-authoring-handlers.js +26 -20
- package/dist/tools/handlers/widget-authoring-handlers.js.map +1 -1
- package/dist/tools/level.d.ts +2 -2
- package/dist/tools/level.d.ts.map +1 -1
- package/dist/tools/level.js +2 -1
- package/dist/tools/level.js.map +1 -1
- package/dist/tools/property-dictionary.js +1 -1
- package/dist/tools/property-dictionary.js.map +1 -1
- package/dist/tools/schemas/core-tools.d.ts +1 -1
- package/dist/tools/schemas/core-tools.d.ts.map +1 -1
- package/dist/tools/schemas/core-tools.js +94 -57
- package/dist/tools/schemas/core-tools.js.map +1 -1
- package/dist/tools/tool-definition-utils.d.ts +8 -0
- package/dist/tools/tool-definition-utils.d.ts.map +1 -1
- package/dist/tools/tool-definition-utils.js +20 -0
- package/dist/tools/tool-definition-utils.js.map +1 -1
- package/dist/types/automation-responses.d.ts +26 -33
- package/dist/types/automation-responses.d.ts.map +1 -1
- package/dist/types/env.d.ts.map +1 -1
- package/dist/types/env.js +7 -6
- package/dist/types/env.js.map +1 -1
- package/dist/types/handler-types.d.ts +41 -20
- package/dist/types/handler-types.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/tool-interfaces.d.ts +5 -873
- package/dist/types/tool-interfaces.d.ts.map +1 -1
- package/dist/types/tool-types.d.ts +35 -1
- package/dist/types/tool-types.d.ts.map +1 -1
- package/dist/unreal-bridge.d.ts.map +1 -1
- package/dist/unreal-bridge.js +16 -6
- package/dist/unreal-bridge.js.map +1 -1
- package/dist/utils/action-constants.d.ts +4 -1
- package/dist/utils/action-constants.d.ts.map +1 -1
- package/dist/utils/action-constants.js +4 -1
- package/dist/utils/action-constants.js.map +1 -1
- package/dist/utils/command-validator.d.ts.map +1 -1
- package/dist/utils/command-validator.js +5 -4
- package/dist/utils/command-validator.js.map +1 -1
- package/dist/utils/elicitation.d.ts +5 -2
- package/dist/utils/elicitation.d.ts.map +1 -1
- package/dist/utils/elicitation.js +38 -21
- package/dist/utils/elicitation.js.map +1 -1
- package/dist/utils/environment-snapshot.d.ts +17 -0
- package/dist/utils/environment-snapshot.d.ts.map +1 -0
- package/dist/utils/environment-snapshot.js +242 -0
- package/dist/utils/environment-snapshot.js.map +1 -0
- package/dist/utils/error-handler.d.ts +1 -11
- package/dist/utils/error-handler.d.ts.map +1 -1
- package/dist/utils/error-handler.js +41 -25
- package/dist/utils/error-handler.js.map +1 -1
- package/dist/utils/index.d.ts +2 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +2 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/ini-reader.js +4 -4
- package/dist/utils/ini-reader.js.map +1 -1
- package/dist/utils/log-reader.d.ts +29 -0
- package/dist/utils/log-reader.d.ts.map +1 -0
- package/dist/utils/log-reader.js +229 -0
- package/dist/utils/log-reader.js.map +1 -0
- package/dist/utils/log-redaction.d.ts +4 -0
- package/dist/utils/log-redaction.d.ts.map +1 -0
- package/dist/utils/log-redaction.js +27 -0
- package/dist/utils/log-redaction.js.map +1 -0
- package/dist/utils/logger.d.ts +1 -0
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +20 -7
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/normalize.d.ts.map +1 -1
- package/dist/utils/normalize.js +31 -30
- package/dist/utils/normalize.js.map +1 -1
- package/dist/utils/path-security.d.ts.map +1 -1
- package/dist/utils/path-security.js +20 -11
- package/dist/utils/path-security.js.map +1 -1
- package/dist/utils/response-factory.d.ts +1 -1
- package/dist/utils/response-factory.d.ts.map +1 -1
- package/dist/utils/response-factory.js +17 -3
- package/dist/utils/response-factory.js.map +1 -1
- package/dist/utils/response-validator.d.ts.map +1 -1
- package/dist/utils/response-validator.js +114 -47
- package/dist/utils/response-validator.js.map +1 -1
- package/dist/utils/safe-json.d.ts.map +1 -1
- package/dist/utils/safe-json.js +24 -18
- package/dist/utils/safe-json.js.map +1 -1
- package/dist/utils/type-coercion.d.ts +2 -3
- package/dist/utils/type-coercion.d.ts.map +1 -1
- package/dist/utils/type-coercion.js +42 -14
- package/dist/utils/type-coercion.js.map +1 -1
- package/dist/utils/type-guards.d.ts +2 -0
- package/dist/utils/type-guards.d.ts.map +1 -0
- package/dist/utils/type-guards.js +4 -0
- package/dist/utils/type-guards.js.map +1 -0
- package/dist/utils/unreal-command-queue.d.ts +2 -0
- package/dist/utils/unreal-command-queue.d.ts.map +1 -1
- package/dist/utils/unreal-command-queue.js +80 -54
- package/dist/utils/unreal-command-queue.js.map +1 -1
- package/dist/utils/validation.d.ts +2 -1
- package/dist/utils/validation.d.ts.map +1 -1
- package/dist/utils/validation.js +44 -34
- package/dist/utils/validation.js.map +1 -1
- package/package.json +4 -6
- package/server.json +3 -3
- package/dist/graphql/loaders.d.ts +0 -64
- package/dist/graphql/loaders.d.ts.map +0 -1
- package/dist/graphql/loaders.js +0 -117
- package/dist/graphql/loaders.js.map +0 -1
- package/dist/graphql/resolvers.d.ts +0 -373
- package/dist/graphql/resolvers.d.ts.map +0 -1
- package/dist/graphql/resolvers.js +0 -776
- package/dist/graphql/resolvers.js.map +0 -1
- package/dist/graphql/schema.d.ts +0 -5
- package/dist/graphql/schema.d.ts.map +0 -1
- package/dist/graphql/schema.js +0 -437
- package/dist/graphql/schema.js.map +0 -1
- package/dist/graphql/server.d.ts +0 -25
- package/dist/graphql/server.d.ts.map +0 -1
- package/dist/graphql/server.js +0 -119
- package/dist/graphql/server.js.map +0 -1
- package/dist/graphql/types.d.ts +0 -9
- package/dist/graphql/types.d.ts.map +0 -1
- package/dist/graphql/types.js +0 -2
- package/dist/graphql/types.js.map +0 -1
- package/dist/tools/actors.d.ts +0 -212
- package/dist/tools/actors.d.ts.map +0 -1
- package/dist/tools/actors.js +0 -456
- package/dist/tools/actors.js.map +0 -1
- package/dist/tools/animation.d.ts +0 -274
- package/dist/tools/animation.d.ts.map +0 -1
- package/dist/tools/animation.js +0 -773
- package/dist/tools/animation.js.map +0 -1
- package/dist/tools/assets.d.ts +0 -82
- package/dist/tools/assets.d.ts.map +0 -1
- package/dist/tools/assets.js +0 -383
- package/dist/tools/assets.js.map +0 -1
- package/dist/tools/blueprint.d.ts +0 -271
- package/dist/tools/blueprint.d.ts.map +0 -1
- package/dist/tools/blueprint.js +0 -828
- package/dist/tools/blueprint.js.map +0 -1
- package/dist/tools/environment.d.ts +0 -37
- package/dist/tools/environment.d.ts.map +0 -1
- package/dist/tools/environment.js +0 -338
- package/dist/tools/environment.js.map +0 -1
- package/dist/tools/foliage.d.ts +0 -140
- package/dist/tools/foliage.d.ts.map +0 -1
- package/dist/tools/foliage.js +0 -405
- package/dist/tools/foliage.js.map +0 -1
- package/dist/tools/landscape.d.ts +0 -120
- package/dist/tools/landscape.d.ts.map +0 -1
- package/dist/tools/landscape.js +0 -454
- package/dist/tools/landscape.js.map +0 -1
- package/dist/tools/lighting.d.ts +0 -240
- package/dist/tools/lighting.d.ts.map +0 -1
- package/dist/tools/lighting.js +0 -856
- package/dist/tools/lighting.js.map +0 -1
- package/dist/tools/logs.d.ts +0 -45
- package/dist/tools/logs.d.ts.map +0 -1
- package/dist/tools/logs.js +0 -235
- package/dist/tools/logs.js.map +0 -1
- package/dist/tools/niagara.d.ts +0 -277
- package/dist/tools/niagara.d.ts.map +0 -1
- package/dist/tools/niagara.js +0 -325
- package/dist/tools/niagara.js.map +0 -1
- package/dist/tools/physics.d.ts +0 -191
- package/dist/tools/physics.d.ts.map +0 -1
- package/dist/tools/physics.js +0 -492
- package/dist/tools/physics.js.map +0 -1
- package/dist/tools/sequence.d.ts +0 -139
- package/dist/tools/sequence.d.ts.map +0 -1
- package/dist/tools/sequence.js +0 -261
- package/dist/tools/sequence.js.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { cleanObject } from '../../utils/safe-json.js';
|
|
2
|
-
import { executeAutomationRequest
|
|
2
|
+
import { executeAutomationRequest } from './common-handlers.js';
|
|
3
3
|
import { ResponseFactory } from '../../utils/response-factory.js';
|
|
4
4
|
import { TOOL_ACTIONS } from '../../utils/action-constants.js';
|
|
5
5
|
const VALID_PROFILING_TYPES = ['cpu', 'gpu', 'memory', 'renderthread', 'all', 'fps', 'gamethread'];
|
|
@@ -32,12 +32,11 @@ export async function handlePerformanceTools(action, args, tools) {
|
|
|
32
32
|
}
|
|
33
33
|
case 'run_benchmark': {
|
|
34
34
|
const duration = typeof argsTyped.duration === 'number' ? argsTyped.duration : 60;
|
|
35
|
-
await executeAutomationRequest(tools,
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
return { success: true, message: `Benchmark completed for ${duration} seconds` };
|
|
35
|
+
const res = await executeAutomationRequest(tools, 'run_benchmark', {
|
|
36
|
+
duration,
|
|
37
|
+
type: typeof argsRecord.type === 'string' ? argsRecord.type : undefined
|
|
38
|
+
});
|
|
39
|
+
return cleanObject(res);
|
|
41
40
|
}
|
|
42
41
|
case 'show_fps': {
|
|
43
42
|
const res = await executeAutomationRequest(tools, TOOL_ACTIONS.SHOW_FPS, {
|
|
@@ -83,8 +82,9 @@ export async function handlePerformanceTools(action, args, tools) {
|
|
|
83
82
|
}
|
|
84
83
|
case 'enable_gpu_timing': {
|
|
85
84
|
const enabled = argsTyped.enabled !== false;
|
|
86
|
-
const res = await executeAutomationRequest(tools,
|
|
87
|
-
|
|
85
|
+
const res = await executeAutomationRequest(tools, 'manage_performance', {
|
|
86
|
+
subAction: 'enable_gpu_timing',
|
|
87
|
+
enabled
|
|
88
88
|
});
|
|
89
89
|
return cleanObject(res);
|
|
90
90
|
}
|
|
@@ -106,8 +106,7 @@ export async function handlePerformanceTools(action, args, tools) {
|
|
|
106
106
|
case 'configure_lod': {
|
|
107
107
|
const res = await executeAutomationRequest(tools, TOOL_ACTIONS.CONFIGURE_LOD, {
|
|
108
108
|
forceLOD: argsRecord.forceLOD,
|
|
109
|
-
lodBias: argsRecord.lodBias
|
|
110
|
-
distanceScale: argsRecord.distanceScale
|
|
109
|
+
lodBias: argsRecord.lodBias
|
|
111
110
|
});
|
|
112
111
|
return cleanObject(res);
|
|
113
112
|
}
|
|
@@ -135,43 +134,35 @@ export async function handlePerformanceTools(action, args, tools) {
|
|
|
135
134
|
const res = await executeAutomationRequest(tools, TOOL_ACTIONS.MERGE_ACTORS, {
|
|
136
135
|
enableInstancing: mergeParams.enableInstancing,
|
|
137
136
|
mergeActors: true,
|
|
138
|
-
actors
|
|
137
|
+
actors,
|
|
138
|
+
replaceSourceActors: mergeParams.replaceSourceActors,
|
|
139
|
+
packageName: typeof mergeParams.packageName === 'string' ? mergeParams.packageName : undefined,
|
|
140
|
+
outputPath: typeof mergeParams.outputPath === 'string' ? mergeParams.outputPath : undefined
|
|
139
141
|
});
|
|
140
142
|
return cleanObject(res);
|
|
141
143
|
}
|
|
142
|
-
const
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
return { success: true, message: 'Draw call optimization configured' };
|
|
144
|
+
const res = await executeAutomationRequest(tools, 'optimize_draw_calls', {
|
|
145
|
+
enabled: typeof mergeParams.enabled === 'boolean'
|
|
146
|
+
? mergeParams.enabled
|
|
147
|
+
: mergeParams.enableBatching,
|
|
148
|
+
instancing: mergeParams.enableInstancing
|
|
149
|
+
});
|
|
150
|
+
return cleanObject(res);
|
|
150
151
|
}
|
|
151
152
|
case 'configure_occlusion_culling': {
|
|
152
|
-
const
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
return { success: true, message: 'Occlusion culling configured' };
|
|
153
|
+
const res = await executeAutomationRequest(tools, 'configure_occlusion_culling', {
|
|
154
|
+
enabled: argsTyped.enabled !== false,
|
|
155
|
+
slop: argsRecord.slop,
|
|
156
|
+
minScreenRadius: argsRecord.minScreenRadius
|
|
157
|
+
});
|
|
158
|
+
return cleanObject(res);
|
|
159
159
|
}
|
|
160
160
|
case 'optimize_shaders': {
|
|
161
|
-
const
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
commands.push(`r.ShaderPipelineCache.Enabled ${argsRecord.cacheShaders ? 1 : 0}`);
|
|
167
|
-
}
|
|
168
|
-
if (argsRecord.reducePermutations === true) {
|
|
169
|
-
commands.push('RecompileShaders changed');
|
|
170
|
-
}
|
|
171
|
-
if (commands.length > 0) {
|
|
172
|
-
await executeBatchConsoleCommands(tools, commands);
|
|
173
|
-
}
|
|
174
|
-
return { success: true, message: 'Shader optimization configured' };
|
|
161
|
+
const res = await executeAutomationRequest(tools, 'optimize_shaders', {
|
|
162
|
+
mode: typeof argsRecord.mode === 'string' ? argsRecord.mode : undefined,
|
|
163
|
+
forceRecompile: argsRecord.forceRecompile
|
|
164
|
+
});
|
|
165
|
+
return cleanObject(res);
|
|
175
166
|
}
|
|
176
167
|
case 'configure_nanite': {
|
|
177
168
|
const res = await executeAutomationRequest(tools, TOOL_ACTIONS.CONFIGURE_NANITE, {
|
|
@@ -185,7 +176,9 @@ export async function handlePerformanceTools(action, args, tools) {
|
|
|
185
176
|
const res = await executeAutomationRequest(tools, 'configure_world_partition', {
|
|
186
177
|
enabled: argsTyped.enabled !== false,
|
|
187
178
|
cellSize: argsRecord.cellSize,
|
|
188
|
-
loadingRange: argsRecord.
|
|
179
|
+
loadingRange: typeof argsRecord.streamingDistance === 'number'
|
|
180
|
+
? argsRecord.streamingDistance
|
|
181
|
+
: argsRecord.loadingRange
|
|
189
182
|
});
|
|
190
183
|
return cleanObject(res);
|
|
191
184
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"performance-handlers.js","sourceRoot":"","sources":["../../../src/tools/handlers/performance-handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,EAAE,wBAAwB,EAAE,
|
|
1
|
+
{"version":3,"file":"performance-handlers.js","sourceRoot":"","sources":["../../../src/tools/handlers/performance-handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline-handlers.d.ts","sourceRoot":"","sources":["../../../src/tools/handlers/pipeline-handlers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"pipeline-handlers.d.ts","sourceRoot":"","sources":["../../../src/tools/handlers/pipeline-handlers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAuWjE,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,oBAmJ1F"}
|
|
@@ -1,18 +1,77 @@
|
|
|
1
1
|
import { cleanObject } from '../../utils/safe-json.js';
|
|
2
2
|
import { executeAutomationRequest } from './common-handlers.js';
|
|
3
|
-
import { spawn,
|
|
4
|
-
import path from 'path';
|
|
5
|
-
import fs from 'fs';
|
|
3
|
+
import { spawn, exec } from 'node:child_process';
|
|
4
|
+
import path from 'node:path';
|
|
5
|
+
import fs from 'node:fs';
|
|
6
|
+
import util from 'node:util';
|
|
7
|
+
const execAsync = util.promisify(exec);
|
|
8
|
+
const ALLOWED_UBT_PLATFORMS = new Set(['Win64', 'Mac', 'Linux', 'LinuxArm64', 'Android', 'IOS', 'TVOS', 'HoloLens', 'VisionOS']);
|
|
9
|
+
const ALLOWED_UBT_CONFIGURATIONS = new Set(['Debug', 'DebugGame', 'Development', 'Shipping', 'Test']);
|
|
10
|
+
const BLOCKED_UBT_OVERRIDE_OPTIONS = new Set(['project', 'projectfile', 'target', 'mode']);
|
|
6
11
|
function validateUbtArgumentsString(extraArgs) {
|
|
7
12
|
if (!extraArgs || typeof extraArgs !== 'string') {
|
|
8
13
|
return;
|
|
9
14
|
}
|
|
10
|
-
const forbiddenChars = ['\n', '\r', ';', '|', '`', '&&', '||', '>', '<'];
|
|
15
|
+
const forbiddenChars = ['\n', '\r', ';', '|', '`', '&&', '||', '>', '<', '"', "'"];
|
|
11
16
|
for (const char of forbiddenChars) {
|
|
12
17
|
if (extraArgs.includes(char)) {
|
|
13
18
|
throw new Error(`UBT arguments contain forbidden character(s) and are blocked for safety. Blocked: ${JSON.stringify(char)}.`);
|
|
14
19
|
}
|
|
15
20
|
}
|
|
21
|
+
for (const token of tokenizeArgs(extraArgs)) {
|
|
22
|
+
validateUbtExtraArgumentToken(token);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
function validateUbtArgumentToken(token, context) {
|
|
26
|
+
if (!token || token.trim().length === 0) {
|
|
27
|
+
throw new Error(`${context} must be a non-empty UBT token.`);
|
|
28
|
+
}
|
|
29
|
+
const trimmed = token.trim();
|
|
30
|
+
if (!/^[A-Za-z0-9_\-.=:/\\+]+$/.test(trimmed)) {
|
|
31
|
+
throw new Error(`${context} contains unsafe UBT argument characters.`);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
function validateUbtPositionalToken(token, context) {
|
|
35
|
+
validateUbtArgumentToken(token, context);
|
|
36
|
+
const trimmed = token.trim();
|
|
37
|
+
if (/^[-/@]/.test(trimmed) || trimmed.includes('=') || trimmed.includes(':') || trimmed.includes('/') || trimmed.includes('\\')) {
|
|
38
|
+
throw new Error(`${context} must be a positional UBT token and cannot be a switch or path.`);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
function validateUbtTarget(target) {
|
|
42
|
+
validateUbtPositionalToken(target, 'run_ubt.target');
|
|
43
|
+
}
|
|
44
|
+
function validateUbtPlatform(platform) {
|
|
45
|
+
validateUbtPositionalToken(platform, 'run_ubt.platform');
|
|
46
|
+
if (!ALLOWED_UBT_PLATFORMS.has(platform)) {
|
|
47
|
+
throw new Error(`run_ubt.platform is not allowed: ${platform}`);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
function validateUbtConfiguration(configuration) {
|
|
51
|
+
validateUbtPositionalToken(configuration, 'run_ubt.configuration');
|
|
52
|
+
if (!ALLOWED_UBT_CONFIGURATIONS.has(configuration)) {
|
|
53
|
+
throw new Error(`run_ubt.configuration is not allowed: ${configuration}`);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
function getUbtOptionName(token) {
|
|
57
|
+
const trimmed = token.trim().toLowerCase();
|
|
58
|
+
if (!trimmed.startsWith('-') && !trimmed.startsWith('/')) {
|
|
59
|
+
return undefined;
|
|
60
|
+
}
|
|
61
|
+
const withoutPrefix = trimmed.replace(/^[-/]+/, '');
|
|
62
|
+
const separatorIndex = withoutPrefix.search(/[=:]/);
|
|
63
|
+
return separatorIndex >= 0 ? withoutPrefix.slice(0, separatorIndex) : withoutPrefix;
|
|
64
|
+
}
|
|
65
|
+
function validateUbtExtraArgumentToken(token) {
|
|
66
|
+
const trimmed = token.trim();
|
|
67
|
+
if (trimmed.startsWith('@')) {
|
|
68
|
+
throw new Error('UBT response-file arguments are blocked for safety.');
|
|
69
|
+
}
|
|
70
|
+
validateUbtArgumentToken(token, 'run_ubt.arguments');
|
|
71
|
+
const optionName = getUbtOptionName(trimmed);
|
|
72
|
+
if (optionName && BLOCKED_UBT_OVERRIDE_OPTIONS.has(optionName)) {
|
|
73
|
+
throw new Error(`UBT argument ${optionName} cannot override the managed invocation.`);
|
|
74
|
+
}
|
|
16
75
|
}
|
|
17
76
|
function tokenizeArgs(extraArgs) {
|
|
18
77
|
if (!extraArgs) {
|
|
@@ -52,23 +111,32 @@ function tokenizeArgs(extraArgs) {
|
|
|
52
111
|
}
|
|
53
112
|
return args;
|
|
54
113
|
}
|
|
55
|
-
function
|
|
56
|
-
const
|
|
57
|
-
|
|
58
|
-
|
|
114
|
+
function isEngineDirectoryPath(enginePath) {
|
|
115
|
+
const trimmed = enginePath.replace(/[\\/]+$/, '');
|
|
116
|
+
const segments = trimmed.split(/[\\/]/);
|
|
117
|
+
const lastSegment = segments[segments.length - 1];
|
|
118
|
+
return typeof lastSegment === 'string' && lastSegment.toLowerCase() === 'engine';
|
|
119
|
+
}
|
|
120
|
+
async function tryUbtpath(candidate) {
|
|
121
|
+
let mode = fs.constants.F_OK;
|
|
122
|
+
if (process.platform !== 'win32') {
|
|
123
|
+
if (!candidate.endsWith('.dll')) {
|
|
124
|
+
mode = fs.constants.F_OK | fs.constants.X_OK;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
59
127
|
try {
|
|
60
|
-
fs.
|
|
128
|
+
await fs.promises.access(candidate, mode);
|
|
61
129
|
return candidate;
|
|
62
130
|
}
|
|
63
131
|
catch { }
|
|
64
132
|
return undefined;
|
|
65
133
|
}
|
|
66
|
-
function findUbtExecutable() {
|
|
134
|
+
async function findUbtExecutable() {
|
|
67
135
|
const enginePath = process.env.UE_ENGINE_PATH ??
|
|
68
136
|
process.env.UNREAL_ENGINE_PATH ??
|
|
69
137
|
undefined;
|
|
70
138
|
if (enginePath) {
|
|
71
|
-
const endsWithEngine =
|
|
139
|
+
const endsWithEngine = isEngineDirectoryPath(enginePath);
|
|
72
140
|
const roots = endsWithEngine
|
|
73
141
|
? [enginePath]
|
|
74
142
|
: [path.join(enginePath, 'Engine')];
|
|
@@ -80,7 +148,7 @@ function findUbtExecutable() {
|
|
|
80
148
|
path.join(root, 'Binaries', 'DotNET', 'UnrealBuildTool.dll'),
|
|
81
149
|
];
|
|
82
150
|
for (const c of candidates) {
|
|
83
|
-
const hit = tryUbtpath(c);
|
|
151
|
+
const hit = await tryUbtpath(c);
|
|
84
152
|
if (hit)
|
|
85
153
|
return hit;
|
|
86
154
|
}
|
|
@@ -88,21 +156,23 @@ function findUbtExecutable() {
|
|
|
88
156
|
}
|
|
89
157
|
const projectPath = process.env.UE_PROJECT_PATH;
|
|
90
158
|
if (projectPath) {
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
}
|
|
159
|
+
let uprojectFile = undefined;
|
|
160
|
+
if (projectPath.endsWith('.uproject')) {
|
|
161
|
+
uprojectFile = projectPath;
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
try {
|
|
165
|
+
const files = await fs.promises.readdir(projectPath);
|
|
166
|
+
const found = files.find(f => f.endsWith('.uproject'));
|
|
167
|
+
if (found)
|
|
168
|
+
uprojectFile = path.join(projectPath, found);
|
|
169
|
+
}
|
|
170
|
+
catch { }
|
|
171
|
+
}
|
|
103
172
|
if (uprojectFile) {
|
|
104
173
|
try {
|
|
105
|
-
const
|
|
174
|
+
const contentRaw = await fs.promises.readFile(uprojectFile, 'utf-8');
|
|
175
|
+
const content = JSON.parse(contentRaw);
|
|
106
176
|
const association = content.EngineAssociation;
|
|
107
177
|
if (association) {
|
|
108
178
|
const versionMatch = association.match(/^(\d+)\.(\d+)$/);
|
|
@@ -133,7 +203,7 @@ function findUbtExecutable() {
|
|
|
133
203
|
path.join(root, 'Binaries', 'DotNET', 'UnrealBuildTool.dll'),
|
|
134
204
|
];
|
|
135
205
|
for (const c of candidates) {
|
|
136
|
-
const hit = tryUbtpath(c);
|
|
206
|
+
const hit = await tryUbtpath(c);
|
|
137
207
|
if (hit)
|
|
138
208
|
return hit;
|
|
139
209
|
}
|
|
@@ -142,7 +212,7 @@ function findUbtExecutable() {
|
|
|
142
212
|
}
|
|
143
213
|
const iniPath = path.join(path.dirname(uprojectFile), 'Config', 'DefaultEngine.ini');
|
|
144
214
|
try {
|
|
145
|
-
const iniContent = fs.
|
|
215
|
+
const iniContent = await fs.promises.readFile(iniPath, 'utf-8');
|
|
146
216
|
const iniMatch = iniContent.match(/EnginePath\s*=\s*(.+)/);
|
|
147
217
|
if (iniMatch) {
|
|
148
218
|
const iniEnginePath = iniMatch[1].trim().replace(/["']/g, '');
|
|
@@ -152,7 +222,7 @@ function findUbtExecutable() {
|
|
|
152
222
|
path.join(iniEnginePath, 'Binaries', 'DotNET', 'UnrealBuildTool.dll'),
|
|
153
223
|
];
|
|
154
224
|
for (const c of candidates) {
|
|
155
|
-
const hit = tryUbtpath(c);
|
|
225
|
+
const hit = await tryUbtpath(c);
|
|
156
226
|
if (hit)
|
|
157
227
|
return hit;
|
|
158
228
|
}
|
|
@@ -165,12 +235,12 @@ function findUbtExecutable() {
|
|
|
165
235
|
}
|
|
166
236
|
try {
|
|
167
237
|
const whichCmd = process.platform === 'win32' ? 'where' : 'which';
|
|
168
|
-
const
|
|
169
|
-
stdio: ['pipe', 'pipe', 'pipe'],
|
|
238
|
+
const { stdout } = await execAsync(`${whichCmd} UnrealBuildTool`, {
|
|
170
239
|
encoding: 'utf-8',
|
|
240
|
+
timeout: 5000,
|
|
171
241
|
});
|
|
172
|
-
if (
|
|
173
|
-
const first =
|
|
242
|
+
if (stdout) {
|
|
243
|
+
const first = stdout.trim().split(/\r?\n/)[0];
|
|
174
244
|
if (first)
|
|
175
245
|
return first;
|
|
176
246
|
}
|
|
@@ -178,6 +248,43 @@ function findUbtExecutable() {
|
|
|
178
248
|
catch { }
|
|
179
249
|
return '';
|
|
180
250
|
}
|
|
251
|
+
async function findBundledDotNetRoot(ubtPath) {
|
|
252
|
+
const platformFolder = (() => {
|
|
253
|
+
if (process.platform === 'win32') {
|
|
254
|
+
return process.arch === 'arm64' ? 'win-arm64' : 'win-x64';
|
|
255
|
+
}
|
|
256
|
+
if (process.platform === 'darwin') {
|
|
257
|
+
return process.arch === 'arm64' ? 'mac-arm64' : 'mac-x64';
|
|
258
|
+
}
|
|
259
|
+
return process.arch === 'arm64' ? 'linux-arm64' : 'linux-x64';
|
|
260
|
+
})();
|
|
261
|
+
let candidateRoot = path.dirname(ubtPath);
|
|
262
|
+
for (let depth = 0; depth < 6; depth++) {
|
|
263
|
+
const dotNetBase = path.join(candidateRoot, 'Binaries', 'ThirdParty', 'DotNet');
|
|
264
|
+
try {
|
|
265
|
+
const entries = await fs.promises.readdir(dotNetBase, { withFileTypes: true });
|
|
266
|
+
const versionDirs = entries
|
|
267
|
+
.filter(entry => entry.isDirectory())
|
|
268
|
+
.map(entry => entry.name)
|
|
269
|
+
.sort((a, b) => b.localeCompare(a, undefined, { numeric: true }));
|
|
270
|
+
for (const versionDir of versionDirs) {
|
|
271
|
+
const runtimeRoot = path.join(dotNetBase, versionDir, platformFolder);
|
|
272
|
+
const dotnetExecutable = path.join(runtimeRoot, process.platform === 'win32' ? 'dotnet.exe' : 'dotnet');
|
|
273
|
+
const hit = await tryUbtpath(dotnetExecutable);
|
|
274
|
+
if (hit) {
|
|
275
|
+
return runtimeRoot;
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
catch { }
|
|
280
|
+
const parent = path.dirname(candidateRoot);
|
|
281
|
+
if (parent === candidateRoot) {
|
|
282
|
+
break;
|
|
283
|
+
}
|
|
284
|
+
candidateRoot = parent;
|
|
285
|
+
}
|
|
286
|
+
return undefined;
|
|
287
|
+
}
|
|
181
288
|
export async function handlePipelineTools(action, args, tools) {
|
|
182
289
|
switch (action) {
|
|
183
290
|
case 'run_ubt': {
|
|
@@ -188,10 +295,13 @@ export async function handlePipelineTools(action, args, tools) {
|
|
|
188
295
|
if (!target) {
|
|
189
296
|
throw new Error('Target is required for run_ubt');
|
|
190
297
|
}
|
|
298
|
+
validateUbtTarget(target);
|
|
299
|
+
validateUbtPlatform(platform);
|
|
300
|
+
validateUbtConfiguration(configuration);
|
|
191
301
|
validateUbtArgumentsString(extraArgs);
|
|
192
|
-
const discoveredUbtPath = findUbtExecutable();
|
|
302
|
+
const discoveredUbtPath = await findUbtExecutable();
|
|
193
303
|
if (!discoveredUbtPath) {
|
|
194
|
-
const res = await executeAutomationRequest(tools, 'manage_pipeline', { ...args, subAction: action }, 'Automation bridge not available for
|
|
304
|
+
const res = await executeAutomationRequest(tools, 'manage_pipeline', { ...args, subAction: action }, 'Automation bridge not available for run_ubt');
|
|
195
305
|
return cleanObject(res);
|
|
196
306
|
}
|
|
197
307
|
let projectPath = process.env.UE_PROJECT_PATH;
|
|
@@ -204,7 +314,7 @@ export async function handlePipelineTools(action, args, tools) {
|
|
|
204
314
|
let uprojectFile = projectPath;
|
|
205
315
|
if (!uprojectFile.endsWith('.uproject')) {
|
|
206
316
|
try {
|
|
207
|
-
const files = fs.
|
|
317
|
+
const files = await fs.promises.readdir(projectPath);
|
|
208
318
|
const found = files.find(f => f.endsWith('.uproject'));
|
|
209
319
|
if (found) {
|
|
210
320
|
uprojectFile = path.join(projectPath, found);
|
|
@@ -214,7 +324,7 @@ export async function handlePipelineTools(action, args, tools) {
|
|
|
214
324
|
throw new Error(`Could not read project directory: ${projectPath}`);
|
|
215
325
|
}
|
|
216
326
|
}
|
|
217
|
-
const projectArg = `-Project
|
|
327
|
+
const projectArg = `-Project=${uprojectFile}`;
|
|
218
328
|
const extraTokens = tokenizeArgs(extraArgs);
|
|
219
329
|
const cmdArgs = [
|
|
220
330
|
target,
|
|
@@ -226,8 +336,17 @@ export async function handlePipelineTools(action, args, tools) {
|
|
|
226
336
|
const isDll = discoveredUbtPath.endsWith('.dll');
|
|
227
337
|
const executable = isDll ? 'dotnet' : discoveredUbtPath;
|
|
228
338
|
const actualArgs = isDll ? [discoveredUbtPath, ...cmdArgs] : cmdArgs;
|
|
339
|
+
const bundledDotNetRoot = await findBundledDotNetRoot(discoveredUbtPath);
|
|
340
|
+
const childEnv = bundledDotNetRoot
|
|
341
|
+
? {
|
|
342
|
+
...process.env,
|
|
343
|
+
DOTNET_ROOT: bundledDotNetRoot,
|
|
344
|
+
DOTNET_MULTILEVEL_LOOKUP: '0',
|
|
345
|
+
PATH: `${bundledDotNetRoot}${path.delimiter}${process.env.PATH ?? ''}`,
|
|
346
|
+
}
|
|
347
|
+
: process.env;
|
|
229
348
|
return new Promise((resolve) => {
|
|
230
|
-
const child = spawn(executable, actualArgs, { shell: false });
|
|
349
|
+
const child = spawn(executable, actualArgs, { shell: false, env: childEnv });
|
|
231
350
|
const MAX_OUTPUT_SIZE = 20 * 1024;
|
|
232
351
|
let stdout = '';
|
|
233
352
|
let stderr = '';
|
|
@@ -283,8 +402,7 @@ export async function handlePipelineTools(action, args, tools) {
|
|
|
283
402
|
});
|
|
284
403
|
}
|
|
285
404
|
default: {
|
|
286
|
-
|
|
287
|
-
return cleanObject(res);
|
|
405
|
+
return cleanObject({ success: false, error: 'UNKNOWN_ACTION', message: `Unknown system_control pipeline action: ${action}` });
|
|
288
406
|
}
|
|
289
407
|
}
|
|
290
408
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline-handlers.js","sourceRoot":"","sources":["../../../src/tools/handlers/pipeline-handlers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pipeline-handlers.js","sourceRoot":"","sources":["../../../src/tools/handlers/pipeline-handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sequence-handlers.d.ts","sourceRoot":"","sources":["../../../src/tools/handlers/sequence-handlers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAA0B,MAAM,gCAAgC,CAAC;AAkDhF,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"sequence-handlers.d.ts","sourceRoot":"","sources":["../../../src/tools/handlers/sequence-handlers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAA0B,MAAM,gCAAgC,CAAC;AAkDhF,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,oBAuiBrG"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { cleanObject } from '../../utils/safe-json.js';
|
|
2
|
-
import { executeAutomationRequest, requireNonEmptyString } from './common-handlers.js';
|
|
2
|
+
import { executeAutomationRequest, normalizePathFields, requireNonEmptyString } from './common-handlers.js';
|
|
3
3
|
const managedSequences = new Set();
|
|
4
4
|
const deletedSequences = new Set();
|
|
5
5
|
function normalizeSequencePath(path) {
|
|
@@ -34,6 +34,7 @@ function getMessageString(res) {
|
|
|
34
34
|
}
|
|
35
35
|
export async function handleSequenceTools(action, args, tools) {
|
|
36
36
|
const seqAction = String(action || '').trim();
|
|
37
|
+
args = normalizePathFields(args, ['path', 'destinationPath']);
|
|
37
38
|
switch (seqAction) {
|
|
38
39
|
case 'create': {
|
|
39
40
|
const name = requireNonEmptyString(args.name, 'name', 'Missing required parameter: name');
|
|
@@ -534,10 +535,11 @@ export async function handleSequenceTools(action, args, tools) {
|
|
|
534
535
|
return cleanObject(res);
|
|
535
536
|
}
|
|
536
537
|
default:
|
|
537
|
-
|
|
538
|
-
|
|
538
|
+
const payload = { ...args };
|
|
539
|
+
if (payload.action && !payload.subAction) {
|
|
540
|
+
payload.subAction = payload.action;
|
|
539
541
|
}
|
|
540
|
-
return await executeAutomationRequest(tools, 'manage_sequence',
|
|
542
|
+
return await executeAutomationRequest(tools, 'manage_sequence', payload);
|
|
541
543
|
}
|
|
542
544
|
}
|
|
543
545
|
//# sourceMappingURL=sequence-handlers.js.map
|