@snutils/snu 0.2.12 → 0.3.1
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 -0
- package/dist/cli/format.d.ts.map +1 -1
- package/dist/cli/format.js +7 -1
- package/dist/cli/format.js.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +8 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/selfUpdate.d.ts +9 -0
- package/dist/cli/selfUpdate.d.ts.map +1 -1
- package/dist/cli/selfUpdate.js +14 -4
- package/dist/cli/selfUpdate.js.map +1 -1
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +3 -1
- package/dist/cli/setup.js.map +1 -1
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +12 -0
- package/dist/mcp/index.js.map +1 -1
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +63 -4
- package/dist/registry.js.map +1 -1
- package/dist/server/dispatcher.d.ts +11 -0
- package/dist/server/dispatcher.d.ts.map +1 -1
- package/dist/server/dispatcher.js +154 -10
- package/dist/server/dispatcher.js.map +1 -1
- package/dist/server/httpBridge.d.ts.map +1 -1
- package/dist/server/httpBridge.js +1 -0
- package/dist/server/httpBridge.js.map +1 -1
- package/dist/server/policy.d.ts.map +1 -1
- package/dist/server/policy.js +10 -1
- package/dist/server/policy.js.map +1 -1
- package/dist/server/wsBridge.d.ts +2 -0
- package/dist/server/wsBridge.d.ts.map +1 -1
- package/dist/server/wsBridge.js +32 -4
- package/dist/server/wsBridge.js.map +1 -1
- package/package.json +1 -1
package/dist/registry.js
CHANGED
|
@@ -440,9 +440,10 @@ exports.TOOLS = [
|
|
|
440
440
|
agentCommand: 'set_field',
|
|
441
441
|
description: 'Set a field value on the active ServiceNow form via g_form.setValue (triggers client scripts and UI policies).',
|
|
442
442
|
cliCommand: 'browser set',
|
|
443
|
-
cliUsage: 'snu browser set <field> <value> [--display-value <v>] [--url <u>] [--tab <id>] [--instance <i>] [--json]',
|
|
443
|
+
cliUsage: 'snu browser set <field> <value> [--display-value <v>] [--focus] [--url <u>] [--tab <id>] [--instance <i>] [--json]',
|
|
444
444
|
cliOptions: {
|
|
445
445
|
'display-value': { type: 'string', short: 'd', description: 'Display value for reference fields' },
|
|
446
|
+
focus: { type: 'boolean', description: 'Bring the browser tab to the front' },
|
|
446
447
|
url: { type: 'string', description: 'Target tab URL pattern' },
|
|
447
448
|
tab: { type: 'string', description: 'Browser tab ID' },
|
|
448
449
|
},
|
|
@@ -454,6 +455,7 @@ exports.TOOLS = [
|
|
|
454
455
|
displayValue: { type: 'string', description: 'Optional display value for reference fields' },
|
|
455
456
|
url: { type: 'string', description: 'Target tab URL pattern (optional)' },
|
|
456
457
|
tabId: { type: 'integer', description: 'Specific browser tab ID (optional)' },
|
|
458
|
+
focus: { type: 'boolean', default: false, description: 'Bring the browser tab to the front. By default the tab stays in the background so the user can keep working' },
|
|
457
459
|
instance: { type: 'string', description: 'Target instance name/folder (optional)' },
|
|
458
460
|
},
|
|
459
461
|
required: ['field', 'value'],
|
|
@@ -470,6 +472,7 @@ exports.TOOLS = [
|
|
|
470
472
|
displayValue: input.displayValue || input['display-value'],
|
|
471
473
|
url: input.url,
|
|
472
474
|
tabId,
|
|
475
|
+
focus: input.focus === true,
|
|
473
476
|
},
|
|
474
477
|
};
|
|
475
478
|
},
|
|
@@ -480,9 +483,10 @@ exports.TOOLS = [
|
|
|
480
483
|
agentCommand: 'run_ui_action',
|
|
481
484
|
description: 'Trigger a UI action on the form already open in the connected browser tab (e.g. "save", "submit", "sysverb_update"). This drives the live UI and is for exercising real form behaviour (client scripts, UI policies, business rules). It is NOT the way to create or update records as data: use snu_create_record and snu_update_record, which write through the REST API and are far more reliable.',
|
|
482
485
|
cliCommand: 'browser action',
|
|
483
|
-
cliUsage: 'snu browser action <action> [--no-suppress-dialogs] [--url <u>] [--tab <id>] [--instance <i>] [--json]',
|
|
486
|
+
cliUsage: 'snu browser action <action> [--no-suppress-dialogs] [--focus] [--url <u>] [--tab <id>] [--instance <i>] [--json]',
|
|
484
487
|
cliOptions: {
|
|
485
488
|
'no-suppress-dialogs': { type: 'boolean', description: 'Do not auto-confirm browser dialogs' },
|
|
489
|
+
focus: { type: 'boolean', description: 'Bring the browser tab to the front' },
|
|
486
490
|
url: { type: 'string', description: 'Target tab URL pattern' },
|
|
487
491
|
tab: { type: 'string', description: 'Browser tab ID' },
|
|
488
492
|
},
|
|
@@ -493,6 +497,7 @@ exports.TOOLS = [
|
|
|
493
497
|
suppressDialogs: { type: 'boolean', default: true, description: 'Auto-confirm browser dialogs' },
|
|
494
498
|
url: { type: 'string', description: 'Target tab URL pattern (optional)' },
|
|
495
499
|
tabId: { type: 'integer', description: 'Specific browser tab ID (optional)' },
|
|
500
|
+
focus: { type: 'boolean', default: false, description: 'Bring the browser tab to the front. By default the tab stays in the background so the user can keep working' },
|
|
496
501
|
instance: { type: 'string', description: 'Target instance name/folder (optional)' },
|
|
497
502
|
},
|
|
498
503
|
required: ['uiAction'],
|
|
@@ -509,6 +514,7 @@ exports.TOOLS = [
|
|
|
509
514
|
suppressDialogs: suppress,
|
|
510
515
|
url: input.url,
|
|
511
516
|
tabId,
|
|
517
|
+
focus: input.focus === true,
|
|
512
518
|
},
|
|
513
519
|
};
|
|
514
520
|
},
|
|
@@ -519,9 +525,10 @@ exports.TOOLS = [
|
|
|
519
525
|
agentCommand: 'navigate',
|
|
520
526
|
description: 'Navigate connected ServiceNow browser tab to a URL and wait for page load to finish.',
|
|
521
527
|
cliCommand: 'browser nav',
|
|
522
|
-
cliUsage: 'snu browser nav <url> [--new-tab] [--no-wait] [--instance <i>] [--json]',
|
|
528
|
+
cliUsage: 'snu browser nav <url> [--new-tab] [--no-wait] [--focus] [--instance <i>] [--json]',
|
|
523
529
|
cliOptions: {
|
|
524
530
|
'new-tab': { type: 'boolean', short: 'n', description: 'Open in new tab' },
|
|
531
|
+
focus: { type: 'boolean', description: 'Bring the browser tab to the front' },
|
|
525
532
|
'no-wait': { type: 'boolean', description: 'Do not wait for page load' },
|
|
526
533
|
'no-discard-unsaved': { type: 'boolean', description: 'Do not bypass unsaved changes warnings' },
|
|
527
534
|
tab: { type: 'string', description: 'Browser tab ID' },
|
|
@@ -534,6 +541,7 @@ exports.TOOLS = [
|
|
|
534
541
|
newTab: { type: 'boolean', default: false, description: 'Open in a new tab instead of active tab' },
|
|
535
542
|
waitForLoad: { type: 'boolean', default: true, description: 'Wait for page load event before returning' },
|
|
536
543
|
discardUnsaved: { type: 'boolean', default: true, description: 'Bypass unsaved changes warnings' },
|
|
544
|
+
focus: { type: 'boolean', default: false, description: 'Bring the browser tab to the front. By default the tab stays in the background so the user can keep working' },
|
|
537
545
|
instance: { type: 'string', description: 'Target instance name/folder (optional)' },
|
|
538
546
|
},
|
|
539
547
|
required: ['url'],
|
|
@@ -550,6 +558,7 @@ exports.TOOLS = [
|
|
|
550
558
|
newTab: input.newTab === true || input['new-tab'] === true,
|
|
551
559
|
waitForLoad: input.waitForLoad !== false && input['no-wait'] !== true,
|
|
552
560
|
discardUnsaved: input.discardUnsaved !== false && input['no-discard-unsaved'] !== true,
|
|
561
|
+
focus: input.focus === true,
|
|
553
562
|
},
|
|
554
563
|
};
|
|
555
564
|
},
|
|
@@ -560,8 +569,9 @@ exports.TOOLS = [
|
|
|
560
569
|
agentCommand: 'take_screenshot',
|
|
561
570
|
description: 'Capture a screenshot of a ServiceNow page tab (auto-routes between standard capture and debugger if available). Saves under workspace screenshots/.',
|
|
562
571
|
cliCommand: 'screenshot',
|
|
563
|
-
cliUsage: 'snu screenshot [--url <u>] [--tab <id>] [--file <name>] [--exact] [--instance <i>] [--json]',
|
|
572
|
+
cliUsage: 'snu screenshot [--url <u>] [--tab <id>] [--file <name>] [--exact] [--focus] [--instance <i>] [--json]',
|
|
564
573
|
cliOptions: {
|
|
574
|
+
focus: { type: 'boolean', description: 'Leave the captured tab in front instead of switching back' },
|
|
565
575
|
url: { type: 'string', short: 'u', description: 'URL pattern of tab to capture' },
|
|
566
576
|
tab: { type: 'string', short: 't', description: 'Tab ID to capture' },
|
|
567
577
|
file: { type: 'string', short: 'f', description: 'Custom PNG filename' },
|
|
@@ -574,6 +584,7 @@ exports.TOOLS = [
|
|
|
574
584
|
tabId: { type: 'integer', description: 'Specific tab ID to capture' },
|
|
575
585
|
fileName: { type: 'string', description: 'Optional custom filename (defaults to timestamped PNG)' },
|
|
576
586
|
exactUrl: { type: 'boolean', default: false, description: 'Require exact URL match' },
|
|
587
|
+
focus: { type: 'boolean', default: false, description: 'Leave the captured tab in front afterwards. By default the capture switches back to the tab the user had open' },
|
|
577
588
|
instance: { type: 'string', description: 'Target instance name/folder (optional)' },
|
|
578
589
|
},
|
|
579
590
|
anyOf: [{ required: ['url'] }, { required: ['tabId'] }],
|
|
@@ -589,6 +600,7 @@ exports.TOOLS = [
|
|
|
589
600
|
tabId,
|
|
590
601
|
fileName: input.fileName || input.file,
|
|
591
602
|
exactUrl: input.exactUrl === true || input.exact === true,
|
|
603
|
+
focus: input.focus === true,
|
|
592
604
|
},
|
|
593
605
|
};
|
|
594
606
|
},
|
|
@@ -709,6 +721,53 @@ exports.TOOLS = [
|
|
|
709
721
|
};
|
|
710
722
|
},
|
|
711
723
|
},
|
|
724
|
+
// 17. Switch Context (update set / application scope / domain)
|
|
725
|
+
{
|
|
726
|
+
name: 'snu_switch_context',
|
|
727
|
+
agentCommand: 'switch_context',
|
|
728
|
+
description: "Switch the browser session's current update set, application scope or domain by sys_id. Uses the same picker API as the ServiceNow header (no form driving), so use it before snu_create_artifact or snu_update_record to make sure changes are captured in the right update set and application. Find the sys_id first with snu_query_records on sys_update_set, sys_scope or domain. One open ServiceNow tab is reloaded afterwards unless reloadTab is false.",
|
|
729
|
+
cliCommand: 'switch',
|
|
730
|
+
cliUsage: 'snu switch <updateset|application|domain> <sys_id> [--no-reload] [--tab-url <pattern>] [--instance <i>] [--json]',
|
|
731
|
+
cliOptions: {
|
|
732
|
+
'no-reload': { type: 'boolean', description: 'Do not reload a ServiceNow tab after switching' },
|
|
733
|
+
'tab-url': { type: 'string', description: 'URL pattern of the tab to reload (default: https://*.service-now.com/*)' },
|
|
734
|
+
},
|
|
735
|
+
inputSchema: {
|
|
736
|
+
type: 'object',
|
|
737
|
+
properties: {
|
|
738
|
+
switchType: { type: 'string', enum: ['updateset', 'application', 'domain'], description: 'What to switch: updateset, application (scope) or domain' },
|
|
739
|
+
value: { type: 'string', description: 'sys_id of the target update set, application (sys_scope) or domain' },
|
|
740
|
+
reloadTab: { type: 'boolean', default: true, description: 'Reload one open ServiceNow tab afterwards so the header reflects the change' },
|
|
741
|
+
tabUrl: { type: 'string', description: 'URL pattern of the tab to reload (default: https://*.service-now.com/*)' },
|
|
742
|
+
instance: { type: 'string', description: 'Target instance name/folder (optional)' },
|
|
743
|
+
},
|
|
744
|
+
required: ['switchType', 'value'],
|
|
745
|
+
additionalProperties: false,
|
|
746
|
+
},
|
|
747
|
+
mapInput: (input) => {
|
|
748
|
+
let switchType = String(input.switchType || input.type || '').trim().toLowerCase();
|
|
749
|
+
if (switchType === 'app' || switchType === 'scope')
|
|
750
|
+
switchType = 'application';
|
|
751
|
+
if (switchType === 'update_set' || switchType === 'update-set')
|
|
752
|
+
switchType = 'updateset';
|
|
753
|
+
if (!['updateset', 'application', 'domain'].includes(switchType)) {
|
|
754
|
+
throw new Error('Invalid switchType. Must be one of: updateset, application, domain');
|
|
755
|
+
}
|
|
756
|
+
const value = String(input.value ?? input.sysId ?? input.sys_id ?? '').trim();
|
|
757
|
+
if (!value)
|
|
758
|
+
throw new Error('Missing required value: the sys_id of the update set, application or domain');
|
|
759
|
+
return {
|
|
760
|
+
command: 'switch_context',
|
|
761
|
+
instance: input.instance,
|
|
762
|
+
params: {
|
|
763
|
+
switchType,
|
|
764
|
+
value,
|
|
765
|
+
reloadTab: input.reloadTab !== false && input['no-reload'] !== true,
|
|
766
|
+
tabUrl: input.tabUrl || input['tab-url'] || undefined,
|
|
767
|
+
},
|
|
768
|
+
};
|
|
769
|
+
},
|
|
770
|
+
},
|
|
712
771
|
];
|
|
713
772
|
const toolMap = new Map();
|
|
714
773
|
const cliMap = new Map();
|
package/dist/registry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,14 @@ import { StandaloneWsBridge } from './wsBridge.js';
|
|
|
2
2
|
import { PendingRegistry } from './pendingRegistry.js';
|
|
3
3
|
import { AgentRequest, AgentResponse } from '../types.js';
|
|
4
4
|
import { SecurityGates } from './policy.js';
|
|
5
|
+
export declare const BROWSER_ACTIONS: {
|
|
6
|
+
readonly get_form_state: "agentGetFormState";
|
|
7
|
+
readonly set_field: "agentSetField";
|
|
8
|
+
readonly run_ui_action: "agentRunUiAction";
|
|
9
|
+
readonly navigate: "agentNavigate";
|
|
10
|
+
readonly take_screenshot: "takeScreenshot";
|
|
11
|
+
readonly switch_context: "switchContext";
|
|
12
|
+
};
|
|
5
13
|
export declare const HELPER_CONNECT_GUIDANCE: string[];
|
|
6
14
|
export declare function resolveMappedFileName(mapPath: string, rawName: string, sysId: string): {
|
|
7
15
|
cleanName: string;
|
|
@@ -22,6 +30,8 @@ export declare class StandaloneDispatcher {
|
|
|
22
30
|
private pending;
|
|
23
31
|
private config;
|
|
24
32
|
private pendingReviewRequests;
|
|
33
|
+
/** Pause before the single retry after E_SCREENSHOT_PERMISSION; tests shorten it. */
|
|
34
|
+
screenshotRetryDelayMs: number;
|
|
25
35
|
private requestIdToCorrelationId;
|
|
26
36
|
constructor(opts: StandaloneDispatcherOptions);
|
|
27
37
|
getWorkspaceRoot(): string;
|
|
@@ -47,6 +57,7 @@ export declare class StandaloneDispatcher {
|
|
|
47
57
|
settings: any;
|
|
48
58
|
};
|
|
49
59
|
cancel(requestId: string, reason?: string): void;
|
|
60
|
+
private captureScreenshot;
|
|
50
61
|
dispatch(req: AgentRequest): Promise<AgentResponse>;
|
|
51
62
|
}
|
|
52
63
|
//# sourceMappingURL=dispatcher.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dispatcher.d.ts","sourceRoot":"","sources":["../../src/server/dispatcher.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAA0B,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAoB,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"dispatcher.d.ts","sourceRoot":"","sources":["../../src/server/dispatcher.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAA0B,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAoB,aAAa,EAAE,MAAM,aAAa,CAAC;AAc9D,eAAO,MAAM,eAAe;;;;;;;CAOlB,CAAC;AAmDX,eAAO,MAAM,uBAAuB,UAInC,CAAC;AAwGF,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAoBxE;AAwBD,MAAM,WAAW,2BAA2B;IAC1C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC,aAAa,GAAG;QAAE,cAAc,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CAClE;AAED,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,EAAE,CAAqB;IAC/B,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,qBAAqB,CAA6B;IAC1D,qFAAqF;IACrF,sBAAsB,SAAU;IAChC,OAAO,CAAC,wBAAwB,CAA6B;gBAEjD,IAAI,EAAE,2BAA2B;IAO7C,gBAAgB,IAAI,MAAM;IAI1B,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,GAAG;IAkBxC,sBAAsB,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;YAyDvC,yBAAyB;YAiDzB,sBAAsB;IA4BpC;;;;;;;OAOG;YACW,qBAAqB;IAmCnC,mBAAmB,IAAI,MAAM,EAAE;YAgBjB,aAAa;YAwKb,OAAO;IAoBrB,eAAe,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,GAAG,CAAA;KAAE;IAuF1F,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,SAAc,GAAG,IAAI;YAoBvC,iBAAiB;IA6EzB,QAAQ,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC;CAg/B1D"}
|
|
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.StandaloneDispatcher = exports.HELPER_CONNECT_GUIDANCE = void 0;
|
|
36
|
+
exports.StandaloneDispatcher = exports.HELPER_CONNECT_GUIDANCE = exports.BROWSER_ACTIONS = void 0;
|
|
37
37
|
exports.resolveMappedFileName = resolveMappedFileName;
|
|
38
38
|
const authProbe_js_1 = require("./authProbe.js");
|
|
39
39
|
const scopeDiscovery_js_1 = require("./scopeDiscovery.js");
|
|
@@ -48,6 +48,27 @@ const canonical_js_1 = require("./canonical.js");
|
|
|
48
48
|
const types_js_1 = require("../types.js");
|
|
49
49
|
const scopeResolver_js_1 = require("./scopeResolver.js");
|
|
50
50
|
const FOLDERRECORDTABLES = ['sp_widget', 'sp_header_footer', 'sys_ui_page'];
|
|
51
|
+
// Helper tab action names this host sends for the browser-relayed commands.
|
|
52
|
+
// The helper tab dispatches on the exact string and drops an unknown action
|
|
53
|
+
// without answering, so a wrong name here only ever surfaces as E_TIMEOUT
|
|
54
|
+
// 70 seconds later (take_screenshot shipped as 'agentTakeScreenshot' and never
|
|
55
|
+
// worked in standalone mode). Keep in step with the dispatch chain in the
|
|
56
|
+
// extension's scriptsync.js; browserRelay.test.ts pins these values.
|
|
57
|
+
exports.BROWSER_ACTIONS = {
|
|
58
|
+
get_form_state: 'agentGetFormState',
|
|
59
|
+
set_field: 'agentSetField',
|
|
60
|
+
run_ui_action: 'agentRunUiAction',
|
|
61
|
+
navigate: 'agentNavigate',
|
|
62
|
+
take_screenshot: 'takeScreenshot',
|
|
63
|
+
switch_context: 'switchContext',
|
|
64
|
+
};
|
|
65
|
+
const SWITCH_CONTEXT_TYPES = ['updateset', 'application', 'domain'];
|
|
66
|
+
const SWITCH_CONTEXT_ALIASES = {
|
|
67
|
+
app: 'application',
|
|
68
|
+
scope: 'application',
|
|
69
|
+
update_set: 'updateset',
|
|
70
|
+
'update-set': 'updateset',
|
|
71
|
+
};
|
|
51
72
|
// Human labels + the environment variable each gate is *actually* read from in
|
|
52
73
|
// config.ts. Deriving the variable name from the camelCase gate key produces
|
|
53
74
|
// SNU_ALLOW_RESTREQUEST, which nothing reads, so an agent told to set it hits
|
|
@@ -253,6 +274,8 @@ class StandaloneDispatcher {
|
|
|
253
274
|
pending;
|
|
254
275
|
config;
|
|
255
276
|
pendingReviewRequests = new Map(); // correlationId/requestId -> reviewId
|
|
277
|
+
/** Pause before the single retry after E_SCREENSHOT_PERMISSION; tests shorten it. */
|
|
278
|
+
screenshotRetryDelayMs = 10_000;
|
|
256
279
|
requestIdToCorrelationId = new Map(); // requestId -> correlationId
|
|
257
280
|
constructor(opts) {
|
|
258
281
|
this.cwd = opts.cwd || process.cwd();
|
|
@@ -739,6 +762,88 @@ class StandaloneDispatcher {
|
|
|
739
762
|
this.pending.cancel(requestId, reason);
|
|
740
763
|
this.requestIdToCorrelationId.delete(requestId);
|
|
741
764
|
}
|
|
765
|
+
// Screenshot round trip, mirroring the VS Code host: the helper answers a
|
|
766
|
+
// takeScreenshot with base64 PNG data and this side writes the file under
|
|
767
|
+
// <workspace>/screenshots. allowDebugger carries the user's browserDebugger
|
|
768
|
+
// gate so a tab without an activeTab grant can be captured through the
|
|
769
|
+
// Chrome debugger (Debug edition + Pro; the helper re-checks both). Without
|
|
770
|
+
// it, or when the debugger path is not available, the helper asks for the
|
|
771
|
+
// extension-icon click and this side retries once after a pause.
|
|
772
|
+
async captureScreenshot(req, correlationId) {
|
|
773
|
+
const timestamp = new Date().toISOString().replace(/[:.]/g, '-').slice(0, 19);
|
|
774
|
+
let fileName = typeof req.params?.fileName === 'string' && req.params.fileName.trim()
|
|
775
|
+
? req.params.fileName.trim()
|
|
776
|
+
: `screenshot_${timestamp}.png`;
|
|
777
|
+
if (!/\.png$/i.test(fileName))
|
|
778
|
+
fileName += '.png';
|
|
779
|
+
const savePath = safeJoinUnderRoot(this.cwd, 'screenshots', fileName);
|
|
780
|
+
const request = async (id, tabId) => {
|
|
781
|
+
const pendingPromise = this.pending.register({ id, command: req.command, timeoutMs: 70_000 });
|
|
782
|
+
this.ws.sendToBrowser({
|
|
783
|
+
action: exports.BROWSER_ACTIONS.take_screenshot,
|
|
784
|
+
agentRequestId: id,
|
|
785
|
+
url: req.params?.url,
|
|
786
|
+
tabId,
|
|
787
|
+
exactUrl: req.params?.exactUrl === true,
|
|
788
|
+
focus: req.params?.focus === true,
|
|
789
|
+
fileName,
|
|
790
|
+
savePath,
|
|
791
|
+
allowDebugger: this.config.gates.browserDebugger === true,
|
|
792
|
+
appName: 'SN Utils CLI',
|
|
793
|
+
});
|
|
794
|
+
try {
|
|
795
|
+
return await pendingPromise;
|
|
796
|
+
}
|
|
797
|
+
catch (err) {
|
|
798
|
+
// The bridge rejects a failed helper reply; a permission refusal is
|
|
799
|
+
// handled here (retry), so hand it back as a plain result.
|
|
800
|
+
if (err?.code === 'E_SCREENSHOT_PERMISSION') {
|
|
801
|
+
return {
|
|
802
|
+
success: false,
|
|
803
|
+
code: err.code,
|
|
804
|
+
error: err.message,
|
|
805
|
+
tabId: err.details?.tabId,
|
|
806
|
+
tabUrl: err.details?.tabUrl,
|
|
807
|
+
cdpFallbackAvailable: err.details?.cdpFallbackAvailable,
|
|
808
|
+
};
|
|
809
|
+
}
|
|
810
|
+
throw err;
|
|
811
|
+
}
|
|
812
|
+
};
|
|
813
|
+
let res = await request(correlationId, req.params?.tabId);
|
|
814
|
+
if (res?.code === 'E_SCREENSHOT_PERMISSION') {
|
|
815
|
+
// Give the user time to click the extension icon on the tab, then retry
|
|
816
|
+
// once on the tab the helper named.
|
|
817
|
+
await new Promise((resolve) => setTimeout(resolve, this.screenshotRetryDelayMs));
|
|
818
|
+
if (!this.ws.hasBrowserClient()) {
|
|
819
|
+
throw Object.assign(new Error('Browser helper disconnected while waiting for screenshot permission.'), { code: 'E_BROWSER_DISCONNECTED' });
|
|
820
|
+
}
|
|
821
|
+
res = await request(`${correlationId}_retry`, res.tabId ?? req.params?.tabId);
|
|
822
|
+
}
|
|
823
|
+
if (res?.code === 'E_SCREENSHOT_PERMISSION') {
|
|
824
|
+
throw Object.assign(new Error(res.error || 'Browser denied the screenshot (tab not capturable / permission).'), {
|
|
825
|
+
code: 'E_SCREENSHOT_PERMISSION',
|
|
826
|
+
details: { tabId: res.tabId, tabUrl: res.tabUrl, cdpFallbackAvailable: res.cdpFallbackAvailable === true },
|
|
827
|
+
});
|
|
828
|
+
}
|
|
829
|
+
if (res?.success === false) {
|
|
830
|
+
throw Object.assign(new Error(res.error || 'Screenshot failed'), { code: res.code || 'E_COMMAND_FAILED' });
|
|
831
|
+
}
|
|
832
|
+
if (typeof res?.imageData !== 'string' || !res.imageData) {
|
|
833
|
+
throw Object.assign(new Error('No image data received from browser'), { code: 'E_INTERNAL' });
|
|
834
|
+
}
|
|
835
|
+
fs.mkdirSync(path.dirname(savePath), { recursive: true });
|
|
836
|
+
fs.writeFileSync(savePath, Buffer.from(res.imageData, 'base64'));
|
|
837
|
+
return {
|
|
838
|
+
saved: true,
|
|
839
|
+
filePath: savePath,
|
|
840
|
+
fileName,
|
|
841
|
+
url: res.url || res.tabUrl || req.params?.url,
|
|
842
|
+
tabId: res.tabId ?? req.params?.tabId,
|
|
843
|
+
tabTitle: res.tabTitle,
|
|
844
|
+
capturedVia: res.capturedVia || 'activeTab',
|
|
845
|
+
};
|
|
846
|
+
}
|
|
742
847
|
async dispatch(req) {
|
|
743
848
|
const correlationId = `snu_req_${req.id}_${Date.now()}`;
|
|
744
849
|
this.requestIdToCorrelationId.set(req.id, correlationId);
|
|
@@ -1620,16 +1725,55 @@ class StandaloneDispatcher {
|
|
|
1620
1725
|
result: { status: res.status, data: res.data },
|
|
1621
1726
|
};
|
|
1622
1727
|
}
|
|
1623
|
-
|
|
1624
|
-
|
|
1625
|
-
|
|
1626
|
-
|
|
1627
|
-
|
|
1628
|
-
|
|
1629
|
-
|
|
1630
|
-
|
|
1728
|
+
if (req.command === 'take_screenshot') {
|
|
1729
|
+
const result = await this.captureScreenshot(req, correlationId);
|
|
1730
|
+
return { id: req.id, command: req.command, status: 'success', timestamp: Date.now(), result };
|
|
1731
|
+
}
|
|
1732
|
+
// Session context switch: the helper PUTs to the same concourse picker
|
|
1733
|
+
// endpoint the header pickers use, so no form is driven. Needs the
|
|
1734
|
+
// instance session (url + g_ck), which is why it is not in the generic
|
|
1735
|
+
// browser relay below.
|
|
1736
|
+
if (req.command === 'switch_context') {
|
|
1737
|
+
const rawType = String(req.params?.switchType || '').trim().toLowerCase();
|
|
1738
|
+
const switchType = SWITCH_CONTEXT_ALIASES[rawType] || rawType;
|
|
1739
|
+
if (!SWITCH_CONTEXT_TYPES.includes(switchType)) {
|
|
1740
|
+
throw Object.assign(new Error(`Missing or invalid switchType. Must be one of: ${SWITCH_CONTEXT_TYPES.join(', ')}`), { code: 'E_INVALID_PARAMS' });
|
|
1741
|
+
}
|
|
1742
|
+
const value = String(req.params?.value ?? req.params?.sysId ?? req.params?.sys_id ?? '').trim();
|
|
1743
|
+
if (!value || /[\s\0]/.test(value)) {
|
|
1744
|
+
throw Object.assign(new Error('Missing required param: value (sys_id of the update set, application or domain)'), { code: 'E_INVALID_PARAMS' });
|
|
1745
|
+
}
|
|
1746
|
+
const pendingPromise = this.pending.register({ id: correlationId, command: req.command, timeoutMs: 70_000 });
|
|
1747
|
+
this.ws.sendToBrowser({
|
|
1748
|
+
action: exports.BROWSER_ACTIONS.switch_context,
|
|
1749
|
+
agentRequestId: correlationId,
|
|
1750
|
+
switchType,
|
|
1751
|
+
value,
|
|
1752
|
+
reloadTab: req.params?.reloadTab !== false,
|
|
1753
|
+
tabUrl: typeof req.params?.tabUrl === 'string' && req.params.tabUrl ? req.params.tabUrl : 'https://*.service-now.com/*',
|
|
1754
|
+
instance: inst.settings,
|
|
1755
|
+
appName: 'SN Utils CLI',
|
|
1756
|
+
});
|
|
1757
|
+
const res = await pendingPromise;
|
|
1758
|
+
if (res?.success === false) {
|
|
1759
|
+
throw Object.assign(new Error(res.error || `Could not switch ${switchType}`), { code: res.code || 'E_COMMAND_FAILED' });
|
|
1760
|
+
}
|
|
1761
|
+
return {
|
|
1762
|
+
id: req.id,
|
|
1763
|
+
command: req.command,
|
|
1764
|
+
status: 'success',
|
|
1765
|
+
timestamp: Date.now(),
|
|
1766
|
+
result: {
|
|
1767
|
+
switched: true,
|
|
1768
|
+
switchType: res?.switchType || switchType,
|
|
1769
|
+
value: res?.value || value,
|
|
1770
|
+
reloaded: res?.reloaded === true,
|
|
1771
|
+
},
|
|
1631
1772
|
};
|
|
1632
|
-
|
|
1773
|
+
}
|
|
1774
|
+
// Browser Form & UI Actions
|
|
1775
|
+
if (['get_form_state', 'set_field', 'run_ui_action', 'navigate'].includes(req.command)) {
|
|
1776
|
+
const action = exports.BROWSER_ACTIONS[req.command];
|
|
1633
1777
|
const pendingPromise = this.pending.register({ id: correlationId, command: req.command, timeoutMs: 70_000 });
|
|
1634
1778
|
this.ws.sendToBrowser({
|
|
1635
1779
|
action,
|