@ai-support-agent/cli 0.0.23-beta.1 → 0.0.23-beta.3

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.
Files changed (32) hide show
  1. package/dist/browser/browser-local-server.d.ts +2 -0
  2. package/dist/browser/browser-local-server.d.ts.map +1 -1
  3. package/dist/browser/browser-local-server.js +55 -7
  4. package/dist/browser/browser-local-server.js.map +1 -1
  5. package/dist/browser/browser-script-executor.d.ts +28 -0
  6. package/dist/browser/browser-script-executor.d.ts.map +1 -0
  7. package/dist/browser/browser-script-executor.js +173 -0
  8. package/dist/browser/browser-script-executor.js.map +1 -0
  9. package/dist/commands/claude-code-stream.d.ts +7 -1
  10. package/dist/commands/claude-code-stream.d.ts.map +1 -1
  11. package/dist/commands/claude-code-stream.js +21 -1
  12. package/dist/commands/claude-code-stream.js.map +1 -1
  13. package/dist/mcp/tools/browser/browser-proxy-session.d.ts +6 -0
  14. package/dist/mcp/tools/browser/browser-proxy-session.d.ts.map +1 -1
  15. package/dist/mcp/tools/browser/browser-proxy-session.js +15 -0
  16. package/dist/mcp/tools/browser/browser-proxy-session.js.map +1 -1
  17. package/dist/mcp/tools/browser/browser-session.d.ts +17 -1
  18. package/dist/mcp/tools/browser/browser-session.d.ts.map +1 -1
  19. package/dist/mcp/tools/browser/browser-session.js +83 -4
  20. package/dist/mcp/tools/browser/browser-session.js.map +1 -1
  21. package/dist/mcp/tools/browser/device-presets.d.ts +8 -0
  22. package/dist/mcp/tools/browser/device-presets.d.ts.map +1 -0
  23. package/dist/mcp/tools/browser/device-presets.js +36 -0
  24. package/dist/mcp/tools/browser/device-presets.js.map +1 -0
  25. package/dist/mcp/tools/browser.d.ts.map +1 -1
  26. package/dist/mcp/tools/browser.js +56 -7
  27. package/dist/mcp/tools/browser.js.map +1 -1
  28. package/dist/vscode/vscode-tunnel-websocket.d.ts +18 -2
  29. package/dist/vscode/vscode-tunnel-websocket.d.ts.map +1 -1
  30. package/dist/vscode/vscode-tunnel-websocket.js +41 -1
  31. package/dist/vscode/vscode-tunnel-websocket.js.map +1 -1
  32. package/package.json +1 -1
@@ -44,11 +44,13 @@ export declare class BrowserLocalServer {
44
44
  private handleClick;
45
45
  private handleFill;
46
46
  private handleGetText;
47
+ private handleExtract;
47
48
  private handleScreenshot;
48
49
  private handleGetUrl;
49
50
  private handleGetTitle;
50
51
  private handleGetVariable;
51
52
  private handleSetVariable;
53
+ private handleExecuteScript;
52
54
  private handleListVariables;
53
55
  }
54
56
  //# sourceMappingURL=browser-local-server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser-local-server.d.ts","sourceRoot":"","sources":["../../src/browser/browser-local-server.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAA;AAGpF,6CAA6C;AAC7C,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;CACzF;AAED,qBAAa,kBAAkB;IAKjB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAJ3C,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,IAAI,CAAI;IAChB,WAAW,EAAE,CAAC,CAAC,YAAY,EAAE,qBAAqB,KAAK,IAAI,CAAC,GAAG,IAAI,CAAO;gBAE7C,cAAc,EAAE,qBAAqB;IAElE;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IA0B9B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAc3B;;OAEG;IACH,OAAO,IAAI,MAAM;YAIH,aAAa;IAsE3B;;OAEG;IAEH,OAAO,CAAC,aAAa;YAWP,cAAc;YAmCd,WAAW;YAiCX,UAAU;YAuBV,aAAa;YAUb,gBAAgB;IAO9B,OAAO,CAAC,YAAY;YAKN,cAAc;IAM5B,OAAO,CAAC,iBAAiB;YAUX,iBAAiB;IAY/B,OAAO,CAAC,mBAAmB;CAI5B"}
1
+ {"version":3,"file":"browser-local-server.d.ts","sourceRoot":"","sources":["../../src/browser/browser-local-server.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAA;AAIpF,6CAA6C;AAC7C,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;CACzF;AAED,qBAAa,kBAAkB;IAKjB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAJ3C,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,IAAI,CAAI;IAChB,WAAW,EAAE,CAAC,CAAC,YAAY,EAAE,qBAAqB,KAAK,IAAI,CAAC,GAAG,IAAI,CAAO;gBAE7C,cAAc,EAAE,qBAAqB;IAElE;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IA0B9B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAc3B;;OAEG;IACH,OAAO,IAAI,MAAM;YAIH,aAAa;IA4E3B;;OAEG;IAEH,OAAO,CAAC,aAAa;YAWP,cAAc;YAmCd,WAAW;YAiCX,UAAU;YAuBV,aAAa;YAab,aAAa;YAuBb,gBAAgB;IAO9B,OAAO,CAAC,YAAY;YAKN,cAAc;IAM5B,OAAO,CAAC,iBAAiB;YAWX,iBAAiB;YAajB,mBAAmB;IAqBjC,OAAO,CAAC,mBAAmB;CAI5B"}
@@ -14,6 +14,7 @@ exports.BrowserLocalServer = void 0;
14
14
  const http_1 = __importDefault(require("http"));
15
15
  const logger_1 = require("../logger");
16
16
  const browser_security_1 = require("../mcp/tools/browser/browser-security");
17
+ const browser_script_executor_1 = require("./browser-script-executor");
17
18
  class BrowserLocalServer {
18
19
  sessionManager;
19
20
  server = null;
@@ -101,7 +102,10 @@ class BrowserLocalServer {
101
102
  await this.handleFill(res, sessionId, session, params);
102
103
  break;
103
104
  case 'get-text':
104
- await this.handleGetText(res, session, params);
105
+ await this.handleGetText(res, sessionId, session, params);
106
+ break;
107
+ case 'extract':
108
+ await this.handleExtract(res, sessionId, session, params);
105
109
  break;
106
110
  case 'screenshot':
107
111
  await this.handleScreenshot(res, session, params);
@@ -116,20 +120,23 @@ class BrowserLocalServer {
116
120
  if (req.method === 'GET') {
117
121
  const varName = segments[3];
118
122
  if (varName) {
119
- this.handleGetVariable(res, session, varName);
123
+ this.handleGetVariable(res, sessionId, session, varName);
120
124
  }
121
125
  else {
122
126
  sendJson(res, 400, { error: 'Missing variable name' });
123
127
  }
124
128
  }
125
129
  else {
126
- await this.handleSetVariable(res, session, params);
130
+ await this.handleSetVariable(res, sessionId, session, params);
127
131
  }
128
132
  break;
129
133
  }
130
134
  case 'variables':
131
135
  this.handleListVariables(res, session);
132
136
  break;
137
+ case 'execute-script':
138
+ await this.handleExecuteScript(res, sessionId, session, params);
139
+ break;
133
140
  default:
134
141
  sendJson(res, 404, { error: `Unknown action: ${action}` });
135
142
  }
@@ -219,7 +226,7 @@ class BrowserLocalServer {
219
226
  }
220
227
  const page = await session.getPage();
221
228
  await page.fill(selector, value, { timeout: 10000 });
222
- this.emitActionLog(sessionId, session, 'fill', selector);
229
+ this.emitActionLog(sessionId, session, 'fill', `${selector} "${value}"`);
223
230
  if (params.screenshot) {
224
231
  const screenshotBuffer = await session.screenshot(true);
225
232
  const base64 = screenshotBuffer.toString('base64');
@@ -230,12 +237,33 @@ class BrowserLocalServer {
230
237
  }
231
238
  }
232
239
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
233
- async handleGetText(res, session, params) {
240
+ async handleGetText(res, sessionId, session, params) {
234
241
  const page = await session.getPage();
235
242
  const target = params.selector ?? 'body';
236
243
  const text = await page.locator(target).innerText({ timeout: 10000 });
237
244
  const maxLength = 50 * 1024;
238
245
  const truncated = text.length > maxLength ? text.substring(0, maxLength) + '\n... (truncated)' : text;
246
+ const preview = text.replace(/\s+/g, ' ').trim();
247
+ const previewText = preview.length > 100 ? preview.substring(0, 100) + '…' : preview;
248
+ this.emitActionLog(sessionId, session, 'get_text', `${target} → "${previewText}"`);
249
+ sendJson(res, 200, { text: truncated });
250
+ }
251
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
252
+ async handleExtract(res, sessionId, session, params) {
253
+ const selector = params.selector;
254
+ const variableName = params.variableName;
255
+ if (!selector || !variableName) {
256
+ sendJson(res, 400, { error: 'Missing selector or variableName' });
257
+ return;
258
+ }
259
+ const page = await session.getPage();
260
+ const text = await page.locator(selector).innerText({ timeout: 10000 });
261
+ const maxLength = 50 * 1024;
262
+ const truncated = text.length > maxLength ? text.substring(0, maxLength) + '\n... (truncated)' : text;
263
+ session.variables.set(variableName, truncated);
264
+ const preview = text.replace(/\s+/g, ' ').trim();
265
+ const previewText = preview.length > 100 ? preview.substring(0, 100) + '…' : preview;
266
+ this.emitActionLog(sessionId, session, 'extract', `${variableName} "${selector}" → "${previewText}"`);
239
267
  sendJson(res, 200, { text: truncated });
240
268
  }
241
269
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -254,16 +282,17 @@ class BrowserLocalServer {
254
282
  sendJson(res, 200, { title });
255
283
  }
256
284
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
257
- handleGetVariable(res, session, name) {
285
+ handleGetVariable(res, sessionId, session, name) {
258
286
  const value = session.variables.get(name);
259
287
  if (value === undefined) {
260
288
  sendJson(res, 404, { error: `Variable not found: ${name}` });
261
289
  return;
262
290
  }
291
+ this.emitActionLog(sessionId, session, 'get_variable', `${name} → "${value}"`);
263
292
  sendJson(res, 200, { name, value });
264
293
  }
265
294
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
266
- async handleSetVariable(res, session, params) {
295
+ async handleSetVariable(res, sessionId, session, params) {
267
296
  const name = params.name;
268
297
  const value = params.value;
269
298
  if (!name || value === undefined) {
@@ -271,9 +300,28 @@ class BrowserLocalServer {
271
300
  return;
272
301
  }
273
302
  session.variables.set(name, value);
303
+ this.emitActionLog(sessionId, session, 'set_variable', `${name} "${value}"`);
274
304
  sendJson(res, 200, { ok: true });
275
305
  }
276
306
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
307
+ async handleExecuteScript(res, sessionId, session, params) {
308
+ const script = params.script;
309
+ if (!script) {
310
+ sendJson(res, 400, { error: 'Missing script' });
311
+ return;
312
+ }
313
+ const result = await (0, browser_script_executor_1.executePlaywrightScript)(session, script, (step, total, line) => {
314
+ // Emit progress via action log callback
315
+ if (this.onActionLog) {
316
+ this.onActionLog({
317
+ sessionId,
318
+ entry: { timestamp: Date.now(), source: 'chat', action: 'script_progress', details: `${step}/${total}: ${line}` },
319
+ });
320
+ }
321
+ });
322
+ sendJson(res, 200, result);
323
+ }
324
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
277
325
  handleListVariables(res, session) {
278
326
  const entries = Array.from(session.variables.entries());
279
327
  sendJson(res, 200, { variables: Object.fromEntries(entries) });
@@ -1 +1 @@
1
- {"version":3,"file":"browser-local-server.js","sourceRoot":"","sources":["../../src/browser/browser-local-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser-local-server.js","sourceRoot":"","sources":["../../src/browser/browser-local-server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * BrowserScriptExecutor — parses and executes Playwright scripts line-by-line.
3
+ *
4
+ * Supports a subset of Playwright commands that can be deterministically parsed
5
+ * from generated scripts. Unsupported lines cause a parse failure, signaling
6
+ * the caller to fall back to AI-based execution.
7
+ */
8
+ type BrowserSession = any;
9
+ export interface ScriptStepResult {
10
+ line: string;
11
+ success: boolean;
12
+ error?: string;
13
+ }
14
+ export interface ScriptExecutionResult {
15
+ success: boolean;
16
+ completedSteps: number;
17
+ totalSteps: number;
18
+ results: ScriptStepResult[];
19
+ failedLine?: string;
20
+ /** True when a line could not be parsed — caller should fall back to chat AI */
21
+ fallbackToChat?: boolean;
22
+ }
23
+ /**
24
+ * Execute a Playwright script against a browser session.
25
+ */
26
+ export declare function executePlaywrightScript(session: BrowserSession, script: string, onStepComplete?: (step: number, total: number, line: string) => void): Promise<ScriptExecutionResult>;
27
+ export {};
28
+ //# sourceMappingURL=browser-script-executor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-script-executor.d.ts","sourceRoot":"","sources":["../../src/browser/browser-script-executor.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,KAAK,cAAc,GAAG,GAAG,CAAA;AAEzB,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,gBAAgB,EAAE,CAAA;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gFAAgF;IAChF,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB;AA8ED;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,GACnE,OAAO,CAAC,qBAAqB,CAAC,CA6GhC"}
@@ -0,0 +1,173 @@
1
+ "use strict";
2
+ /**
3
+ * BrowserScriptExecutor — parses and executes Playwright scripts line-by-line.
4
+ *
5
+ * Supports a subset of Playwright commands that can be deterministically parsed
6
+ * from generated scripts. Unsupported lines cause a parse failure, signaling
7
+ * the caller to fall back to AI-based execution.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.executePlaywrightScript = executePlaywrightScript;
11
+ const logger_1 = require("../logger");
12
+ /**
13
+ * Parse a single script line into a structured step.
14
+ * Returns null if the line cannot be parsed.
15
+ */
16
+ function parseLine(line) {
17
+ const trimmed = line.trim();
18
+ // Empty lines and comments
19
+ if (!trimmed || trimmed.startsWith('//')) {
20
+ return { type: 'comment', raw: trimmed, args: {} };
21
+ }
22
+ // await page.goto('url'...)
23
+ const gotoMatch = trimmed.match(/^await\s+page\.goto\(\s*'([^']+)'/m);
24
+ if (gotoMatch) {
25
+ return { type: 'goto', raw: trimmed, args: { url: gotoMatch[1] } };
26
+ }
27
+ // await page.click('selector')
28
+ const clickMatch = trimmed.match(/^await\s+page\.click\(\s*'([^']+)'\s*\)/);
29
+ if (clickMatch) {
30
+ return { type: 'click', raw: trimmed, args: { selector: clickMatch[1] } };
31
+ }
32
+ // await page.fill('selector', 'value')
33
+ const fillMatch = trimmed.match(/^await\s+page\.fill\(\s*'([^']+)'\s*,\s*'([^']*)'\s*\)/);
34
+ if (fillMatch) {
35
+ return { type: 'fill', raw: trimmed, args: { selector: fillMatch[1], value: fillMatch[2] } };
36
+ }
37
+ // const x = await page.locator('selector').innerText()
38
+ const innerTextMatch = trimmed.match(/^const\s+(\S+)\s*=\s*await\s+page\.locator\(\s*'([^']+)'\s*\)\.innerText\(\s*\)/);
39
+ if (innerTextMatch) {
40
+ return { type: 'innerText', raw: trimmed, args: { variableName: innerTextMatch[1], selector: innerTextMatch[2] } };
41
+ }
42
+ // await page.keyboard.type('text')
43
+ const typeMatch = trimmed.match(/^await\s+page\.keyboard\.type\(\s*'([^']*)'\s*\)/);
44
+ if (typeMatch) {
45
+ return { type: 'type', raw: trimmed, args: { text: typeMatch[1] } };
46
+ }
47
+ // await page.keyboard.press('key')
48
+ const pressMatch = trimmed.match(/^await\s+page\.keyboard\.press\(\s*'([^']+)'\s*\)/);
49
+ if (pressMatch) {
50
+ return { type: 'press', raw: trimmed, args: { key: pressMatch[1] } };
51
+ }
52
+ // await page.mouse.wheel(deltaX, deltaY)
53
+ const scrollMatch = trimmed.match(/^await\s+page\.mouse\.wheel\(\s*(-?\d+)\s*,\s*(-?\d+)\s*\)/);
54
+ if (scrollMatch) {
55
+ return { type: 'scroll', raw: trimmed, args: { deltaX: scrollMatch[1], deltaY: scrollMatch[2] } };
56
+ }
57
+ // const x = 'value'
58
+ const varMatch = trimmed.match(/^const\s+(\S+)\s*=\s*'([^']*)'/);
59
+ if (varMatch) {
60
+ return { type: 'variable', raw: trimmed, args: { name: varMatch[1], value: varMatch[2] } };
61
+ }
62
+ // await page.waitForTimeout(ms)
63
+ const waitMatch = trimmed.match(/^await\s+page\.waitForTimeout\(\s*(\d+)\s*\)/);
64
+ if (waitMatch) {
65
+ return { type: 'wait', raw: trimmed, args: { ms: waitMatch[1] } };
66
+ }
67
+ // Unrecognized line
68
+ return null;
69
+ }
70
+ /**
71
+ * Execute a Playwright script against a browser session.
72
+ */
73
+ async function executePlaywrightScript(session, script, onStepComplete) {
74
+ const lines = script.split('\n').filter((l) => l.trim().length > 0);
75
+ const results = [];
76
+ // Parse all lines first to detect unsupported commands
77
+ const steps = lines.map(parseLine);
78
+ // Check for unparseable lines first
79
+ for (let i = 0; i < steps.length; i++) {
80
+ if (steps[i] === null) {
81
+ const executableSteps = steps.filter((s) => s !== null && s.type !== 'comment');
82
+ return {
83
+ success: false,
84
+ completedSteps: 0,
85
+ totalSteps: executableSteps.length,
86
+ results: [],
87
+ failedLine: lines[i],
88
+ fallbackToChat: true,
89
+ };
90
+ }
91
+ }
92
+ // Filter out comments for step counting
93
+ const executableSteps = steps.filter((s) => s !== null && s.type !== 'comment');
94
+ const totalSteps = executableSteps.length;
95
+ if (totalSteps === 0) {
96
+ return { success: true, completedSteps: 0, totalSteps: 0, results: [] };
97
+ }
98
+ let completedSteps = 0;
99
+ const page = await session.getPage();
100
+ for (let i = 0; i < steps.length; i++) {
101
+ const step = steps[i];
102
+ if (step.type === 'comment') {
103
+ continue;
104
+ }
105
+ try {
106
+ switch (step.type) {
107
+ case 'goto':
108
+ await page.goto(step.args.url, { waitUntil: 'domcontentloaded', timeout: 30000 });
109
+ session.actionLog.add('chat', 'navigate', step.args.url);
110
+ break;
111
+ case 'click':
112
+ await page.click(step.args.selector, { timeout: 10000 });
113
+ session.actionLog.add('chat', 'click', step.args.selector);
114
+ break;
115
+ case 'fill':
116
+ await page.fill(step.args.selector, step.args.value, { timeout: 10000 });
117
+ session.actionLog.add('chat', 'fill', `${step.args.selector} "${step.args.value}"`);
118
+ break;
119
+ case 'innerText': {
120
+ const text = await page.locator(step.args.selector).innerText({ timeout: 10000 });
121
+ session.variables.set(step.args.variableName, text);
122
+ const preview = text.replace(/\s+/g, ' ').trim();
123
+ const previewText = preview.length > 100 ? preview.substring(0, 100) + '…' : preview;
124
+ session.actionLog.add('chat', 'extract', `${step.args.variableName} "${step.args.selector}" → "${previewText}"`);
125
+ break;
126
+ }
127
+ case 'type':
128
+ await page.keyboard.type(step.args.text);
129
+ session.actionLog.add('chat', 'type', step.args.text);
130
+ break;
131
+ case 'press':
132
+ await page.keyboard.press(step.args.key);
133
+ session.actionLog.add('chat', 'press', step.args.key);
134
+ break;
135
+ case 'scroll':
136
+ await page.mouse.wheel(parseInt(step.args.deltaX, 10), parseInt(step.args.deltaY, 10));
137
+ session.actionLog.add('chat', 'scroll', `deltaX=${step.args.deltaX} deltaY=${step.args.deltaY}`);
138
+ break;
139
+ case 'variable':
140
+ session.variables.set(step.args.name, step.args.value);
141
+ session.actionLog.add('chat', 'set_variable', `${step.args.name} "${step.args.value}"`);
142
+ break;
143
+ case 'wait': {
144
+ const ms = Math.min(parseInt(step.args.ms, 10), 10000);
145
+ await page.waitForTimeout(ms);
146
+ break;
147
+ }
148
+ }
149
+ completedSteps++;
150
+ results.push({ line: step.raw, success: true });
151
+ onStepComplete?.(completedSteps, totalSteps, step.raw);
152
+ }
153
+ catch (error) {
154
+ const errorMessage = error instanceof Error ? error.message : String(error);
155
+ logger_1.logger.warn(`[script-executor] Step failed: ${step.raw} — ${errorMessage}`);
156
+ results.push({ line: step.raw, success: false, error: errorMessage });
157
+ return {
158
+ success: false,
159
+ completedSteps,
160
+ totalSteps,
161
+ results,
162
+ failedLine: step.raw,
163
+ };
164
+ }
165
+ }
166
+ return {
167
+ success: true,
168
+ completedSteps,
169
+ totalSteps,
170
+ results,
171
+ };
172
+ }
173
+ //# sourceMappingURL=browser-script-executor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-script-executor.js","sourceRoot":"","sources":["../../src/browser/browser-script-executor.ts"],"names":[],"mappings":"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"}
@@ -7,10 +7,16 @@ export interface StreamJsonContentBlock {
7
7
  id?: string;
8
8
  input?: Record<string, unknown>;
9
9
  tool_use_id?: string;
10
- /** 組み込みツールでは string、MCP ツールでは {type, text}[] の配列 */
10
+ /** 組み込みツールでは string、MCP ツールでは {type, text}[] or {type, source}[] の配列 */
11
11
  content?: string | Array<{
12
12
  type: string;
13
13
  text?: string;
14
+ data?: string;
15
+ source?: {
16
+ type: string;
17
+ media_type?: string;
18
+ data?: string;
19
+ };
14
20
  }>;
15
21
  }
16
22
  /** stream-json の MCP サーバー接続情報 */
@@ -1 +1 @@
1
- {"version":3,"file":"claude-code-stream.d.ts","sourceRoot":"","sources":["../../src/commands/claude-code-stream.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAG7C,oDAAoD;AACpD,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,aAAa,GAAG,gBAAgB,CAAA;IAC5D,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAE/B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAC1D;AAED,iCAAiC;AACjC,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,kCAAkC;AAClC,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,sBAAsB,EAAE,CAAA;KACnC,CAAA;IACD,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,WAAW,CAAC,EAAE,mBAAmB,EAAE,CAAA;CACpC;AAKD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,EAClE,GAAG,EAAE,MAAM,EACX,KAAK,EAAE;IAAE,cAAc,EAAE,MAAM,CAAC;IAAC,oBAAoB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAAC,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GAC5G;IAAE,iBAAiB,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,mBAAmB,CAAC,EAAE,SAAS,GAAG,UAAU,CAAA;CAAE,CAuI5F;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,SAAS,GAAG;IAC3G,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;CACjB,GAAG,IAAI,CA2BP"}
1
+ {"version":3,"file":"claude-code-stream.d.ts","sourceRoot":"","sources":["../../src/commands/claude-code-stream.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAG7C,oDAAoD;AACpD,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,aAAa,GAAG,gBAAgB,CAAA;IAC5D,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAE/B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,wEAAwE;IACxE,OAAO,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,UAAU,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC,CAAA;CACxI;AAED,iCAAiC;AACjC,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,kCAAkC;AAClC,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,sBAAsB,EAAE,CAAA;KACnC,CAAA;IACD,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,WAAW,CAAC,EAAE,mBAAmB,EAAE,CAAA;CACpC;AAQD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,EAClE,GAAG,EAAE,MAAM,EACX,KAAK,EAAE;IAAE,cAAc,EAAE,MAAM,CAAC;IAAC,oBAAoB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAAC,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GAC5G;IAAE,iBAAiB,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,mBAAmB,CAAC,EAAE,SAAS,GAAG,UAAU,CAAA;CAAE,CAyJ5F;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,SAAS,GAAG;IAC3G,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;CACjB,GAAG,IAAI,CA2BP"}
@@ -7,6 +7,8 @@ const logger_1 = require("../logger");
7
7
  const json_parse_1 = require("../utils/json-parse");
8
8
  /** file_upload ツール結果を file_attachment チャンクに変換する */
9
9
  const FILE_UPLOAD_TOOL_NAME = 'mcp__ai-support-agent__file_upload';
10
+ /** Screenshot base64 の最大サイズ(バイト) */
11
+ const SCREENSHOT_MAX_BASE64_BYTES = 512 * 1024;
10
12
  /**
11
13
  * stream-json の NDJSON 1行をパースし、テキストやツール呼び出し情報を処理する
12
14
  * sendChunk は fire-and-forget で呼び出される(同期的に状態を返すため)
@@ -83,18 +85,36 @@ function processStreamJsonLine(line, sendChunk, pid, state) {
83
85
  hasActualToolResult = true;
84
86
  // ツール名を復元
85
87
  const toolName = state.pendingToolNames?.get(block.tool_use_id) ?? 'unknown';
86
- // tool_result の内容をテキストとして抽出
88
+ // tool_result の内容をテキストとして抽出(image ブロックがあればスクリーンショットも含める)
87
89
  let resultText;
90
+ let screenshotBase64;
88
91
  if (typeof block.content === 'string') {
89
92
  resultText = block.content;
90
93
  }
91
94
  else if (Array.isArray(block.content)) {
92
95
  const textBlock = block.content.find(b => b.type === 'text' && b.text);
93
96
  resultText = textBlock?.text ?? '';
97
+ // Extract screenshot from image blocks
98
+ const imageBlock = block.content.find(b => b.type === 'image');
99
+ if (imageBlock) {
100
+ // image block can have data directly or in source.data
101
+ const base64Data = imageBlock.data ?? imageBlock.source?.data;
102
+ // Size guard: skip if base64 > 512KB
103
+ if (base64Data && base64Data.length <= SCREENSHOT_MAX_BASE64_BYTES) {
104
+ screenshotBase64 = base64Data;
105
+ }
106
+ else if (base64Data) {
107
+ logger_1.logger.warn(`[stream] Screenshot base64 too large (${base64Data.length} bytes), skipped`);
108
+ }
109
+ }
94
110
  }
95
111
  else {
96
112
  resultText = '';
97
113
  }
114
+ // Append screenshot marker if present
115
+ if (screenshotBase64) {
116
+ resultText += `\n[screenshot:base64:${screenshotBase64}]`;
117
+ }
98
118
  // tool_result チャンクを送信
99
119
  const isError = resultText.startsWith('Error:') || resultText.startsWith('error:');
100
120
  const output = (0, json_parse_1.safeJsonParse)(resultText) ?? { text: resultText };
@@ -1 +1 @@
1
- {"version":3,"file":"claude-code-stream.js","sourceRoot":"","sources":["../../src/commands/claude-code-stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude-code-stream.js","sourceRoot":"","sources":["../../src/commands/claude-code-stream.ts"],"names":[],"mappings":";;AAmDA,sDA8JC;AAQD,sDAiCC;AA1PD,4CAA8C;AAC9C,sCAAkC;AAElC,oDAAmD;AAmCnD,mDAAmD;AACnD,MAAM,qBAAqB,GAAG,oCAAoC,CAAA;AAElE,oCAAoC;AACpC,MAAM,2BAA2B,GAAG,GAAG,GAAG,IAAI,CAAA;AAE9C;;;;;;GAMG;AACH,SAAgB,qBAAqB,CACnC,IAAY,EACZ,SAAkE,EAClE,GAAW,EACX,KAA6G;IAE7G,MAAM,MAAM,GAAG,IAAA,0BAAa,EAAiB,IAAI,CAAC,CAAA;IAClD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,eAAM,CAAC,KAAK,CAAC,uCAAuC,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,2BAAe,CAAC,EAAE,CAAC,CAAA;QAClG,OAAO,EAAE,iBAAiB,EAAE,KAAK,CAAC,cAAc,EAAE,CAAA;IACpD,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,IAAI,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;QAC3D,IAAI,iBAAiB,GAAG,KAAK,CAAC,cAAc,CAAA;QAC5C,mCAAmC;QACnC,IAAI,QAAQ,GAAG,EAAE,CAAA;QACjB,IAAI,UAAU,GAAG,KAAK,CAAA;QACtB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3C,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBACxC,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAA;YACxB,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBACnD,UAAU,GAAG,IAAI,CAAA;gBACjB,iBAAiB;gBACjB,eAAM,CAAC,IAAI,CAAC,oBAAoB,KAAK,CAAC,IAAI,SAAS,GAAG,GAAG,CAAC,CAAA;gBAC1D,8CAA8C;gBAC9C,KAAK,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC;oBACzC,QAAQ,EAAE,KAAK,CAAC,IAAI;oBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,EAAE,EAAE,KAAK,CAAC,EAAE;oBACZ,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE;iBACzB,CAAC,CAAC,CAAA;gBACH,8DAA8D;gBAC9D,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;oBACb,IAAI,CAAC,KAAK,CAAC,gBAAgB;wBAAE,KAAK,CAAC,gBAAgB,GAAG,IAAI,GAAG,EAAE,CAAA;oBAC/D,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;gBAClD,CAAC;gBACD,kEAAkE;gBAClE,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;oBACrD,IAAI,CAAC,KAAK,CAAC,oBAAoB;wBAAE,KAAK,CAAC,oBAAoB,GAAG,IAAI,GAAG,EAAE,CAAA;oBACvE,KAAK,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;gBAC1C,CAAC;YACH,CAAC;QACH,CAAC;QACD,oCAAoC;QACpC,IAAI,QAAQ,CAAC,MAAM,GAAG,iBAAiB,EAAE,CAAC;YACxC,MAAM,OAAO,GAAG,QAAQ,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAA;YACrD,KAAK,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAChC,iBAAiB,GAAG,QAAQ,CAAC,MAAM,CAAA;QACrC,CAAC;QACD,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;IACvF,CAAC;IAED,+BAA+B;IAC/B,4DAA4D;IAC5D,oDAAoD;IACpD,kEAAkE;IAClE,EAAE;IACF,sDAAsD;IACtD,sCAAsC;IACtC,qCAAqC;IACrC,8BAA8B;IAC9B,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;QACtD,IAAI,mBAAmB,GAAG,KAAK,CAAA;QAC/B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3C,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,CAAC,KAAK,CAAC,WAAW;gBAAE,SAAQ;YAEhE,wCAAwC;YACxC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBAC3G,SAAQ;YACV,CAAC;YAED,mBAAmB,GAAG,IAAI,CAAA;YAE1B,UAAU;YACV,MAAM,QAAQ,GAAG,KAAK,CAAC,gBAAgB,EAAE,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,SAAS,CAAA;YAE5E,yDAAyD;YACzD,IAAI,UAAkB,CAAA;YACtB,IAAI,gBAAoC,CAAA;YACxC,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACtC,UAAU,GAAG,KAAK,CAAC,OAAO,CAAA;YAC5B,CAAC;iBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;gBACxC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,CAAA;gBACtE,UAAU,GAAG,SAAS,EAAE,IAAI,IAAI,EAAE,CAAA;gBAClC,uCAAuC;gBACvC,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAA;gBAC9D,IAAI,UAAU,EAAE,CAAC;oBACf,uDAAuD;oBACvD,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,MAAM,EAAE,IAAI,CAAA;oBAC7D,qCAAqC;oBACrC,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,IAAI,2BAA2B,EAAE,CAAC;wBACnE,gBAAgB,GAAG,UAAU,CAAA;oBAC/B,CAAC;yBAAM,IAAI,UAAU,EAAE,CAAC;wBACtB,eAAM,CAAC,IAAI,CAAC,yCAAyC,UAAU,CAAC,MAAM,kBAAkB,CAAC,CAAA;oBAC3F,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,UAAU,GAAG,EAAE,CAAA;YACjB,CAAC;YAED,sCAAsC;YACtC,IAAI,gBAAgB,EAAE,CAAC;gBACrB,UAAU,IAAI,wBAAwB,gBAAgB,GAAG,CAAA;YAC3D,CAAC;YAED,sBAAsB;YACtB,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;YAClF,MAAM,MAAM,GAAG,IAAA,0BAAa,EAA0B,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAA;YACzF,KAAK,SAAS,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC;gBAC3C,QAAQ;gBACR,OAAO,EAAE,CAAC,OAAO;gBACjB,MAAM;aACP,CAAC,CAAC,CAAA;YACH,eAAM,CAAC,IAAI,CAAC,uBAAuB,QAAQ,YAAY,CAAC,OAAO,SAAS,GAAG,GAAG,CAAC,CAAA;YAE/E,iDAAiD;YACjD,IAAI,KAAK,CAAC,oBAAoB,EAAE,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;gBACvD,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;gBACrD,IAAI,QAAQ,EAAE,CAAC;oBACb,KAAK,CAAC,oBAAoB,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;oBACpD,eAAM,CAAC,IAAI,CAAC,qCAAqC,QAAQ,CAAC,MAAM,cAAc,QAAQ,CAAC,QAAQ,SAAS,GAAG,GAAG,CAAC,CAAA;oBAC/G,KAAK,SAAS,CAAC,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAA;gBAC7D,CAAC;YACH,CAAC;YAED,gBAAgB;YAChB,KAAK,CAAC,gBAAgB,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;QACnD,CAAC;QACD,uDAAuD;QACvD,0BAA0B;QAC1B,4CAA4C;QAC5C,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,mBAAmB,EAAE,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;IACpG,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC5D,OAAO,EAAE,iBAAiB,EAAE,KAAK,CAAC,cAAc,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,CAAA;IACzE,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QAC1D,iCAAiC;QACjC,IAAI,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;YAC/B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBACrC,IAAI,GAAG,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;oBAC/B,eAAM,CAAC,IAAI,CAAC,sBAAsB,GAAG,CAAC,IAAI,oBAAoB,GAAG,GAAG,CAAC,CAAA;gBACvE,CAAC;qBAAM,CAAC;oBACN,eAAM,CAAC,IAAI,CAAC,sBAAsB,GAAG,CAAC,IAAI,YAAY,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,GAAG,GAAG,CAAC,CAAA;gBAC3H,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAA;YAChE,eAAM,CAAC,IAAI,CAAC,4BAA4B,MAAM,CAAC,KAAK,CAAC,MAAM,iCAAiC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,CAAA;QAClI,CAAC;aAAM,CAAC;YACN,eAAM,CAAC,IAAI,CAAC,0DAA0D,GAAG,GAAG,CAAC,CAAA;QAC/E,CAAC;IACH,CAAC;IAED,OAAO,EAAE,iBAAiB,EAAE,KAAK,CAAC,cAAc,EAAE,CAAA;AACpD,CAAC;AAED;;;;;GAKG;AACH,SAAgB,qBAAqB,CAAC,OAAoE;IAOxG,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAA;IAEzB,oBAAoB;IACpB,IAAI,WAAmB,CAAA;IACvB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,WAAW,GAAG,OAAO,CAAA;IACvB,CAAC;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAClC,gDAAgD;QAChD,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,CAAA;QAChE,IAAI,CAAC,SAAS,EAAE,IAAI;YAAE,OAAO,IAAI,CAAA;QACjC,WAAW,GAAG,SAAS,CAAC,IAAI,CAAA;IAC9B,CAAC;SAAM,CAAC;QACN,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,IAAI,GAAG,IAAA,0BAAa,EAA0B,WAAW,CAAC,CAAA;IAChE,IAAI,IAAI,EAAE,OAAO,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC5H,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAgB;YAC7B,KAAK,EAAE,IAAI,CAAC,KAAe;YAC3B,QAAQ,EAAE,IAAI,CAAC,QAAkB;YACjC,WAAW,EAAG,IAAI,CAAC,WAAsB,IAAI,0BAA0B;YACvE,QAAQ,EAAE,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAE,IAAI,CAAC,QAAmB,CAAC,CAAC,CAAC,CAAC;SAC5E,CAAA;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -40,6 +40,10 @@ export declare class BrowserProxySession {
40
40
  * Fill a form field.
41
41
  */
42
42
  fill(selector: string, value: string, screenshot?: boolean): Promise<Buffer | undefined>;
43
+ /**
44
+ * Extract text from an element and store in a variable (atomic operation).
45
+ */
46
+ extract(selector: string, variableName: string): Promise<string>;
43
47
  /**
44
48
  * Get text content from the page.
45
49
  */
@@ -87,6 +91,8 @@ declare class ProxyVariableMap {
87
91
  constructor(baseUrl: string, sessionId: string);
88
92
  get(name: string): string | undefined;
89
93
  set(name: string, value: string): this;
94
+ /** Update local cache only (no HTTP request). Used when setVariable() already sent the request. */
95
+ setLocal(name: string, value: string): void;
90
96
  entries(): IterableIterator<[string, string]>;
91
97
  /** Refresh cache from the server. Call before reading variables. */
92
98
  refresh(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"browser-proxy-session.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/browser/browser-proxy-session.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAEvD,qBAAa,mBAAmB;IAK5B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAL5B,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAA;IACpC,QAAQ,CAAC,SAAS,mBAAyB;gBAGxB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM;IAKpC;;OAEG;IACG,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QACpC,eAAe,CAAC,EAAE,MAAM,CAAA;QACxB,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,QAAQ,CAAC,EAAE,OAAO,CAAA;KACnB,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAc/D;;OAEG;IACG,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QACtC,iBAAiB,CAAC,EAAE,OAAO,CAAA;QAC3B,UAAU,CAAC,EAAE,OAAO,CAAA;KACrB,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAahE;;OAEG;IACG,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAK9F;;OAEG;IACG,OAAO,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAKjD;;OAEG;IACG,UAAU,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAKrD;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IAK/B;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC;IAKjC;;OAEG;IACG,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D;;OAEG;IACG,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAS5D;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAKtD;;;OAGG;IACH,QAAQ,IAAI,OAAO;IAInB,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,GAAG;CAGZ;AAED;;;GAGG;AACH,cAAM,gBAAgB;IAIlB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAJ5B,OAAO,CAAC,KAAK,CAA4B;gBAGtB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM;IAGpC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIrC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAQtC,OAAO,IAAI,gBAAgB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAI7C,oEAAoE;IAC9D,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAQ/B"}
1
+ {"version":3,"file":"browser-proxy-session.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/browser/browser-proxy-session.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAEvD,qBAAa,mBAAmB;IAK5B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAL5B,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAA;IACpC,QAAQ,CAAC,SAAS,mBAAyB;gBAGxB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM;IAKpC;;OAEG;IACG,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QACpC,eAAe,CAAC,EAAE,MAAM,CAAA;QACxB,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,QAAQ,CAAC,EAAE,OAAO,CAAA;KACnB,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAc/D;;OAEG;IACG,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QACtC,iBAAiB,CAAC,EAAE,OAAO,CAAA;QAC3B,UAAU,CAAC,EAAE,OAAO,CAAA;KACrB,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAahE;;OAEG;IACG,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAK9F;;OAEG;IACG,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAOtE;;OAEG;IACG,OAAO,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAKjD;;OAEG;IACG,UAAU,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAKrD;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IAK/B;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC;IAKjC;;OAEG;IACG,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM7D;;OAEG;IACG,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAS5D;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAKtD;;;OAGG;IACH,QAAQ,IAAI,OAAO;IAInB,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,GAAG;CAGZ;AAED;;;GAGG;AACH,cAAM,gBAAgB;IAIlB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAJ5B,OAAO,CAAC,KAAK,CAA4B;gBAGtB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM;IAGpC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIrC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAQtC,mGAAmG;IACnG,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAI3C,OAAO,IAAI,gBAAgB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAI7C,oEAAoE;IAC9D,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAQ/B"}
@@ -63,6 +63,15 @@ class BrowserProxySession {
63
63
  const result = await this.post('fill', { selector, value, screenshot: screenshot ?? false });
64
64
  return result.screenshot ? Buffer.from(result.screenshot, 'base64') : undefined;
65
65
  }
66
+ /**
67
+ * Extract text from an element and store in a variable (atomic operation).
68
+ */
69
+ async extract(selector, variableName) {
70
+ const result = await this.post('extract', { selector, variableName });
71
+ const text = result.text;
72
+ this.variables.setLocal(variableName, text);
73
+ return text;
74
+ }
66
75
  /**
67
76
  * Get text content from the page.
68
77
  */
@@ -96,6 +105,8 @@ class BrowserProxySession {
96
105
  */
97
106
  async setVariable(name, value) {
98
107
  await this.post('variable', { name, value });
108
+ // Update local cache so subsequent get() calls reflect the new value
109
+ this.variables.setLocal(name, value);
99
110
  }
100
111
  /**
101
112
  * Get a session variable.
@@ -153,6 +164,10 @@ class ProxyVariableMap {
153
164
  .catch((err) => { logger_1.logger.warn(`[proxy-variable] Failed to sync variable "${name}" to server: ${String(err)}`); });
154
165
  return this;
155
166
  }
167
+ /** Update local cache only (no HTTP request). Used when setVariable() already sent the request. */
168
+ setLocal(name, value) {
169
+ this.cache.set(name, value);
170
+ }
156
171
  entries() {
157
172
  return this.cache.entries();
158
173
  }