@pyrokine/mcp-chrome 2.0.1 → 2.1.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 (75) hide show
  1. package/README.md +87 -43
  2. package/dist/core/browser-driver.d.ts +118 -1
  3. package/dist/core/browser-driver.d.ts.map +1 -1
  4. package/dist/core/browser-driver.js +11 -0
  5. package/dist/core/browser-driver.js.map +1 -1
  6. package/dist/core/error-sanitizer.js +2 -2
  7. package/dist/core/error-sanitizer.js.map +1 -1
  8. package/dist/core/errors.d.ts.map +1 -1
  9. package/dist/core/errors.js +17 -4
  10. package/dist/core/errors.js.map +1 -1
  11. package/dist/core/index.d.ts +1 -0
  12. package/dist/core/index.d.ts.map +1 -1
  13. package/dist/core/index.js +1 -0
  14. package/dist/core/index.js.map +1 -1
  15. package/dist/core/locator.d.ts.map +1 -1
  16. package/dist/core/locator.js +4 -3
  17. package/dist/core/locator.js.map +1 -1
  18. package/dist/core/session.d.ts +5 -2
  19. package/dist/core/session.d.ts.map +1 -1
  20. package/dist/core/session.js +107 -4
  21. package/dist/core/session.js.map +1 -1
  22. package/dist/core/types.d.ts +17 -1
  23. package/dist/core/types.d.ts.map +1 -1
  24. package/dist/core/types.js +57 -4
  25. package/dist/core/types.js.map +1 -1
  26. package/dist/core/unified-session.d.ts +29 -9
  27. package/dist/core/unified-session.d.ts.map +1 -1
  28. package/dist/core/unified-session.js +226 -18
  29. package/dist/core/unified-session.js.map +1 -1
  30. package/dist/core/utils.d.ts +13 -0
  31. package/dist/core/utils.d.ts.map +1 -1
  32. package/dist/core/utils.js +121 -0
  33. package/dist/core/utils.js.map +1 -1
  34. package/dist/extension/bridge.d.ts +37 -22
  35. package/dist/extension/bridge.d.ts.map +1 -1
  36. package/dist/extension/bridge.js +256 -96
  37. package/dist/extension/bridge.js.map +1 -1
  38. package/dist/extension/http-server.d.ts.map +1 -1
  39. package/dist/extension/http-server.js +39 -10
  40. package/dist/extension/http-server.js.map +1 -1
  41. package/dist/tools/browse.d.ts.map +1 -1
  42. package/dist/tools/browse.js +160 -55
  43. package/dist/tools/browse.js.map +1 -1
  44. package/dist/tools/cookies.d.ts.map +1 -1
  45. package/dist/tools/cookies.js +8 -11
  46. package/dist/tools/cookies.js.map +1 -1
  47. package/dist/tools/evaluate.d.ts.map +1 -1
  48. package/dist/tools/evaluate.js +53 -30
  49. package/dist/tools/evaluate.js.map +1 -1
  50. package/dist/tools/extract.d.ts +1 -0
  51. package/dist/tools/extract.d.ts.map +1 -1
  52. package/dist/tools/extract.js +476 -244
  53. package/dist/tools/extract.js.map +1 -1
  54. package/dist/tools/input.d.ts.map +1 -1
  55. package/dist/tools/input.js +798 -441
  56. package/dist/tools/input.js.map +1 -1
  57. package/dist/tools/logs.d.ts.map +1 -1
  58. package/dist/tools/logs.js +79 -31
  59. package/dist/tools/logs.js.map +1 -1
  60. package/dist/tools/manage.d.ts +0 -3
  61. package/dist/tools/manage.d.ts.map +1 -1
  62. package/dist/tools/manage.js +339 -285
  63. package/dist/tools/manage.js.map +1 -1
  64. package/dist/tools/png.d.ts +16 -0
  65. package/dist/tools/png.d.ts.map +1 -0
  66. package/dist/tools/png.js +197 -0
  67. package/dist/tools/png.js.map +1 -0
  68. package/dist/tools/schema.d.ts +14 -112
  69. package/dist/tools/schema.d.ts.map +1 -1
  70. package/dist/tools/schema.js +21 -12
  71. package/dist/tools/schema.js.map +1 -1
  72. package/dist/tools/wait.d.ts.map +1 -1
  73. package/dist/tools/wait.js +73 -13
  74. package/dist/tools/wait.js.map +1 -1
  75. package/package.json +11 -11
@@ -7,10 +7,8 @@
7
7
  * - delete: 删除指定 cookie
8
8
  * - clear: 清空 cookies(支持按域名过滤)
9
9
  */
10
- import { writeFile } from 'fs/promises';
11
- import { resolve, sep } from 'path';
12
10
  import { z } from 'zod';
13
- import { formatErrorResponse, formatResponse, getUnifiedSession } from '../core/index.js';
11
+ import { CWD_PATH_PREFIX, formatErrorResponse, formatResponse, getUnifiedSession, resolveScopedOutputPath, TMP_PATH_PREFIX, writePrivateFile, } from '../core/index.js';
14
12
  /**
15
13
  * cookies 参数 schema
16
14
  */
@@ -26,7 +24,10 @@ const cookiesSchema = z.object({
26
24
  httpOnly: z.boolean().optional().describe('httpOnly 属性(set)'),
27
25
  sameSite: z.enum(['Strict', 'Lax', 'None']).optional().describe('SameSite 属性(set)'),
28
26
  expirationDate: z.number().optional().describe('过期时间戳(set)'),
29
- output: z.string().optional().describe('输出文件路径(get),若指定 cookies 导出为 JSON 文件'),
27
+ output: z
28
+ .string()
29
+ .optional()
30
+ .describe(`输出文件路径(get),相对路径默认写入 ${TMP_PATH_PREFIX},持久化到仓库请显式写 ${CWD_PATH_PREFIX}`),
30
31
  });
31
32
  /**
32
33
  * cookies 工具处理器
@@ -58,16 +59,12 @@ async function handleCookies(args) {
58
59
  }
59
60
  const cookies = (await unifiedSession.getCookies(filter));
60
61
  if (args.output) {
61
- const cwd = process.cwd();
62
- const safeOutput = resolve(cwd, args.output);
63
- if (!safeOutput.startsWith(cwd + sep) && safeOutput !== cwd) {
64
- return formatErrorResponse(new Error(`output 路径超出工作目录范围: ${args.output}`));
65
- }
66
- await writeFile(safeOutput, JSON.stringify(cookies, null, 2), 'utf-8');
62
+ const outputPath = (await resolveScopedOutputPath(args.output, 'mcp-chrome')).absolutePath;
63
+ await writePrivateFile(outputPath, JSON.stringify(cookies, null, 2), 'utf-8');
67
64
  return formatResponse({
68
65
  success: true,
69
66
  action: 'get',
70
- output: safeOutput,
67
+ output: outputPath,
71
68
  count: cookies.length,
72
69
  });
73
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cookies.js","sourceRoot":"","sources":["../../src/tools/cookies.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cookies.js","sourceRoot":"","sources":["../../src/tools/cookies.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"evaluate.d.ts","sourceRoot":"","sources":["../../src/tools/evaluate.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAmJxE;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAS5D"}
1
+ {"version":3,"file":"evaluate.d.ts","sourceRoot":"","sources":["../../src/tools/evaluate.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AA0MxE;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAS5D"}
@@ -3,12 +3,9 @@
3
3
  *
4
4
  * 在页面上下文执行 JavaScript
5
5
  */
6
- import { randomUUID } from 'crypto';
7
- import { readFile, writeFile } from 'fs/promises';
8
- import { tmpdir } from 'os';
9
- import { join, resolve, sep } from 'path';
6
+ import { readFile } from 'fs/promises';
10
7
  import { z } from 'zod';
11
- import { formatErrorResponse, formatResponse, getUnifiedSession } from '../core/index.js';
8
+ import { CWD_PATH_PREFIX, formatErrorResponse, formatResponse, getUnifiedSession, resolveScopedInputPath, resolveScopedOutputPath, TMP_PATH_PREFIX, writePrivateFile, } from '../core/index.js';
12
9
  /**
13
10
  * evaluate 参数 schema
14
11
  */
@@ -17,7 +14,7 @@ const evaluateSchema = z.object({
17
14
  scriptFile: z
18
15
  .string()
19
16
  .optional()
20
- .describe('从文件读取 JavaScript 代码(与 script 二选一),指定后忽略 script 参数,路径限制在当前工作目录内'),
17
+ .describe(`从文件读取 JavaScript 代码(与 script 二选一),相对路径默认从 ${TMP_PATH_PREFIX} 解析,仓库内文件请显式写 ${CWD_PATH_PREFIX}`),
21
18
  args: z
22
19
  .array(z.unknown())
23
20
  .optional()
@@ -25,7 +22,7 @@ const evaluateSchema = z.object({
25
22
  output: z
26
23
  .string()
27
24
  .optional()
28
- .describe('输出文件路径(可选),若指定字符串结果直接写入原始文本,其他类型序列化为 JSON'),
25
+ .describe(`输出文件路径(可选),相对路径默认写入 ${TMP_PATH_PREFIX},持久化到仓库请显式写 ${CWD_PATH_PREFIX},字符串结果直接写原始文本,其他类型写 JSON`),
29
26
  timeout: z
30
27
  .number()
31
28
  .optional()
@@ -34,6 +31,7 @@ const evaluateSchema = z.object({
34
31
  .enum(['stealth', 'precise'])
35
32
  .optional()
36
33
  .describe('执行模式,precise(默认)使用 debugger API,可绕过 CSP;stealth 使用 JS 注入,不触发调试提示但受 CSP 限制'),
34
+ diagnostics: z.boolean().optional().describe('执行后返回新增 console error/warning 和失败网络请求摘要'),
37
35
  tabId: z
38
36
  .string()
39
37
  .optional()
@@ -43,30 +41,46 @@ const evaluateSchema = z.object({
43
41
  .optional()
44
42
  .describe('iframe 定位(可选,仅 Extension 模式),CSS 选择器(如 "iframe#main")或索引(如 0),不指定则在主框架执行'),
45
43
  });
46
- /**
47
- * evaluate 工具处理器
48
- */
44
+ async function captureDiagnosticsStart(unifiedSession) {
45
+ await unifiedSession.enableConsole();
46
+ await unifiedSession.enableNetwork();
47
+ const consoleLogs = await unifiedSession.getConsoleLogs();
48
+ const network = await unifiedSession.getNetworkRequests();
49
+ return { consoleCount: consoleLogs.length, networkCount: network.length };
50
+ }
51
+ async function captureDiagnosticsDelta(unifiedSession, start) {
52
+ const consoleLogs = await unifiedSession.getConsoleLogs();
53
+ const network = await unifiedSession.getNetworkRequests();
54
+ return {
55
+ console: consoleLogs
56
+ .slice(start.consoleCount)
57
+ .filter((item) => ['error', 'warning', 'warn'].includes(item.level))
58
+ .slice(-20),
59
+ failedRequests: network
60
+ .slice(start.networkCount)
61
+ .filter((item) => item.errorText || (item.status !== undefined && item.status >= 400))
62
+ .slice(-20),
63
+ };
64
+ }
49
65
  async function handleEvaluate(args) {
50
66
  // 输入校验:在 try 外提前返回,避免 throw-catch-in-place
51
67
  let script = args.script;
52
- const cwd = process.cwd();
68
+ let outputPath;
53
69
  if (args.scriptFile) {
54
- const safePath = resolve(cwd, args.scriptFile);
55
- // 用尾部分隔符确保是路径边界,防止前缀同名目录绕过(如 ../cwd-evil/x.js)
56
- if (!safePath.startsWith(cwd + sep) && safePath !== cwd) {
57
- return formatErrorResponse(new Error(`scriptFile 路径超出工作目录范围: ${args.scriptFile}`));
58
- }
59
70
  try {
60
- script = await readFile(safePath, 'utf-8');
71
+ const resolvedScriptFile = await resolveScopedInputPath(args.scriptFile, 'mcp-chrome');
72
+ script = await readFile(resolvedScriptFile.absolutePath, 'utf-8');
61
73
  }
62
74
  catch (error) {
63
75
  return formatErrorResponse(error);
64
76
  }
65
77
  }
66
78
  if (args.output) {
67
- const safeOutput = resolve(cwd, args.output);
68
- if (!safeOutput.startsWith(cwd + sep) && safeOutput !== cwd) {
69
- return formatErrorResponse(new Error(`output 路径超出工作目录范围: ${args.output}`));
79
+ try {
80
+ outputPath = (await resolveScopedOutputPath(args.output, 'mcp-chrome')).absolutePath;
81
+ }
82
+ catch (error) {
83
+ return formatErrorResponse(error);
70
84
  }
71
85
  }
72
86
  if (!script) {
@@ -76,34 +90,43 @@ async function handleEvaluate(args) {
76
90
  const unifiedSession = getUnifiedSession();
77
91
  return await unifiedSession.withTabId(args.tabId, async () => {
78
92
  return await unifiedSession.withFrame(args.frame, async () => {
93
+ const diagnosticsStart = args.diagnostics ? await captureDiagnosticsStart(unifiedSession) : undefined;
79
94
  const result = await unifiedSession.evaluate(script, args.mode, args.timeout, args.args);
80
95
  const normalizedResult = result === undefined ? null : result;
81
- if (args.output) {
82
- const safeOutput = resolve(cwd, args.output);
96
+ const diagnostics = diagnosticsStart
97
+ ? await captureDiagnosticsDelta(unifiedSession, diagnosticsStart)
98
+ : undefined;
99
+ if (outputPath) {
83
100
  // string 类型直接写入原始文本,其他类型 JSON 序列化
84
101
  const content = typeof result === 'string' ? result : JSON.stringify(normalizedResult, null, 2);
85
- await writeFile(safeOutput, content, 'utf-8');
102
+ await writePrivateFile(outputPath, content, 'utf-8');
86
103
  return formatResponse({
87
104
  success: true,
88
- output: safeOutput,
105
+ output: outputPath,
106
+ ...(diagnostics ? { diagnostics } : {}),
89
107
  });
90
108
  }
91
109
  const serialized = JSON.stringify({ success: true, result: normalizedResult }, null, 2);
92
- // 检测结果大小,超过 100KB 自动保存到文件
110
+ // 检测结果大小,超过 100KB 自动保存到受控临时目录
93
111
  if (serialized.length > 100_000) {
94
112
  const suffix = typeof result === 'string' ? 'txt' : 'json';
95
- const tmpPath = join(tmpdir(), `mcp-chrome-eval-${randomUUID()}.${suffix}`);
113
+ const autoSavedPath = (await resolveScopedOutputPath(`${TMP_PATH_PREFIX}evaluate/auto-${Date.now()}.${suffix}`, 'mcp-chrome')).absolutePath;
96
114
  const fileContent = typeof result === 'string' ? result : JSON.stringify(normalizedResult, null, 2);
97
- await writeFile(tmpPath, fileContent, 'utf-8');
115
+ await writePrivateFile(autoSavedPath, fileContent, 'utf-8');
98
116
  return formatResponse({
99
117
  success: true,
100
118
  autoSaved: true,
101
- path: tmpPath,
119
+ path: autoSavedPath,
102
120
  size: fileContent.length,
103
- hint: '结果过大已自动保存到文件,请使用 Read 工具读取',
121
+ hint: '结果过大已自动保存到受控临时目录,请使用 Read 工具读取',
122
+ ...(diagnostics ? { diagnostics } : {}),
104
123
  });
105
124
  }
106
- return formatResponse({ success: true, result: normalizedResult });
125
+ return formatResponse({
126
+ success: true,
127
+ result: normalizedResult,
128
+ ...(diagnostics ? { diagnostics } : {}),
129
+ });
107
130
  });
108
131
  }); // withTabId
109
132
  }
@@ -1 +1 @@
1
- {"version":3,"file":"evaluate.js","sourceRoot":"","sources":["../../src/tools/evaluate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evaluate.js","sourceRoot":"","sources":["../../src/tools/evaluate.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EACH,eAAe,EACf,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,sBAAsB,EACtB,uBAAuB,EACvB,eAAe,EACf,gBAAgB,GACnB,MAAM,kBAAkB,CAAA;AAEzB;;GAEG;AACH,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IACzE,UAAU,EAAE,CAAC;SACR,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACL,6CAA6C,eAAe,iBAAiB,eAAe,EAAE,CACjG;IACL,IAAI,EAAE,CAAC;SACF,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;SAClB,QAAQ,EAAE;SACV,QAAQ,CAAC,iEAAiE,CAAC;IAChF,MAAM,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACL,uBAAuB,eAAe,eAAe,eAAe,0BAA0B,CACjG;IACL,OAAO,EAAE,CAAC;SACL,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,gDAAgD,CAAC;IAC/D,IAAI,EAAE,CAAC;SACF,IAAI,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;SAC5B,QAAQ,EAAE;SACV,QAAQ,CACL,2EAA2E,CAC9E;IACL,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;IACvF,KAAK,EAAE,CAAC;SACH,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACL,sFAAsF,CACzF;IACL,KAAK,EAAE,CAAC;SACH,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;SAC/B,QAAQ,EAAE;SACV,QAAQ,CACL,0EAA0E,CAC7E;CACR,CAAC,CAAA;AAUF,KAAK,UAAU,uBAAuB,CAClC,cAAoD;IAEpD,MAAM,cAAc,CAAC,aAAa,EAAE,CAAA;IACpC,MAAM,cAAc,CAAC,aAAa,EAAE,CAAA;IACpC,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,cAAc,EAAE,CAAA;IACzD,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,kBAAkB,EAAE,CAAA;IACzD,OAAO,EAAE,YAAY,EAAE,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,MAAM,EAAE,CAAA;AAC7E,CAAC;AAED,KAAK,UAAU,uBAAuB,CAClC,cAAoD,EACpD,KAAuB;IAEvB,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,cAAc,EAAE,CAAA;IACzD,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,kBAAkB,EAAE,CAAA;IACzD,OAAO;QACH,OAAO,EAAE,WAAW;aACf,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC;aACzB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACnE,KAAK,CAAC,CAAC,EAAE,CAAC;QACf,cAAc,EAAE,OAAO;aAClB,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC;aACzB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC;aACrF,KAAK,CAAC,CAAC,EAAE,CAAC;KAClB,CAAA;AACL,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,IAAoC;IAI9D,2CAA2C;IAC3C,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;IACxB,IAAI,UAA8B,CAAA;IAClC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC;YACD,MAAM,kBAAkB,GAAG,MAAM,sBAAsB,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;YACtF,MAAM,GAAG,MAAM,QAAQ,CAAC,kBAAkB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QACrE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAA;QACrC,CAAC;IACL,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,IAAI,CAAC;YACD,UAAU,GAAG,CAAC,MAAM,uBAAuB,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,YAAY,CAAA;QACxF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAA;QACrC,CAAC;IACL,CAAC;IACD,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,OAAO,mBAAmB,CAAC,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC,CAAA;IACvE,CAAC;IAED,IAAI,CAAC;QACD,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAA;QAE1C,OAAO,MAAM,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE;YACzD,OAAO,MAAM,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE;gBACzD,MAAM,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,uBAAuB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;gBACrG,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAiB,CAAC,CAAA;gBACrG,MAAM,gBAAgB,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAA;gBAC7D,MAAM,WAAW,GAAG,gBAAgB;oBAChC,CAAC,CAAC,MAAM,uBAAuB,CAAC,cAAc,EAAE,gBAAgB,CAAC;oBACjE,CAAC,CAAC,SAAS,CAAA;gBAEf,IAAI,UAAU,EAAE,CAAC;oBACb,kCAAkC;oBAClC,MAAM,OAAO,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;oBAC/F,MAAM,gBAAgB,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;oBACpD,OAAO,cAAc,CAAC;wBAClB,OAAO,EAAE,IAAI;wBACb,MAAM,EAAE,UAAU;wBAClB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBAC1C,CAAC,CAAA;gBACN,CAAC;gBAED,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;gBACvF,8BAA8B;gBAC9B,IAAI,UAAU,CAAC,MAAM,GAAG,OAAO,EAAE,CAAC;oBAC9B,MAAM,MAAM,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAA;oBAC1D,MAAM,aAAa,GAAG,CAClB,MAAM,uBAAuB,CACzB,GAAG,eAAe,iBAAiB,IAAI,CAAC,GAAG,EAAE,IAAI,MAAM,EAAE,EACzD,YAAY,CACf,CACJ,CAAC,YAAY,CAAA;oBACd,MAAM,WAAW,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;oBACnG,MAAM,gBAAgB,CAAC,aAAa,EAAE,WAAW,EAAE,OAAO,CAAC,CAAA;oBAC3D,OAAO,cAAc,CAAC;wBAClB,OAAO,EAAE,IAAI;wBACb,SAAS,EAAE,IAAI;wBACf,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,WAAW,CAAC,MAAM;wBACxB,IAAI,EAAE,gCAAgC;wBACtC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBAC1C,CAAC,CAAA;gBACN,CAAC;gBAED,OAAO,cAAc,CAAC;oBAClB,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,gBAAgB;oBACxB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC1C,CAAC,CAAA;YACN,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CAAA,CAAC,YAAY;IACnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,4BAA4B;QAC5B,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC3E,IACI,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC5B,YAAY,CAAC,QAAQ,CAAC,yBAAyB,CAAC;YAChD,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,EACtC,CAAC;YACC,OAAO;gBACH,OAAO,EAAE;oBACL;wBACI,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;4BACjB,KAAK,EAAE;gCACH,IAAI,EAAE,aAAa;gCACnB,OAAO,EAAE,oBAAoB;gCAC7B,UAAU,EAAE,sDAAsD;6BACrE;yBACJ,CAAC;qBACL;iBACJ;gBACD,OAAO,EAAE,IAAI;aAChB,CAAA;QACL,CAAC;QACD,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAA;IACrC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAiB;IAClD,MAAM,CAAC,YAAY,CACf,UAAU,EACV;QACI,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE,cAAc;KAC9B,EACD,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,CACjC,CAAA;AACL,CAAC"}
@@ -4,6 +4,7 @@
4
4
  * 提取页面内容:
5
5
  * - text: 文本内容
6
6
  * - html: HTML 源码(可选附带图片元信息或图片数据)
7
+ * - frameHtml: iframe HTML 源码(Extension 模式,支持跨域 iframe)
7
8
  * - attribute: 元素属性
8
9
  * - screenshot: 截图
9
10
  * - state: 页面状态(精简的可交互元素列表)
@@ -1 +1 @@
1
- {"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../../src/tools/extract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAwlCxE;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAS3D"}
1
+ {"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../../src/tools/extract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAo5CxE;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAS3D"}