ue-mcp 1.3.8-beta.9 → 1.3.9-beta
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/README.md +1 -1
- package/dist/client-quirks.js +4 -0
- package/dist/client-quirks.js.map +1 -1
- package/dist/dialog-guard.d.ts +46 -10
- package/dist/dialog-guard.js +164 -53
- package/dist/dialog-guard.js.map +1 -1
- package/dist/editor-control.d.ts +6 -132
- package/dist/editor-control.js +53 -548
- package/dist/editor-control.js.map +1 -1
- package/dist/index.js +18 -4
- package/dist/index.js.map +1 -1
- package/dist/instructions.js +15 -2
- package/dist/instructions.js.map +1 -1
- package/dist/tool-counts.json +5 -4
- package/dist/tools/editor.js +9 -27
- package/dist/tools/editor.js.map +1 -1
- package/dist/types.d.ts +22 -1
- package/dist/types.js.map +1 -1
- package/dist/ue-mcp.default.yml +5 -5
- package/package.json +1 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/HandlerJsonProperty.h +1 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/HandlerPoseSearchSchema.h +29 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/AnimationHandlers_Depth.cpp +10 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/AnimationHandlers_IKRigAuthoring.cpp +1 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/AnimationHandlers_MotionMatching.cpp +174 -36
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/AnimationHandlers_Sequence.cpp +32 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/AnimationHandlers_SkeletalLive.cpp +13 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/AnimationHandlers_Skeleton.cpp +66 -5
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/AnimationHandlers_StateMachine.cpp +34 -8
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/AssetHandlers_GeometryScript.cpp +4 -4
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/AssetHandlers_Import.cpp +30 -4
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/AssetHandlers_MeshBoolean.cpp +4 -4
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/AssetHandlers_Struct.cpp +1 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/AudioHandlers_Depth.cpp +85 -2
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/AudioHandlers_MetaSound.cpp +126 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/AudioHandlers_MetaSoundRead.cpp +78 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/BlueprintHandlers.cpp +11 -2
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/BlueprintHandlers_UserTypes.cpp +20 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/ChooserHandlers.cpp +93 -8
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/ChooserHandlers_Nested.cpp +4 -3
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/DialogHandlers.cpp +92 -3
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/DialogHandlers.h +21 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/EditorHandlers.cpp +84 -12
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/EditorHandlers_Build.cpp +10 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/EditorHandlers_Profiling.cpp +55 -5
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/GameplayHandlers.cpp +11 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/GameplayHandlers_BTAuthoring.cpp +15 -2
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/GasHandlers.h +15 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/GasHandlers_Runtime.cpp +1 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/GasHandlers_Snapshot.cpp +1 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/LandscapeHandlers.cpp +20 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/LandscapeHandlers_Sculpt.cpp +30 -9
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/LevelHandlers.cpp +5 -5
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/LevelHandlers_Query.cpp +2 -2
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/LevelHandlers_Save.cpp +3 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/LevelHandlers_WorldPartitionSettings.cpp +8 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/MaterialHandlers_Build.cpp +6 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/MaterialHandlers_RVT.cpp +45 -8
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/NiagaraHandlers.cpp +80 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/NiagaraHandlers_Advanced.cpp +10 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/ProjectHandlers_Plugins.cpp +15 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/SequencerHandlers.cpp +27 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/SkeletalMeshHandlers.cpp +7 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/StateTreeHandlers.cpp +1 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/StateTreeHandlers_Depth.cpp +1 -3
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Tests/AssetDeleteGuardTests.cpp +1 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Tests/AssetPropertyPersistTests.cpp +1 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Tests/AssetSubobjectTests.cpp +1 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Tests/DataTableRowWriteTests.cpp +9 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Tests/MCPInstancedStructPathTestTypes.h +1 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Tests/PackageWriteGuardTests.cpp +1 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Public/HandlerPagination.h +15 -4
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Public/HandlerUtils.h +66 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Public/MCPEngineCompat.h +38 -0
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/UE_MCP_Bridge.Build.cs +18 -2
- package/plugin/ue_mcp_bridge/UE_MCP_Bridge.uplugin +1 -1
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
**Unreal Engine Model Context Protocol Server** - gives AI assistants deep read/write access to the Unreal Editor through <!-- count:tools -->26<!-- /count --> category tools covering <!-- count:actions -->1930+<!-- /count --> actions, plus a YAML flow engine for multi-step workflows and an npm plugin system for extending the surface.
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
That total is <!-- count:ownActions -->1100+<!-- /count --> actions of ue-mcp's own plus Epic's entire native AI Toolset Registry: on UE 5.8+ its <!-- count:nativeToolActions -->830<!-- /count --> official Unreal tools are called in-process and surfaced as `epic_*` actions in the matching category, Sequencer in `animation`, PCG in `pcg`, static meshes in `asset`.
|
|
11
11
|
|
|
12
12
|
```mermaid
|
|
13
13
|
flowchart LR
|
package/dist/client-quirks.js
CHANGED
|
@@ -89,6 +89,10 @@ export function progressRenderingNote(client) {
|
|
|
89
89
|
*/
|
|
90
90
|
const RENDERS_WHOLE_ELICITATION = [
|
|
91
91
|
"pi-coding-agent",
|
|
92
|
+
// pi-mcp-adapter, which names its client pi-mcp-<server> rather than after
|
|
93
|
+
// pi itself. It passes the elicitation message through whole into pi's TUI,
|
|
94
|
+
// so the handover buys nothing and only delays the form.
|
|
95
|
+
"pi-mcp-",
|
|
92
96
|
];
|
|
93
97
|
/**
|
|
94
98
|
* Whether the elicitation form has to be preceded by handing the dialog over.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-quirks.js","sourceRoot":"","sources":["../src/client-quirks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAOH,+DAA+D;AAC/D,SAAS,YAAY,CAAC,OAA2B;IAC/C,IAAI,CAAC,OAAO;QAAE,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,OAAO,OAAO;SACX,KAAK,CAAC,GAAG,CAAC;SACV,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACpC,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,OAAO,CAAC,OAA2B,EAAE,MAAgB;IAC5D,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACzB,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QACvB,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,KAAK,CAAC;IAC1B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,0BAA0B,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;AAC/C,MAAM,6BAA6B,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;AAElD,MAAM,UAAU,qBAAqB,CAAC,MAA8B;IAClE,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IACvC,MAAM,YAAY,GAAG,IAAI,KAAK,aAAa,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAC5E,IAAI,CAAC,YAAY;QAAE,OAAO,IAAI,CAAC;IAC/B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,0BAA0B,CAAC;QAAE,OAAO,IAAI,CAAC;IACtE,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,6BAA6B,CAAC;QAAE,OAAO,IAAI,CAAC;IAExE,OAAO,CACL,qEAAqE,MAAM,CAAC,OAAO,IAAI,SAAS,GAAG;QACnG,sEAAsE;QACtE,+EAA+E;QAC/E,0EAA0E;QAC1E,4EAA4E;QAC5E,yBAAyB,CAC1B,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,yBAAyB,GAAG;IAChC,iBAAiB;
|
|
1
|
+
{"version":3,"file":"client-quirks.js","sourceRoot":"","sources":["../src/client-quirks.ts"],"names":[],"mappings":"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"}
|
package/dist/dialog-guard.d.ts
CHANGED
|
@@ -29,6 +29,15 @@ import type { IBridge } from "./bridge.js";
|
|
|
29
29
|
import type { ElicitFn } from "./types.js";
|
|
30
30
|
import type { DialogMode } from "./user-state.js";
|
|
31
31
|
/** The dialog, as every layer describes it. */
|
|
32
|
+
/** One tickable row of a dialog that asks a question per item. */
|
|
33
|
+
export interface DialogItem {
|
|
34
|
+
index: number;
|
|
35
|
+
/** The row's first cell, which is the asset name on a save prompt. */
|
|
36
|
+
label: string;
|
|
37
|
+
/** Every cell in Slate order: name, package path, class path. */
|
|
38
|
+
cells: string[];
|
|
39
|
+
checked: boolean;
|
|
40
|
+
}
|
|
32
41
|
export interface BlockingDialog {
|
|
33
42
|
title: string;
|
|
34
43
|
message: string;
|
|
@@ -37,6 +46,14 @@ export interface BlockingDialog {
|
|
|
37
46
|
buttonLabel: string;
|
|
38
47
|
respondWith: string;
|
|
39
48
|
}>;
|
|
49
|
+
/**
|
|
50
|
+
* The rows this dialog lets a person tick, when it has any.
|
|
51
|
+
*
|
|
52
|
+
* Save Content is N questions, not one: a checkbox per unsaved package, and
|
|
53
|
+
* "Save Selected" saves whatever is ticked. Without these the only honest
|
|
54
|
+
* offer was all or nothing.
|
|
55
|
+
*/
|
|
56
|
+
items?: DialogItem[];
|
|
40
57
|
}
|
|
41
58
|
export declare function isModalSafeMethod(method: string): boolean;
|
|
42
59
|
/**
|
|
@@ -48,6 +65,16 @@ export declare function isModalSafeMethod(method: string): boolean;
|
|
|
48
65
|
* the question itself.
|
|
49
66
|
*/
|
|
50
67
|
export declare function oneLine(text: string, limit?: number): string;
|
|
68
|
+
/**
|
|
69
|
+
* A blocking dialog, rendered for a person to read.
|
|
70
|
+
*
|
|
71
|
+
* Unreal flattens a Slate dialog into lines, so a save prompt arrives as its
|
|
72
|
+
* prompt, then the column headers, then one line per cell, then the button
|
|
73
|
+
* labels. Printed raw that is an unreadable run of paths. This pulls the asset
|
|
74
|
+
* rows back out and lays them in a table, and passes anything it does not
|
|
75
|
+
* recognise through untouched.
|
|
76
|
+
*/
|
|
77
|
+
export declare function renderDialog(dialog: BlockingDialog): string;
|
|
51
78
|
/** True for the refusal the plugin's own gate emits. */
|
|
52
79
|
export declare function isDialogRefusal(v: unknown): boolean;
|
|
53
80
|
/** A button press, and whether the editor confirmed it landed. */
|
|
@@ -77,8 +104,17 @@ export interface GuardDeps {
|
|
|
77
104
|
mode: () => DialogMode;
|
|
78
105
|
/** Reads the live dialog list. Modal-safe, so it answers while parked. */
|
|
79
106
|
probe: () => Promise<unknown>;
|
|
80
|
-
/**
|
|
81
|
-
|
|
107
|
+
/**
|
|
108
|
+
* Presses one button by label, applying any per-item ticks first.
|
|
109
|
+
*
|
|
110
|
+
* One call, because a modal is exactly where a caller cannot be relied on
|
|
111
|
+
* to come back: setting the ticks and pressing the button either both
|
|
112
|
+
* happen or neither does.
|
|
113
|
+
*/
|
|
114
|
+
press: (buttonLabel: string, items?: Array<{
|
|
115
|
+
index: number;
|
|
116
|
+
checked: boolean;
|
|
117
|
+
}>) => Promise<unknown>;
|
|
82
118
|
/** Present only when the connected client advertised elicitation. */
|
|
83
119
|
elicit?: () => ElicitFn | undefined;
|
|
84
120
|
/**
|
|
@@ -216,17 +252,17 @@ export declare class DialogGuard {
|
|
|
216
252
|
* Asked of the live elicit function rather than stored, because the client is
|
|
217
253
|
* only knowable once one has connected and this guard outlives connections.
|
|
218
254
|
*/
|
|
219
|
-
private needsRelay;
|
|
220
255
|
/**
|
|
221
|
-
*
|
|
256
|
+
* Whether the text has to go back before a form can carry it.
|
|
222
257
|
*
|
|
223
|
-
*
|
|
224
|
-
*
|
|
225
|
-
*
|
|
226
|
-
*
|
|
227
|
-
*
|
|
258
|
+
* Two conditions, not one. A client that collapses a long elicitation is
|
|
259
|
+
* only a problem when there IS a long elicitation: a save prompt renders as
|
|
260
|
+
* a line and a short table, which every client shows in full, and relaying
|
|
261
|
+
* that costs a round trip AND leaves raising the form to the agent, which is
|
|
262
|
+
* not something to depend on. So the form goes up on the first call unless
|
|
263
|
+
* the rendered block is genuinely too big for one.
|
|
228
264
|
*/
|
|
229
|
-
|
|
265
|
+
private needsRelay;
|
|
230
266
|
/**
|
|
231
267
|
* The decision about a dialog the caller ALREADY has, with no probe.
|
|
232
268
|
*
|
package/dist/dialog-guard.js
CHANGED
|
@@ -38,13 +38,7 @@ const BRIDGE_ALLOWED_WHILE_BLOCKED = new Set([
|
|
|
38
38
|
"get_bridge_capabilities",
|
|
39
39
|
"get_param_echo",
|
|
40
40
|
]);
|
|
41
|
-
/**
|
|
42
|
-
const RECOVERY_ACTIONS = new Set([
|
|
43
|
-
"editor.start_editor",
|
|
44
|
-
"editor.stop_editor",
|
|
45
|
-
"editor.restart_editor",
|
|
46
|
-
]);
|
|
47
|
-
/** Tool actions that stay callable, or the dialog could never be answered. */
|
|
41
|
+
/** Reads and the press. Nothing that acts on the editor, with no exceptions. */
|
|
48
42
|
const ACTIONS_ALLOWED_WHILE_BLOCKED = new Set([
|
|
49
43
|
// Read the dialog and answer it.
|
|
50
44
|
"editor.list_dialogs",
|
|
@@ -53,14 +47,6 @@ const ACTIONS_ALLOWED_WHILE_BLOCKED = new Set([
|
|
|
53
47
|
// Work out what is going on.
|
|
54
48
|
"editor.get_engine_state",
|
|
55
49
|
"project.get_status",
|
|
56
|
-
// Editor lifecycle. Permitted because they are how a caller gets out of a
|
|
57
|
-
// stuck editor, and refusing them leaves no way back at all. They are NOT
|
|
58
|
-
// invisible to the dialog: every allowed subject still probes, and every
|
|
59
|
-
// allowed result carries the same "the editor is blocked" stamp, so a modal
|
|
60
|
-
// is reported on these routes rather than passed over.
|
|
61
|
-
"editor.start_editor",
|
|
62
|
-
"editor.stop_editor",
|
|
63
|
-
"editor.restart_editor",
|
|
64
50
|
]);
|
|
65
51
|
/**
|
|
66
52
|
* The allow-listed actions that ANSWER the dialog rather than describe it.
|
|
@@ -86,11 +72,62 @@ export function oneLine(text, limit = 220) {
|
|
|
86
72
|
return flat;
|
|
87
73
|
return `${flat.slice(0, limit).trimEnd()} [continues below]`;
|
|
88
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* A blocking dialog, rendered for a person to read.
|
|
77
|
+
*
|
|
78
|
+
* Unreal flattens a Slate dialog into lines, so a save prompt arrives as its
|
|
79
|
+
* prompt, then the column headers, then one line per cell, then the button
|
|
80
|
+
* labels. Printed raw that is an unreadable run of paths. This pulls the asset
|
|
81
|
+
* rows back out and lays them in a table, and passes anything it does not
|
|
82
|
+
* recognise through untouched.
|
|
83
|
+
*/
|
|
84
|
+
export function renderDialog(dialog) {
|
|
85
|
+
const raw = dialog.message.split("\n").map((l) => l.trim()).filter((l) => l !== "");
|
|
86
|
+
const buttons = new Set(dialog.buttons.map((b) => b.trim()));
|
|
87
|
+
// The button labels are repeated at the end of the flattened text.
|
|
88
|
+
const body = raw.filter((l) => !buttons.has(l));
|
|
89
|
+
// An asset row is a name followed by two object paths: the package and the
|
|
90
|
+
// class. That shape is what makes a row findable without knowing the column
|
|
91
|
+
// count in advance.
|
|
92
|
+
const rows = [];
|
|
93
|
+
const consumed = new Set();
|
|
94
|
+
for (let i = 0; i + 2 < body.length; i++) {
|
|
95
|
+
// The THIRD cell has to be a class path. Without that the rule matched any
|
|
96
|
+
// sentence followed by two paths, so a prompt that merely lists packages
|
|
97
|
+
// had its own question eaten as if it were an asset name.
|
|
98
|
+
if (!body[i].startsWith("/") && body[i + 1].startsWith("/") && body[i + 2].startsWith("/Script/")) {
|
|
99
|
+
rows.push([body[i], body[i + 1], body[i + 2]]);
|
|
100
|
+
consumed.add(i).add(i + 1).add(i + 2);
|
|
101
|
+
i += 2;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
const HEADERS = ["Asset", "File", "Type"];
|
|
105
|
+
const prose = body.filter((l, i) => !consumed.has(i) && !HEADERS.includes(l));
|
|
106
|
+
const out = [];
|
|
107
|
+
if (prose.length > 0)
|
|
108
|
+
out.push(prose.join("\n"));
|
|
109
|
+
if (rows.length > 0) {
|
|
110
|
+
const cols = HEADERS.map((h, c) => Math.max(h.length, ...rows.map((r) => r[c].length)));
|
|
111
|
+
const line = (cells) => " " + cells.map((cell, c) => cell.padEnd(cols[c])).join(" ").trimEnd();
|
|
112
|
+
out.push("");
|
|
113
|
+
out.push(line(HEADERS));
|
|
114
|
+
out.push(line(cols.map((w) => "-".repeat(w))));
|
|
115
|
+
for (const r of rows)
|
|
116
|
+
out.push(line(r));
|
|
117
|
+
}
|
|
118
|
+
return out.join("\n");
|
|
119
|
+
}
|
|
89
120
|
/** True for the refusal the plugin's own gate emits. */
|
|
90
121
|
export function isDialogRefusal(v) {
|
|
91
122
|
return typeof v === "object" && v !== null
|
|
92
123
|
&& v.dialogBlocking === true;
|
|
93
124
|
}
|
|
125
|
+
/** Schema key for one tickable row. Kept in one place so both ends agree. */
|
|
126
|
+
function itemKey(index) {
|
|
127
|
+
return `item_${index}`;
|
|
128
|
+
}
|
|
129
|
+
/** Schema key for the multi-select holding every tickable row. */
|
|
130
|
+
const ITEMS_KEY = "items";
|
|
94
131
|
/** Read a dialog out of whatever shape reported it. */
|
|
95
132
|
function asDialog(v) {
|
|
96
133
|
if (typeof v !== "object" || v === null)
|
|
@@ -109,6 +146,9 @@ function asDialog(v) {
|
|
|
109
146
|
choices: Array.isArray(r.choices)
|
|
110
147
|
? r.choices
|
|
111
148
|
: [],
|
|
149
|
+
...(Array.isArray(r.items) && r.items.length > 0
|
|
150
|
+
? { items: r.items }
|
|
151
|
+
: {}),
|
|
112
152
|
};
|
|
113
153
|
}
|
|
114
154
|
/**
|
|
@@ -116,6 +156,9 @@ function asDialog(v) {
|
|
|
116
156
|
* flushes it on a timer while running, so anything older is a leftover.
|
|
117
157
|
*/
|
|
118
158
|
export const STATUS_STALE_AFTER_MS = 15_000;
|
|
159
|
+
/** How big a rendered dialog has to be before a form cannot carry it. */
|
|
160
|
+
const RELAY_OVER_LINES = 12;
|
|
161
|
+
const RELAY_OVER_CHARS = 700;
|
|
119
162
|
export class DialogGuard {
|
|
120
163
|
deps;
|
|
121
164
|
blocking = null;
|
|
@@ -289,20 +332,22 @@ export class DialogGuard {
|
|
|
289
332
|
* Asked of the live elicit function rather than stored, because the client is
|
|
290
333
|
* only knowable once one has connected and this guard outlives connections.
|
|
291
334
|
*/
|
|
292
|
-
needsRelay() {
|
|
293
|
-
return elicitationNeedsRelay(this.deps.elicit?.()?.client?.());
|
|
294
|
-
}
|
|
295
335
|
/**
|
|
296
|
-
*
|
|
336
|
+
* Whether the text has to go back before a form can carry it.
|
|
297
337
|
*
|
|
298
|
-
*
|
|
299
|
-
*
|
|
300
|
-
*
|
|
301
|
-
*
|
|
302
|
-
*
|
|
338
|
+
* Two conditions, not one. A client that collapses a long elicitation is
|
|
339
|
+
* only a problem when there IS a long elicitation: a save prompt renders as
|
|
340
|
+
* a line and a short table, which every client shows in full, and relaying
|
|
341
|
+
* that costs a round trip AND leaves raising the form to the agent, which is
|
|
342
|
+
* not something to depend on. So the form goes up on the first call unless
|
|
343
|
+
* the rendered block is genuinely too big for one.
|
|
303
344
|
*/
|
|
304
|
-
|
|
305
|
-
|
|
345
|
+
needsRelay(dialog) {
|
|
346
|
+
if (!elicitationNeedsRelay(this.deps.elicit?.()?.client?.()))
|
|
347
|
+
return false;
|
|
348
|
+
const rendered = renderDialog(dialog);
|
|
349
|
+
return rendered.split("\n").length > RELAY_OVER_LINES
|
|
350
|
+
|| rendered.length > RELAY_OVER_CHARS;
|
|
306
351
|
}
|
|
307
352
|
/**
|
|
308
353
|
* The decision about a dialog the caller ALREADY has, with no probe.
|
|
@@ -359,7 +404,7 @@ export class DialogGuard {
|
|
|
359
404
|
// and the default for one nobody has checked is to relay: the two failure
|
|
360
405
|
// modes are not equal.
|
|
361
406
|
const interactive = DialogGuard.effectiveMode(this.deps.mode(), this.canAsk(opts)) === "interactive";
|
|
362
|
-
if (interactive && this.needsRelay() && !this.told.has(identity)) {
|
|
407
|
+
if (interactive && this.needsRelay(dialog) && !this.told.has(identity)) {
|
|
363
408
|
this.told.add(identity);
|
|
364
409
|
return { allow: false, refusal: this.refusal(subject, dialog, opts, "relay") };
|
|
365
410
|
}
|
|
@@ -508,34 +553,83 @@ export class DialogGuard {
|
|
|
508
553
|
// button for a question they could not see. Nothing in the protocol asks a
|
|
509
554
|
// client for more room and there is no richer rendering to fall back on, so
|
|
510
555
|
// the title and the gist go first and the boilerplate goes last.
|
|
511
|
-
const
|
|
512
|
-
const
|
|
513
|
-
|
|
514
|
-
//
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
556
|
+
const rendered = renderDialog(dialog);
|
|
557
|
+
const body = rendered === "" ? "(no message text)" : rendered;
|
|
558
|
+
// No blank line between them. A client that keeps only the opening line or
|
|
559
|
+
// two must spend both on the title and the question, not one on padding.
|
|
560
|
+
const message = [
|
|
561
|
+
`Unreal is blocked: ${dialog.title === "" ? "(untitled dialog)" : dialog.title}`,
|
|
562
|
+
body,
|
|
563
|
+
];
|
|
518
564
|
message.push("", "Nothing else can run until this is answered, and nothing is pressed unless you choose it.");
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
565
|
+
// The rows the dialog lets a person tick, as ONE multi-select field.
|
|
566
|
+
//
|
|
567
|
+
// Save Content is N questions, not one, and "Save Selected" saves whatever
|
|
568
|
+
// is ticked. Offering the buttons alone made it all or nothing, so a person
|
|
569
|
+
// who wanted two of five files had no way to say so.
|
|
570
|
+
//
|
|
571
|
+
// One field, not a boolean per row. A client draws a multi-select as a
|
|
572
|
+
// checkbox group on the same screen as the buttons; a boolean per row is
|
|
573
|
+
// drawn by some clients as a page per asset, which on a save of forty files
|
|
574
|
+
// is forty pages before the button.
|
|
575
|
+
//
|
|
576
|
+
// Only rows carrying a path: the header's select-all box owns the column
|
|
577
|
+
// headings, and a row labelled "Asset" is not a question anybody asked.
|
|
578
|
+
const tickable = (dialog.items ?? []).filter((i) => i.cells.some((c) => c.startsWith("/")));
|
|
579
|
+
const button = {
|
|
580
|
+
type: "string",
|
|
581
|
+
title: "Button",
|
|
582
|
+
description: "The dialog's own buttons, in the order it lays them out.",
|
|
583
|
+
enum: [...dialog.buttons, LEAVE_OPEN],
|
|
584
|
+
};
|
|
585
|
+
const schemaWith = (itemProps) => ({
|
|
586
|
+
type: "object",
|
|
587
|
+
properties: { ...itemProps, button },
|
|
588
|
+
required: ["button"],
|
|
589
|
+
});
|
|
590
|
+
const itemTitle = (item) => item.label === "" ? `Item ${item.index}` : item.label;
|
|
591
|
+
const itemPath = (item) => item.cells.find((c) => c.startsWith("/")) ?? "";
|
|
592
|
+
const grouped = tickable.length === 0 ? {} : {
|
|
593
|
+
[ITEMS_KEY]: {
|
|
594
|
+
type: "array",
|
|
595
|
+
title: "Items",
|
|
596
|
+
description: "Ticked rows are what the dialog acts on.",
|
|
597
|
+
items: {
|
|
598
|
+
anyOf: tickable.map((item) => ({
|
|
599
|
+
const: itemKey(item.index),
|
|
600
|
+
title: `${itemTitle(item)} ${itemPath(item)}`,
|
|
601
|
+
})),
|
|
533
602
|
},
|
|
534
|
-
|
|
603
|
+
default: tickable.filter((item) => item.checked).map((item) => itemKey(item.index)),
|
|
604
|
+
},
|
|
605
|
+
};
|
|
606
|
+
// A boolean per row, for a client that refuses the multi-select. Array
|
|
607
|
+
// fields arrived in a later revision of the protocol than the form itself,
|
|
608
|
+
// and a refused form is otherwise never shown at all.
|
|
609
|
+
const perRow = {};
|
|
610
|
+
for (const item of tickable) {
|
|
611
|
+
perRow[itemKey(item.index)] = {
|
|
612
|
+
type: "boolean",
|
|
613
|
+
title: itemTitle(item),
|
|
614
|
+
description: itemPath(item),
|
|
615
|
+
default: item.checked,
|
|
616
|
+
};
|
|
617
|
+
}
|
|
618
|
+
let asked = "grouped";
|
|
619
|
+
try {
|
|
620
|
+
answer = await elicit({ message: message.join("\n"), requestedSchema: schemaWith(grouped) });
|
|
535
621
|
}
|
|
536
622
|
catch {
|
|
537
|
-
|
|
538
|
-
|
|
623
|
+
if (tickable.length === 0)
|
|
624
|
+
return { shown: false, press: null };
|
|
625
|
+
try {
|
|
626
|
+
asked = "perRow";
|
|
627
|
+
answer = await elicit({ message: message.join("\n"), requestedSchema: schemaWith(perRow) });
|
|
628
|
+
}
|
|
629
|
+
catch {
|
|
630
|
+
// The form never rendered. Not an answer, and not a used-up chance.
|
|
631
|
+
return { shown: false, press: null };
|
|
632
|
+
}
|
|
539
633
|
}
|
|
540
634
|
if (answer.action !== "accept")
|
|
541
635
|
return { shown: true, press: null };
|
|
@@ -555,7 +649,24 @@ export class DialogGuard {
|
|
|
555
649
|
// Collapsing the third into "not pressed" claims the editor is untouched
|
|
556
650
|
// when it may not be.
|
|
557
651
|
try {
|
|
558
|
-
|
|
652
|
+
// What the person ticked travels WITH the button. Sending it separately
|
|
653
|
+
// would leave a modal holding a selection nobody had pressed anything on.
|
|
654
|
+
//
|
|
655
|
+
// A grouped answer with no list at all leaves every row as the dialog
|
|
656
|
+
// had it. A client that drops a field it cannot draw would otherwise
|
|
657
|
+
// untick everything, and "Save Selected" would save nothing.
|
|
658
|
+
const picked = answer.content?.[ITEMS_KEY];
|
|
659
|
+
const selections = tickable.map((item) => ({
|
|
660
|
+
index: item.index,
|
|
661
|
+
checked: asked === "perRow"
|
|
662
|
+
? answer.content?.[itemKey(item.index)] === true
|
|
663
|
+
: Array.isArray(picked) ? picked.includes(itemKey(item.index)) : item.checked,
|
|
664
|
+
}));
|
|
665
|
+
// Called with ONE argument when there is nothing to tick, so a dialog
|
|
666
|
+
// that offers no items presses exactly as it always did.
|
|
667
|
+
const reply = selections.length > 0
|
|
668
|
+
? await this.deps.press(chosen, selections)
|
|
669
|
+
: await this.deps.press(chosen);
|
|
559
670
|
const r = typeof reply === "object" && reply !== null
|
|
560
671
|
? reply
|
|
561
672
|
: {};
|
|
@@ -850,7 +961,7 @@ export async function ensureGuard(session) {
|
|
|
850
961
|
const guard = guardFor(session, {
|
|
851
962
|
mode: () => resolveDialogMode({ projectDir: session.projectDir, canElicit: false }).mode,
|
|
852
963
|
probe: () => session.guarded.call("list_dialogs", {}),
|
|
853
|
-
press: (buttonLabel) => session.guarded.call("respond_to_dialog", { buttonLabel }),
|
|
964
|
+
press: (buttonLabel, items) => session.guarded.call("respond_to_dialog", { buttonLabel, ...(items ? { items } : {}) }),
|
|
854
965
|
isConnected: () => session.bridge.isConnected,
|
|
855
966
|
readSnapshot: () => {
|
|
856
967
|
const proj = session.project.projectPath ?? session.bridge.getTarget().projectPath ?? null;
|
package/dist/dialog-guard.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialog-guard.js","sourceRoot":"","sources":["../src/dialog-guard.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dialog-guard.js","sourceRoot":"","sources":["../src/dialog-guard.ts"],"names":[],"mappings":"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"}
|