@pyrokine/mcp-chrome 2.3.1 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/README.md +38 -11
  2. package/README_zh.md +35 -8
  3. package/dist/anti-detection/behavior.d.ts.map +1 -1
  4. package/dist/anti-detection/behavior.js.map +1 -1
  5. package/dist/anti-detection/injection.js.map +1 -1
  6. package/dist/cdp/client.d.ts.map +1 -1
  7. package/dist/cdp/client.js.map +1 -1
  8. package/dist/cdp/launcher.d.ts.map +1 -1
  9. package/dist/cdp/launcher.js.map +1 -1
  10. package/dist/core/auto-wait.d.ts.map +1 -1
  11. package/dist/core/auto-wait.js.map +1 -1
  12. package/dist/core/browser-driver.d.ts.map +1 -1
  13. package/dist/core/errors.d.ts.map +1 -1
  14. package/dist/core/errors.js.map +1 -1
  15. package/dist/core/extension-errors.d.ts.map +1 -1
  16. package/dist/core/locator.d.ts.map +1 -1
  17. package/dist/core/locator.js.map +1 -1
  18. package/dist/core/retry.js.map +1 -1
  19. package/dist/core/session.d.ts.map +1 -1
  20. package/dist/core/session.js.map +1 -1
  21. package/dist/core/types.d.ts.map +1 -1
  22. package/dist/core/types.js.map +1 -1
  23. package/dist/core/unified-session.d.ts +7 -0
  24. package/dist/core/unified-session.d.ts.map +1 -1
  25. package/dist/core/unified-session.js +21 -6
  26. package/dist/core/unified-session.js.map +1 -1
  27. package/dist/extension/bridge.d.ts.map +1 -1
  28. package/dist/extension/bridge.js.map +1 -1
  29. package/dist/extension/http-server.d.ts.map +1 -1
  30. package/dist/extension/http-server.js.map +1 -1
  31. package/dist/index.js.map +1 -1
  32. package/dist/tools/browse.d.ts.map +1 -1
  33. package/dist/tools/browse.js +12 -37
  34. package/dist/tools/browse.js.map +1 -1
  35. package/dist/tools/cookies.js.map +1 -1
  36. package/dist/tools/diagnostics.d.ts +31 -0
  37. package/dist/tools/diagnostics.d.ts.map +1 -0
  38. package/dist/tools/diagnostics.js +92 -0
  39. package/dist/tools/diagnostics.js.map +1 -0
  40. package/dist/tools/evaluate.d.ts +7 -0
  41. package/dist/tools/evaluate.d.ts.map +1 -1
  42. package/dist/tools/evaluate.js +111 -85
  43. package/dist/tools/evaluate.js.map +1 -1
  44. package/dist/tools/extract.d.ts.map +1 -1
  45. package/dist/tools/extract.js +26 -8
  46. package/dist/tools/extract.js.map +1 -1
  47. package/dist/tools/input.d.ts +2 -0
  48. package/dist/tools/input.d.ts.map +1 -1
  49. package/dist/tools/input.js +320 -181
  50. package/dist/tools/input.js.map +1 -1
  51. package/dist/tools/logs.d.ts +14 -0
  52. package/dist/tools/logs.d.ts.map +1 -1
  53. package/dist/tools/logs.js +37 -9
  54. package/dist/tools/logs.js.map +1 -1
  55. package/dist/tools/post-condition.d.ts +18 -1
  56. package/dist/tools/post-condition.d.ts.map +1 -1
  57. package/dist/tools/post-condition.js +49 -83
  58. package/dist/tools/post-condition.js.map +1 -1
  59. package/dist/tools/target-diagnostics.d.ts +31 -0
  60. package/dist/tools/target-diagnostics.d.ts.map +1 -0
  61. package/dist/tools/target-diagnostics.js +85 -0
  62. package/dist/tools/target-diagnostics.js.map +1 -0
  63. package/dist/tools/wait.d.ts.map +1 -1
  64. package/dist/tools/wait.js +203 -217
  65. package/dist/tools/wait.js.map +1 -1
  66. package/extension/dist/assets/content.ts-pEASbjEL.js +6 -0
  67. package/extension/dist/assets/index.ts-BMmrcSQ6.js +8713 -0
  68. package/extension/dist/assets/popup-BwuBB9Cz.css +142 -0
  69. package/extension/dist/assets/popup.html-B81xccfq.js +127 -0
  70. package/extension/dist/icons/icon128.png +0 -0
  71. package/extension/dist/icons/icon16.png +0 -0
  72. package/extension/dist/icons/icon48.png +0 -0
  73. package/extension/dist/manifest.json +63 -0
  74. package/extension/dist/public/icons/icon128.png +0 -0
  75. package/extension/dist/public/icons/icon16.png +0 -0
  76. package/extension/dist/public/icons/icon48.png +0 -0
  77. package/extension/dist/service-worker-loader.js +1 -0
  78. package/extension/dist/src/popup/popup.html +50 -0
  79. package/package.json +16 -11
@@ -8,55 +8,45 @@
8
8
  * - idle: 等待网络空闲
9
9
  */
10
10
  import { z } from 'zod';
11
- import { formatErrorResponse, formatResponse, getSession, getUnifiedSession, TimeoutError } from '../core/index.js';
11
+ import { formatErrorResponse, getSession, getUnifiedSession, TimeoutError } from '../core/index.js';
12
12
  import { DEFAULT_TIMEOUT } from '../core/types.js';
13
+ import { withDiagnosticsResponse } from './diagnostics.js';
13
14
  import { targetToFindParams, targetZodSchema } from './schema.js';
15
+ import { buildTargetDiagnostics, TargetTimeoutError } from './target-diagnostics.js';
14
16
  /** 轮询间隔(毫秒) */
15
17
  const POLL_INTERVAL = 100;
16
- async function captureDiagnosticsStart(unifiedSession) {
17
- await unifiedSession.enableConsole();
18
- await unifiedSession.enableNetwork();
19
- const consoleLogs = await unifiedSession.getConsoleLogs();
20
- const network = await unifiedSession.getNetworkRequests();
21
- return { consoleCount: consoleLogs.length, networkCount: network.length };
22
- }
23
- async function captureDiagnosticsDelta(unifiedSession, start) {
24
- const consoleLogs = await unifiedSession.getConsoleLogs();
25
- const network = await unifiedSession.getNetworkRequests();
26
- return {
27
- console: consoleLogs
28
- .slice(start.consoleCount)
29
- .filter((item) => ['error', 'warning', 'warn'].includes(item.level))
30
- .slice(-20),
31
- failedRequests: network
32
- .slice(start.networkCount)
33
- .filter((item) => item.errorText || (item.status !== undefined && item.status >= 400))
34
- .slice(-20),
35
- };
36
- }
37
- async function withDiagnostics(unifiedSession, enabled, action) {
38
- const start = enabled ? await captureDiagnosticsStart(unifiedSession) : undefined;
39
- const result = await action();
40
- if (start) {
41
- result.diagnostics = await captureDiagnosticsDelta(unifiedSession, start);
18
+ const NAVIGATION_SNAPSHOT_TIMEOUT = 1000;
19
+ async function sleepWithinBudget(startedAt, timeout, interval) {
20
+ const remaining = timeout - (Date.now() - startedAt);
21
+ if (remaining > 0) {
22
+ await new Promise((resolve) => setTimeout(resolve, Math.min(interval, remaining)));
42
23
  }
43
- return result;
44
24
  }
45
- async function getExtensionNavigationSnapshot(unifiedSession) {
25
+ async function getExtensionNavigationSnapshot(unifiedSession, timeout = NAVIGATION_SNAPSHOT_TIMEOUT) {
46
26
  const targetId = unifiedSession.getCurrentTargetId();
47
27
  if (!targetId) {
48
28
  throw new Error('没有当前页面,请先 browse attach 或先 browse open 创建受控页面');
49
29
  }
50
- const targets = await unifiedSession.listTargets();
51
- const target = targets.find((item) => item.targetId === targetId);
52
- if (!target) {
53
- throw new Error(`Tab ${targetId} 不存在,请先 browse(action="list") 查看可用页面`);
30
+ try {
31
+ const pageState = await unifiedSession.evaluate('({ readyState: document.readyState, url: location.href, title: document.title })', 'stealth', timeout);
32
+ return {
33
+ readyState: pageState.readyState === 'complete' ? 'complete' : 'loading',
34
+ url: pageState.url ?? '',
35
+ title: pageState.title ?? '',
36
+ };
37
+ }
38
+ catch {
39
+ const targets = await unifiedSession.listTargets();
40
+ const target = targets.find((item) => item.targetId === targetId);
41
+ if (!target) {
42
+ throw new Error(`Tab ${targetId} 不存在,请先 browse(action="list") 查看可用页面`);
43
+ }
44
+ return {
45
+ readyState: target.status === 'complete' ? 'complete' : 'loading',
46
+ url: target.url,
47
+ title: target.title,
48
+ };
54
49
  }
55
- return {
56
- readyState: target.status === 'complete' ? 'complete' : 'loading',
57
- url: target.url,
58
- title: target.title,
59
- };
60
50
  }
61
51
  /**
62
52
  * wait 参数 schema
@@ -106,9 +96,9 @@ async function handleWait(args) {
106
96
  };
107
97
  }
108
98
  const state = args.state ?? 'visible';
109
- return formatResponse(await withDiagnostics(unifiedSession, args.diagnostics, async () => {
99
+ return withDiagnosticsResponse(unifiedSession, args.diagnostics, async () => {
110
100
  if (mode === 'extension') {
111
- await waitForElementExtension(unifiedSession, args.target, state, timeout);
101
+ await waitForElementExtension(unifiedSession, args.target, state, timeout, args.frame);
112
102
  }
113
103
  else {
114
104
  const session = getSession();
@@ -120,93 +110,86 @@ async function handleWait(args) {
120
110
  state,
121
111
  mode,
122
112
  };
123
- }));
113
+ });
124
114
  }
125
115
  case 'navigation': {
126
- const diagnosticsStart = args.diagnostics
127
- ? await captureDiagnosticsStart(unifiedSession)
128
- : undefined;
129
- if (mode === 'extension') {
130
- const navStart = Date.now();
131
- let navCompleted = false;
132
- let navLastError = null;
133
- let initialUrl = null;
134
- let initialTitle = null;
135
- let sawLoading = false;
136
- let navUrl = null;
137
- let navTitle = null;
138
- try {
139
- const initial = await getExtensionNavigationSnapshot(unifiedSession);
140
- if (unifiedSession.isExtensionConnected()) {
141
- initialUrl = initial.url;
142
- initialTitle = initial.title;
143
- sawLoading = initial.readyState !== 'complete';
116
+ return withDiagnosticsResponse(unifiedSession, args.diagnostics, async () => {
117
+ if (mode === 'extension') {
118
+ const navStart = Date.now();
119
+ let navCompleted = false;
120
+ let navLastError = null;
121
+ let initialUrl = null;
122
+ let initialTitle = null;
123
+ let sawLoading = false;
124
+ let navUrl = null;
125
+ let navTitle = null;
126
+ try {
127
+ const initial = await getExtensionNavigationSnapshot(unifiedSession, Math.min(timeout, NAVIGATION_SNAPSHOT_TIMEOUT));
128
+ if (unifiedSession.isExtensionConnected()) {
129
+ initialUrl = initial.url;
130
+ initialTitle = initial.title;
131
+ sawLoading = initial.readyState !== 'complete';
132
+ }
144
133
  }
145
- }
146
- catch (err) {
147
- sawLoading = true;
148
- navLastError = err instanceof Error ? err : new Error(String(err));
149
- }
150
- while (Date.now() - navStart < timeout) {
151
- if (!unifiedSession.isExtensionConnected()) {
152
- navLastError = new Error('Extension 未连接');
153
- await new Promise((resolve) => setTimeout(resolve, POLL_INTERVAL));
154
- continue;
134
+ catch (err) {
135
+ sawLoading = true;
136
+ navLastError = err instanceof Error ? err : new Error(String(err));
155
137
  }
156
- try {
157
- const pageInfo = await getExtensionNavigationSnapshot(unifiedSession);
138
+ while (!navCompleted && Date.now() - navStart < timeout) {
158
139
  if (!unifiedSession.isExtensionConnected()) {
159
- navLastError = new Error('Extension 在查询导航状态期间断开');
160
- await new Promise((resolve) => setTimeout(resolve, POLL_INTERVAL));
140
+ navLastError = new Error('Extension 未连接');
141
+ await sleepWithinBudget(navStart, timeout, POLL_INTERVAL);
161
142
  continue;
162
143
  }
163
- if (pageInfo.readyState !== 'complete') {
164
- sawLoading = true;
165
- }
166
- else {
167
- const changed = (initialUrl !== null && pageInfo.url !== initialUrl) ||
168
- (initialTitle !== null && pageInfo.title !== initialTitle);
169
- if (sawLoading || changed || initialUrl === null) {
170
- navUrl = pageInfo.url;
171
- navTitle = pageInfo.title;
172
- navCompleted = true;
173
- break;
144
+ try {
145
+ const remaining = timeout - (Date.now() - navStart);
146
+ const pageInfo = await getExtensionNavigationSnapshot(unifiedSession, Math.min(remaining, NAVIGATION_SNAPSHOT_TIMEOUT));
147
+ if (!unifiedSession.isExtensionConnected()) {
148
+ navLastError = new Error('Extension 在查询导航状态期间断开');
149
+ await sleepWithinBudget(navStart, timeout, POLL_INTERVAL);
150
+ continue;
151
+ }
152
+ if (pageInfo.readyState !== 'complete') {
153
+ sawLoading = true;
174
154
  }
155
+ else {
156
+ const changed = (initialUrl !== null && pageInfo.url !== initialUrl) ||
157
+ (initialTitle !== null && pageInfo.title !== initialTitle);
158
+ if (sawLoading || changed || initialUrl === null) {
159
+ navUrl = pageInfo.url;
160
+ navTitle = pageInfo.title;
161
+ navCompleted = true;
162
+ break;
163
+ }
164
+ }
165
+ }
166
+ catch (err) {
167
+ navLastError = err instanceof Error ? err : new Error(String(err));
175
168
  }
169
+ await sleepWithinBudget(navStart, timeout, POLL_INTERVAL);
176
170
  }
177
- catch (err) {
178
- navLastError = err instanceof Error ? err : new Error(String(err));
171
+ if (!navCompleted) {
172
+ const msg = `等待导航完成超时 (${timeout}ms)`;
173
+ throw new TimeoutError(navLastError ? `${msg}: ${navLastError.message}` : msg);
179
174
  }
180
- await new Promise((resolve) => setTimeout(resolve, POLL_INTERVAL));
181
- }
182
- if (!navCompleted) {
183
- const msg = `等待导航完成超时 (${timeout}ms)`;
184
- throw new TimeoutError(navLastError ? `${msg}: ${navLastError.message}` : msg);
175
+ return {
176
+ success: true,
177
+ waited: 'navigation',
178
+ url: navUrl,
179
+ title: navTitle,
180
+ mode,
181
+ };
185
182
  }
186
- return formatResponse({
183
+ const session = getSession();
184
+ await waitForNavigation(session, timeout);
185
+ const sessionState = session.getState();
186
+ return {
187
187
  success: true,
188
188
  waited: 'navigation',
189
- url: navUrl,
190
- title: navTitle,
189
+ url: sessionState?.url,
190
+ title: sessionState?.title,
191
191
  mode,
192
- ...(diagnosticsStart
193
- ? { diagnostics: await captureDiagnosticsDelta(unifiedSession, diagnosticsStart) }
194
- : {}),
195
- });
196
- }
197
- // CDP 模式
198
- const session = getSession();
199
- await waitForNavigation(session, timeout);
200
- const sessionState = session.getState();
201
- return formatResponse({
202
- success: true,
203
- waited: 'navigation',
204
- url: sessionState?.url,
205
- title: sessionState?.title,
206
- mode,
207
- ...(diagnosticsStart
208
- ? { diagnostics: await captureDiagnosticsDelta(unifiedSession, diagnosticsStart) }
209
- : {}),
192
+ };
210
193
  });
211
194
  }
212
195
  case 'time': {
@@ -226,66 +209,66 @@ async function handleWait(args) {
226
209
  isError: true,
227
210
  };
228
211
  }
229
- await new Promise((resolve) => setTimeout(resolve, args.ms));
230
- return formatResponse({
231
- success: true,
232
- waited: 'time',
233
- ms: args.ms,
212
+ return withDiagnosticsResponse(unifiedSession, args.diagnostics, async () => {
213
+ await new Promise((resolve) => setTimeout(resolve, args.ms));
214
+ return {
215
+ success: true,
216
+ waited: 'time',
217
+ ms: args.ms,
218
+ };
234
219
  });
235
220
  }
236
221
  case 'idle': {
237
- const diagnosticsStart = args.diagnostics
238
- ? await captureDiagnosticsStart(unifiedSession)
239
- : undefined;
240
- if (mode === 'extension') {
241
- // Extension 模式:readyState complete + DOM mutation 静默检测
242
- const idleStart = Date.now();
243
- const quietPeriod = args.ms ?? 500;
244
- let idleCompleted = false;
245
- let idleLastError = null;
246
- // Phase 1: 等待 readyState === 'complete'
247
- while (Date.now() - idleStart < timeout) {
248
- if (!unifiedSession.isExtensionConnected()) {
249
- idleLastError = new Error('Extension 未连接');
250
- await new Promise((resolve) => setTimeout(resolve, POLL_INTERVAL));
251
- continue;
252
- }
253
- try {
254
- const remaining = timeout - (Date.now() - idleStart);
255
- const readyState = await unifiedSession.evaluate('document.readyState', undefined, remaining);
222
+ return withDiagnosticsResponse(unifiedSession, args.diagnostics, async () => {
223
+ if (mode === 'extension') {
224
+ // Extension 模式:readyState complete + DOM mutation 静默检测
225
+ const idleStart = Date.now();
226
+ const quietPeriod = args.ms ?? 500;
227
+ let idleCompleted = false;
228
+ let idleLastError = null;
229
+ // Phase 1: 等待 readyState === 'complete'
230
+ while (Date.now() - idleStart < timeout) {
256
231
  if (!unifiedSession.isExtensionConnected()) {
257
- idleLastError = new Error('Extension 在 evaluate 期间断开');
258
- await new Promise((resolve) => setTimeout(resolve, POLL_INTERVAL));
232
+ idleLastError = new Error('Extension 未连接');
233
+ await sleepWithinBudget(idleStart, timeout, POLL_INTERVAL);
259
234
  continue;
260
235
  }
261
- if (readyState === 'complete') {
262
- idleCompleted = true;
263
- break;
236
+ try {
237
+ const remaining = timeout - (Date.now() - idleStart);
238
+ const readyState = await unifiedSession.evaluate('document.readyState', undefined, remaining);
239
+ if (!unifiedSession.isExtensionConnected()) {
240
+ idleLastError = new Error('Extension 在 evaluate 期间断开');
241
+ await sleepWithinBudget(idleStart, timeout, POLL_INTERVAL);
242
+ continue;
243
+ }
244
+ if (readyState === 'complete') {
245
+ idleCompleted = true;
246
+ break;
247
+ }
248
+ }
249
+ catch (err) {
250
+ idleLastError = err instanceof Error ? err : new Error(String(err));
264
251
  }
252
+ await sleepWithinBudget(idleStart, timeout, POLL_INTERVAL);
265
253
  }
266
- catch (err) {
267
- idleLastError = err instanceof Error ? err : new Error(String(err));
254
+ if (!idleCompleted) {
255
+ const msg = `等待页面加载超时 (${timeout}ms)`;
256
+ throw new TimeoutError(idleLastError ? `${msg}: ${idleLastError.message}` : msg);
268
257
  }
269
- await new Promise((resolve) => setTimeout(resolve, POLL_INTERVAL));
270
- }
271
- if (!idleCompleted) {
272
- const msg = `等待页面加载超时 (${timeout}ms)`;
273
- throw new TimeoutError(idleLastError ? `${msg}: ${idleLastError.message}` : msg);
274
- }
275
- // Phase 2: DOM mutation 静默检测
276
- // 注入 MutationObserver,等待 quietPeriod 毫秒内无 DOM 变更
277
- const mutationRemaining = timeout - (Date.now() - idleStart);
278
- const scriptTimeout = mutationRemaining - POLL_INTERVAL;
279
- if (scriptTimeout > quietPeriod) {
280
- try {
281
- const domStable = await new Promise((resolve, reject) => {
282
- let settled = false;
283
- const timer = setTimeout(() => {
284
- settled = true;
285
- resolve(false);
286
- }, scriptTimeout);
287
- unifiedSession
288
- .evaluate(`(function(quietMs, timeoutMs) {
258
+ // Phase 2: DOM mutation 静默检测
259
+ // 注入 MutationObserver,等待 quietPeriod 毫秒内无 DOM 变更
260
+ const mutationRemaining = timeout - (Date.now() - idleStart);
261
+ const scriptTimeout = mutationRemaining - POLL_INTERVAL;
262
+ if (scriptTimeout > quietPeriod) {
263
+ try {
264
+ const domStable = await new Promise((resolve, reject) => {
265
+ let settled = false;
266
+ const timer = setTimeout(() => {
267
+ settled = true;
268
+ resolve(false);
269
+ }, scriptTimeout);
270
+ unifiedSession
271
+ .evaluate(`(function(quietMs, timeoutMs) {
289
272
  return new Promise(function(resolve) {
290
273
  var target = document.documentElement || document.body;
291
274
  if (!target) {
@@ -330,58 +313,50 @@ async function handleWait(args) {
330
313
  setTimeout(check, quietMs);
331
314
  });
332
315
  })`, undefined, mutationRemaining, [quietPeriod, scriptTimeout])
333
- .then((value) => {
334
- if (settled) {
335
- return;
336
- }
337
- settled = true;
338
- clearTimeout(timer);
339
- resolve(value);
340
- })
341
- .catch((err) => {
342
- if (settled) {
343
- return;
344
- }
345
- settled = true;
346
- clearTimeout(timer);
347
- reject(err);
316
+ .then((value) => {
317
+ if (settled) {
318
+ return;
319
+ }
320
+ settled = true;
321
+ clearTimeout(timer);
322
+ resolve(value);
323
+ })
324
+ .catch((err) => {
325
+ if (settled) {
326
+ return;
327
+ }
328
+ settled = true;
329
+ clearTimeout(timer);
330
+ reject(err);
331
+ });
348
332
  });
349
- });
350
- if (!domStable) {
351
- throw new TimeoutError(`等待页面 idle 超时 (${timeout}ms): DOM 未达到 ${quietPeriod}ms 静默`);
333
+ if (!domStable) {
334
+ throw new TimeoutError(`等待页面 idle 超时 (${timeout}ms): DOM 未达到 ${quietPeriod}ms 静默`);
335
+ }
336
+ return {
337
+ success: true,
338
+ waited: 'idle',
339
+ domStable,
340
+ mode,
341
+ };
352
342
  }
353
- return formatResponse({
354
- success: true,
355
- waited: 'idle',
356
- domStable,
357
- mode,
358
- ...(diagnosticsStart
359
- ? {
360
- diagnostics: await captureDiagnosticsDelta(unifiedSession, diagnosticsStart),
361
- }
362
- : {}),
363
- });
364
- }
365
- catch (err) {
366
- if (err instanceof TimeoutError) {
367
- throw err;
343
+ catch (err) {
344
+ if (err instanceof TimeoutError) {
345
+ throw err;
346
+ }
347
+ const message = err instanceof Error ? err.message : String(err);
348
+ throw new TimeoutError(`等待页面 idle 超时 (${timeout}ms): ${message}`);
368
349
  }
369
- const message = err instanceof Error ? err.message : String(err);
370
- throw new TimeoutError(`等待页面 idle 超时 (${timeout}ms): ${message}`);
371
350
  }
351
+ throw new TimeoutError(`等待页面 idle 超时 (${timeout}ms): 剩余时间不足以完成 ${quietPeriod}ms DOM 静默检测`);
372
352
  }
373
- throw new TimeoutError(`等待页面 idle 超时 (${timeout}ms): 剩余时间不足以完成 ${quietPeriod}ms DOM 静默检测`);
374
- }
375
- // CDP 模式
376
- const session = getSession();
377
- await waitForNetworkIdle(session, timeout);
378
- return formatResponse({
379
- success: true,
380
- waited: 'idle',
381
- mode,
382
- ...(diagnosticsStart
383
- ? { diagnostics: await captureDiagnosticsDelta(unifiedSession, diagnosticsStart) }
384
- : {}),
353
+ const session = getSession();
354
+ await waitForNetworkIdle(session, timeout);
355
+ return {
356
+ success: true,
357
+ waited: 'idle',
358
+ mode,
359
+ };
385
360
  });
386
361
  }
387
362
  default:
@@ -410,27 +385,38 @@ async function handleWait(args) {
410
385
  /**
411
386
  * Extension 模式:等待元素
412
387
  */
413
- async function waitForElementExtension(unifiedSession, target, state, timeout) {
388
+ async function waitForElementExtension(unifiedSession, target, state, timeout, frame) {
414
389
  const startTime = Date.now();
415
390
  const retryDelay = POLL_INTERVAL;
416
391
  const { selector, text, xpath, nth: nthParam } = targetToFindParams(target);
417
392
  const nth = nthParam ?? 0;
418
393
  let lastError = null;
394
+ let matchCount = 0;
395
+ let candidates = [];
419
396
  while (true) {
420
397
  const elapsed = Date.now() - startTime;
421
398
  if (elapsed >= timeout) {
422
- const msg = `等待元素 ${JSON.stringify(target)} 状态 ${state} 超时 (${timeout}ms)`;
423
- throw new TimeoutError(lastError ? `${msg}: ${lastError.message}` : msg);
399
+ throw new TargetTimeoutError(await buildTargetDiagnostics(unifiedSession, target, {
400
+ nth,
401
+ timeout,
402
+ frame,
403
+ matchCount,
404
+ lastState: state,
405
+ lastError,
406
+ candidates,
407
+ }));
424
408
  }
425
409
  // 未连接时跳过 find(),避免阻塞超出用户 timeout
426
410
  if (!unifiedSession.isExtensionConnected()) {
427
411
  lastError = new Error('Extension 未连接');
428
- await new Promise((resolve) => setTimeout(resolve, retryDelay));
412
+ await sleepWithinBudget(startTime, timeout, retryDelay);
429
413
  continue;
430
414
  }
431
415
  try {
432
416
  const remaining = timeout - elapsed;
433
417
  const elements = await unifiedSession.find(selector, text, xpath, remaining);
418
+ matchCount = elements.length;
419
+ candidates = elements;
434
420
  const found = elements.length > nth;
435
421
  switch (state) {
436
422
  case 'attached':
@@ -469,12 +455,12 @@ async function waitForElementExtension(unifiedSession, target, state, timeout) {
469
455
  if (err instanceof Error &&
470
456
  /Request timeout|Failed to send|disconnect|未连接|stopped|replaced/i.test(err.message)) {
471
457
  lastError = err;
472
- await new Promise((resolve) => setTimeout(resolve, retryDelay));
458
+ await sleepWithinBudget(startTime, timeout, retryDelay);
473
459
  continue;
474
460
  }
475
461
  throw err;
476
462
  }
477
- await new Promise((resolve) => setTimeout(resolve, retryDelay));
463
+ await sleepWithinBudget(startTime, timeout, retryDelay);
478
464
  }
479
465
  }
480
466
  /**
@@ -532,7 +518,7 @@ async function waitForElement(session, target, state, timeout) {
532
518
  }
533
519
  // 继续等待
534
520
  }
535
- await new Promise((resolve) => setTimeout(resolve, retryDelay));
521
+ await sleepWithinBudget(startTime, timeout, retryDelay);
536
522
  }
537
523
  throw new TimeoutError(`等待元素 ${JSON.stringify(target)} 状态 ${state} 超时 (${timeout}ms)`);
538
524
  }
@@ -1 +1 @@
1
- {"version":3,"file":"wait.js","sourceRoot":"","sources":["../../src/tools/wait.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wait.js","sourceRoot":"","sources":["../../src/tools/wait.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ (function(){//#region src/content/content.ts
2
+ window.__mcpElementMap = window.__mcpElementMap || {};
3
+ window.__mcpRefCounter = window.__mcpRefCounter || 0;
4
+ console.log("[MCP] Content script loaded");
5
+ //#endregion
6
+ })()