@dyyz1993/agent-browser 0.28.0 → 0.29.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.
Files changed (209) hide show
  1. package/dist/actions/context.d.ts +4 -0
  2. package/dist/actions/context.d.ts.map +1 -1
  3. package/dist/actions/context.js +41 -1
  4. package/dist/actions/context.js.map +1 -1
  5. package/dist/actions/index.d.ts.map +1 -1
  6. package/dist/actions/index.js +164 -297
  7. package/dist/actions/index.js.map +1 -1
  8. package/dist/actions/interaction.d.ts.map +1 -1
  9. package/dist/actions/interaction.js +96 -30
  10. package/dist/actions/interaction.js.map +1 -1
  11. package/dist/actions/touch.d.ts +25 -0
  12. package/dist/actions/touch.d.ts.map +1 -0
  13. package/dist/actions/touch.js +114 -0
  14. package/dist/actions/touch.js.map +1 -0
  15. package/dist/browser/browser-manager.d.ts +15 -0
  16. package/dist/browser/browser-manager.d.ts.map +1 -1
  17. package/dist/browser/browser-manager.js +75 -7
  18. package/dist/browser/browser-manager.js.map +1 -1
  19. package/dist/browser/network-analysis.d.ts +65 -0
  20. package/dist/browser/network-analysis.d.ts.map +1 -0
  21. package/dist/browser/network-analysis.js +359 -0
  22. package/dist/browser/network-analysis.js.map +1 -0
  23. package/dist/browser/network-tracker.d.ts +4 -0
  24. package/dist/browser/network-tracker.d.ts.map +1 -1
  25. package/dist/browser/network-tracker.js +41 -0
  26. package/dist/browser/network-tracker.js.map +1 -1
  27. package/dist/browser/popup-detector.d.ts +22 -0
  28. package/dist/browser/popup-detector.d.ts.map +1 -0
  29. package/dist/browser/popup-detector.js +138 -0
  30. package/dist/browser/popup-detector.js.map +1 -0
  31. package/dist/cli/commands/index.d.ts +5 -0
  32. package/dist/cli/commands/index.d.ts.map +1 -0
  33. package/dist/cli/commands/index.js +219 -0
  34. package/dist/cli/commands/index.js.map +1 -0
  35. package/dist/cli/commands/interact.d.ts +7 -0
  36. package/dist/cli/commands/interact.d.ts.map +1 -0
  37. package/dist/cli/commands/interact.js +371 -0
  38. package/dist/cli/commands/interact.js.map +1 -0
  39. package/dist/cli/commands/navigate.d.ts +4 -0
  40. package/dist/cli/commands/navigate.d.ts.map +1 -0
  41. package/dist/cli/commands/navigate.js +46 -0
  42. package/dist/cli/commands/navigate.js.map +1 -0
  43. package/dist/cli/commands/network.d.ts +3 -0
  44. package/dist/cli/commands/network.d.ts.map +1 -0
  45. package/dist/cli/commands/network.js +292 -0
  46. package/dist/cli/commands/network.js.map +1 -0
  47. package/dist/cli/commands/plugin.d.ts +3 -0
  48. package/dist/cli/commands/plugin.d.ts.map +1 -0
  49. package/dist/cli/commands/plugin.js +84 -0
  50. package/dist/cli/commands/plugin.js.map +1 -0
  51. package/dist/cli/commands/query.d.ts +7 -0
  52. package/dist/cli/commands/query.d.ts.map +1 -0
  53. package/dist/cli/commands/query.js +333 -0
  54. package/dist/cli/commands/query.js.map +1 -0
  55. package/dist/cli/commands/session.d.ts +3 -0
  56. package/dist/cli/commands/session.d.ts.map +1 -0
  57. package/dist/cli/commands/session.js +372 -0
  58. package/dist/cli/commands/session.js.map +1 -0
  59. package/dist/cli/commands/shared.d.ts +24 -0
  60. package/dist/cli/commands/shared.d.ts.map +1 -0
  61. package/dist/cli/commands/shared.js +113 -0
  62. package/dist/cli/commands/shared.js.map +1 -0
  63. package/dist/cli/commands.d.ts +1 -7
  64. package/dist/cli/commands.d.ts.map +1 -1
  65. package/dist/cli/commands.js +1 -1684
  66. package/dist/cli/commands.js.map +1 -1
  67. package/dist/cli/connection.d.ts.map +1 -1
  68. package/dist/cli/connection.js +9 -1
  69. package/dist/cli/connection.js.map +1 -1
  70. package/dist/cli/help.d.ts.map +1 -1
  71. package/dist/cli/help.js +1 -24
  72. package/dist/cli/help.js.map +1 -1
  73. package/dist/cli.js +2 -2
  74. package/dist/cli.js.map +1 -1
  75. package/dist/daemon.d.ts.map +1 -1
  76. package/dist/daemon.js +21 -1
  77. package/dist/daemon.js.map +1 -1
  78. package/dist/diff.d.ts +4 -0
  79. package/dist/diff.d.ts.map +1 -1
  80. package/dist/diff.js +16 -0
  81. package/dist/diff.js.map +1 -1
  82. package/dist/flow/exporters/cypress.js +1 -1
  83. package/dist/flow/exporters/cypress.js.map +1 -1
  84. package/dist/flow/exporters/selenium.js +1 -1
  85. package/dist/flow/exporters/selenium.js.map +1 -1
  86. package/dist/openapi.d.ts.map +1 -1
  87. package/dist/openapi.js +2 -1
  88. package/dist/openapi.js.map +1 -1
  89. package/dist/plugins/registry.d.ts.map +1 -1
  90. package/dist/plugins/registry.js +4 -1
  91. package/dist/plugins/registry.js.map +1 -1
  92. package/dist/plugins/types.d.ts +4 -4
  93. package/dist/plugins/types.d.ts.map +1 -1
  94. package/dist/protocol.d.ts.map +1 -1
  95. package/dist/protocol.js +30 -7
  96. package/dist/protocol.js.map +1 -1
  97. package/dist/snapshot/constants.d.ts +6 -0
  98. package/dist/snapshot/constants.d.ts.map +1 -0
  99. package/dist/snapshot/constants.js +77 -0
  100. package/dist/snapshot/constants.js.map +1 -0
  101. package/dist/snapshot/dom-scripts.d.ts +12 -0
  102. package/dist/snapshot/dom-scripts.d.ts.map +1 -0
  103. package/dist/snapshot/dom-scripts.js +438 -0
  104. package/dist/snapshot/dom-scripts.js.map +1 -0
  105. package/dist/snapshot/format.d.ts +13 -0
  106. package/dist/snapshot/format.d.ts.map +1 -0
  107. package/dist/snapshot/format.js +175 -0
  108. package/dist/snapshot/format.js.map +1 -0
  109. package/dist/snapshot/index.d.ts +6 -0
  110. package/dist/snapshot/index.d.ts.map +1 -0
  111. package/dist/snapshot/index.js +5 -0
  112. package/dist/snapshot/index.js.map +1 -0
  113. package/dist/snapshot/refs.d.ts +3 -0
  114. package/dist/snapshot/refs.d.ts.map +1 -0
  115. package/dist/snapshot/refs.js +8 -0
  116. package/dist/snapshot/refs.js.map +1 -0
  117. package/dist/snapshot/selectors.d.ts +17 -0
  118. package/dist/snapshot/selectors.d.ts.map +1 -0
  119. package/dist/snapshot/selectors.js +619 -0
  120. package/dist/snapshot/selectors.js.map +1 -0
  121. package/dist/snapshot/snapshot.d.ts +12 -0
  122. package/dist/snapshot/snapshot.d.ts.map +1 -0
  123. package/dist/snapshot/snapshot.js +104 -0
  124. package/dist/snapshot/snapshot.js.map +1 -0
  125. package/dist/snapshot/types.d.ts +27 -0
  126. package/dist/snapshot/types.d.ts.map +1 -0
  127. package/dist/snapshot/types.js +2 -0
  128. package/dist/snapshot/types.js.map +1 -0
  129. package/dist/snapshot.d.ts +1 -79
  130. package/dist/snapshot.d.ts.map +1 -1
  131. package/dist/snapshot.js +1 -1800
  132. package/dist/snapshot.js.map +1 -1
  133. package/dist/stream/client-state.d.ts +13 -0
  134. package/dist/stream/client-state.d.ts.map +1 -0
  135. package/dist/stream/client-state.js +2 -0
  136. package/dist/stream/client-state.js.map +1 -0
  137. package/dist/stream/element-utils.d.ts +8 -0
  138. package/dist/stream/element-utils.d.ts.map +1 -0
  139. package/dist/stream/element-utils.js +25 -0
  140. package/dist/stream/element-utils.js.map +1 -0
  141. package/dist/stream/frame-processor.d.ts +63 -0
  142. package/dist/stream/frame-processor.d.ts.map +1 -0
  143. package/dist/stream/frame-processor.js +178 -0
  144. package/dist/stream/frame-processor.js.map +1 -0
  145. package/dist/stream/index.d.ts +10 -0
  146. package/dist/stream/index.d.ts.map +1 -0
  147. package/dist/stream/index.js +5 -0
  148. package/dist/stream/index.js.map +1 -0
  149. package/dist/stream/input-handler.d.ts +10 -0
  150. package/dist/stream/input-handler.d.ts.map +1 -0
  151. package/dist/stream/input-handler.js +81 -0
  152. package/dist/stream/input-handler.js.map +1 -0
  153. package/dist/stream/messages.d.ts +144 -0
  154. package/dist/stream/messages.d.ts.map +1 -0
  155. package/dist/stream/messages.js +46 -0
  156. package/dist/stream/messages.js.map +1 -0
  157. package/dist/stream-server-standalone.d.ts +0 -3
  158. package/dist/stream-server-standalone.d.ts.map +1 -1
  159. package/dist/stream-server-standalone.js +22 -82
  160. package/dist/stream-server-standalone.js.map +1 -1
  161. package/dist/stream-server.d.ts +8 -212
  162. package/dist/stream-server.d.ts.map +1 -1
  163. package/dist/stream-server.js +35 -389
  164. package/dist/stream-server.js.map +1 -1
  165. package/dist/types/base.d.ts +11 -0
  166. package/dist/types/base.d.ts.map +1 -0
  167. package/dist/types/base.js +2 -0
  168. package/dist/types/base.js.map +1 -0
  169. package/dist/types/browser.d.ts +26 -0
  170. package/dist/types/browser.d.ts.map +1 -0
  171. package/dist/types/browser.js +2 -0
  172. package/dist/types/browser.js.map +1 -0
  173. package/dist/types/commands.d.ts +768 -0
  174. package/dist/types/commands.d.ts.map +1 -0
  175. package/dist/types/commands.js +2 -0
  176. package/dist/types/commands.js.map +1 -0
  177. package/dist/types/crawl.d.ts +89 -0
  178. package/dist/types/crawl.d.ts.map +1 -0
  179. package/dist/types/crawl.js +2 -0
  180. package/dist/types/crawl.js.map +1 -0
  181. package/dist/types/index.d.ts +9 -0
  182. package/dist/types/index.d.ts.map +1 -0
  183. package/dist/types/index.js +9 -0
  184. package/dist/types/index.js.map +1 -0
  185. package/dist/types/interact.d.ts +61 -0
  186. package/dist/types/interact.d.ts.map +1 -0
  187. package/dist/types/interact.js +2 -0
  188. package/dist/types/interact.js.map +1 -0
  189. package/dist/types/plugins.d.ts +39 -0
  190. package/dist/types/plugins.d.ts.map +1 -0
  191. package/dist/types/plugins.js +2 -0
  192. package/dist/types/plugins.js.map +1 -0
  193. package/dist/types/responses.d.ts +140 -0
  194. package/dist/types/responses.d.ts.map +1 -0
  195. package/dist/types/responses.js +4 -0
  196. package/dist/types/responses.js.map +1 -0
  197. package/dist/types/utils.d.ts +12 -0
  198. package/dist/types/utils.d.ts.map +1 -0
  199. package/dist/types/utils.js +2 -0
  200. package/dist/types/utils.js.map +1 -0
  201. package/dist/types.d.ts +1 -1125
  202. package/dist/types.d.ts.map +1 -1
  203. package/dist/types.js +1 -3
  204. package/dist/types.js.map +1 -1
  205. package/dist/version.d.ts +2 -0
  206. package/dist/version.d.ts.map +1 -0
  207. package/dist/version.js +31 -0
  208. package/dist/version.js.map +1 -0
  209. package/package.json +11 -11
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selectors.js","sourceRoot":"","sources":["../../src/snapshot/selectors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { Page, Frame, FrameLocator } from 'playwright-core';
2
+ import type { RefMap, EnhancedSnapshot, SnapshotOptions } from './types.js';
3
+ export declare function getEnhancedSnapshot(page: Page | Frame | FrameLocator, options?: SnapshotOptions): Promise<EnhancedSnapshot>;
4
+ export declare function parseRef(arg: string): string | null;
5
+ export declare function getSnapshotStats(tree: string, refs: RefMap): {
6
+ lines: number;
7
+ chars: number;
8
+ tokens: number;
9
+ refs: number;
10
+ interactive: number;
11
+ };
12
+ //# sourceMappingURL=snapshot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../src/snapshot/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAO5E,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,IAAI,GAAG,KAAK,GAAG,YAAY,EACjC,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,gBAAgB,CAAC,CA0F3B;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAcnD;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX;IACD,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB,CAUA"}
@@ -0,0 +1,104 @@
1
+ import { INTERACTIVE_ROLES } from './constants.js';
2
+ import { resetRefs, nextRef } from './refs.js';
3
+ import { suggestSelectors, buildCompactSelectors } from './selectors.js';
4
+ import { findCursorInteractiveElements, enrichRefsWithPathsAndAttrs } from './dom-scripts.js';
5
+ import { processAriaTree } from './format.js';
6
+ export async function getEnhancedSnapshot(page, options = {}) {
7
+ if ((options.path || options.attrs) && !options.selector) {
8
+ throw new Error('由于内容可能过大,请使用 selector 参数限定范围');
9
+ }
10
+ resetRefs();
11
+ const refs = {};
12
+ const locator = options.selector ? page.locator(options.selector) : page.locator(':root');
13
+ let ariaTree;
14
+ try {
15
+ ariaTree = await locator.ariaSnapshot({ timeout: 2000 });
16
+ }
17
+ catch (error) {
18
+ const errorMessage = error instanceof Error ? error.message : String(error);
19
+ if (errorMessage.includes('Timeout') && options.selector) {
20
+ const suggestedSelectors = await suggestSelectors(page);
21
+ return {
22
+ tree: `(no elements found for selector: ${options.selector})\n\nSuggested selectors: ${suggestedSelectors.join(', ')}`,
23
+ refs: {},
24
+ };
25
+ }
26
+ throw error;
27
+ }
28
+ if (!ariaTree) {
29
+ return {
30
+ tree: '(empty)',
31
+ refs: {},
32
+ };
33
+ }
34
+ const enhancedTree = processAriaTree(ariaTree, refs, options);
35
+ if (options.cursor) {
36
+ const cursorElements = await findCursorInteractiveElements(page, options.selector);
37
+ const existingTexts = new Set(Object.values(refs).map((r) => r.name?.toLowerCase()));
38
+ const additionalLines = [];
39
+ for (const el of cursorElements) {
40
+ if (existingTexts.has(el.text.toLowerCase()))
41
+ continue;
42
+ const ref = nextRef();
43
+ const role = el.hasCursorPointer ? 'clickable' : el.hasOnClick ? 'clickable' : 'focusable';
44
+ refs[ref] = {
45
+ selector: el.selector,
46
+ role: role,
47
+ name: el.text,
48
+ };
49
+ const hints = [];
50
+ if (el.hasCursorPointer)
51
+ hints.push('cursor:pointer');
52
+ if (el.hasOnClick)
53
+ hints.push('onclick');
54
+ if (el.hasTabIndex)
55
+ hints.push('tabindex');
56
+ additionalLines.push(`- ${role} "${el.text}" [ref=${ref}] [${hints.join(', ')}]`);
57
+ }
58
+ if (additionalLines.length > 0) {
59
+ const separator = enhancedTree === '(no interactive elements)' ? '' : '\n# Cursor-interactive elements:\n';
60
+ const base = enhancedTree === '(no interactive elements)' ? '' : enhancedTree;
61
+ return {
62
+ tree: base + separator + additionalLines.join('\n'),
63
+ refs,
64
+ };
65
+ }
66
+ }
67
+ if (options.path || options.attrs) {
68
+ await enrichRefsWithPathsAndAttrs(page, refs, options);
69
+ }
70
+ let finalTree = enhancedTree;
71
+ if (options.selectors && Object.keys(refs).length > 0) {
72
+ const selectorMap = await buildCompactSelectors(page, refs, options);
73
+ if (selectorMap) {
74
+ finalTree += '\n## Selectors\n' + selectorMap;
75
+ }
76
+ }
77
+ return { tree: finalTree, refs };
78
+ }
79
+ export function parseRef(arg) {
80
+ if (arg.startsWith('@')) {
81
+ return arg.slice(1);
82
+ }
83
+ if (arg.startsWith('[ref=') && arg.endsWith(']')) {
84
+ return arg.slice(5, -1);
85
+ }
86
+ if (arg.startsWith('ref=')) {
87
+ return arg.slice(4);
88
+ }
89
+ if (/^e\d+$/.test(arg)) {
90
+ return arg;
91
+ }
92
+ return null;
93
+ }
94
+ export function getSnapshotStats(tree, refs) {
95
+ const interactive = Object.values(refs).filter((r) => INTERACTIVE_ROLES.has(r.role)).length;
96
+ return {
97
+ lines: tree.split('\n').length,
98
+ chars: tree.length,
99
+ tokens: Math.ceil(tree.length / 4),
100
+ refs: Object.keys(refs).length,
101
+ interactive,
102
+ };
103
+ }
104
+ //# sourceMappingURL=snapshot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../src/snapshot/snapshot.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAiB,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACxF,OAAO,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC9F,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAiC,EACjC,UAA2B,EAAE;IAE7B,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,CAAC;IAED,SAAS,EAAE,CAAC;IACZ,MAAM,IAAI,GAAW,EAAE,CAAC;IAExB,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAE1F,IAAI,QAAuB,CAAC;IAC5B,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5E,IAAI,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACzD,MAAM,kBAAkB,GAAG,MAAM,gBAAgB,CAAC,IAAoB,CAAC,CAAC;YACxE,OAAO;gBACL,IAAI,EAAE,oCACJ,OAAO,CAAC,QACV,6BAA6B,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBAC5D,IAAI,EAAE,EAAE;aACT,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO;YACL,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,EAAE;SACT,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,eAAe,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAE9D,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,cAAc,GAAG,MAAM,6BAA6B,CACxD,IAAoB,EACpB,OAAO,CAAC,QAAQ,CACjB,CAAC;QAEF,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;QAErF,MAAM,eAAe,GAAa,EAAE,CAAC;QACrC,KAAK,MAAM,EAAE,IAAI,cAAc,EAAE,CAAC;YAChC,IAAI,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBAAE,SAAS;YAEvD,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;YACtB,MAAM,IAAI,GAAG,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC;YAE3F,IAAI,CAAC,GAAG,CAAC,GAAG;gBACV,QAAQ,EAAE,EAAE,CAAC,QAAQ;gBACrB,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,EAAE,CAAC,IAAI;aACd,CAAC;YAEF,MAAM,KAAK,GAAa,EAAE,CAAC;YAC3B,IAAI,EAAE,CAAC,gBAAgB;gBAAE,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACtD,IAAI,EAAE,CAAC,UAAU;gBAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACzC,IAAI,EAAE,CAAC,WAAW;gBAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAE3C,eAAe,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,EAAE,CAAC,IAAI,UAAU,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpF,CAAC;QAED,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,SAAS,GACb,YAAY,KAAK,2BAA2B,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,oCAAoC,CAAC;YAC3F,MAAM,IAAI,GAAG,YAAY,KAAK,2BAA2B,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;YAC9E,OAAO;gBACL,IAAI,EAAE,IAAI,GAAG,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;gBACnD,IAAI;aACL,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClC,MAAM,2BAA2B,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,SAAS,GAAG,YAAY,CAAC;IAE7B,IAAI,OAAO,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtD,MAAM,WAAW,GAAG,MAAM,qBAAqB,CAAC,IAAoB,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACrF,IAAI,WAAW,EAAE,CAAC;YAChB,SAAS,IAAI,kBAAkB,GAAG,WAAW,CAAC;QAChD,CAAC;IACH,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,GAAW;IAClC,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC;IACD,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACjD,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;IACD,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,GAAG,CAAC;IACb,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,IAAY,EACZ,IAAY;IAQZ,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;IAE5F,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM;QAC9B,KAAK,EAAE,IAAI,CAAC,MAAM;QAClB,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAClC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;QAC9B,WAAW;KACZ,CAAC;AACJ,CAAC"}
@@ -0,0 +1,27 @@
1
+ export interface RefMap {
2
+ [ref: string]: {
3
+ selector: string;
4
+ role: string;
5
+ name?: string;
6
+ nth?: number;
7
+ xpath?: string;
8
+ cssPath?: string;
9
+ attributes?: Record<string, string>;
10
+ };
11
+ }
12
+ export interface EnhancedSnapshot {
13
+ tree: string;
14
+ refs: RefMap;
15
+ }
16
+ export interface SnapshotOptions {
17
+ interactive?: boolean;
18
+ cursor?: boolean;
19
+ maxDepth?: number;
20
+ compact?: boolean;
21
+ selector?: string;
22
+ path?: boolean;
23
+ attrs?: boolean;
24
+ selectors?: boolean;
25
+ all?: boolean;
26
+ }
27
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/snapshot/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,MAAM;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACrC,CAAC;CACH;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/snapshot/types.ts"],"names":[],"mappings":""}
@@ -1,80 +1,2 @@
1
- /**
2
- * Enhanced snapshot with element refs for deterministic element selection.
3
- *
4
- * This module generates accessibility snapshots with embedded refs that can be
5
- * used to click/fill/interact with elements without re-querying the DOM.
6
- *
7
- * Example output:
8
- * - heading "Example Domain" [ref=e1] [level=1]
9
- * - paragraph: Some text content
10
- * - button "Submit" [ref=e2]
11
- * - textbox "Email" [ref=e3]
12
- *
13
- * Usage:
14
- * agent-browser snapshot # Full snapshot
15
- * agent-browser snapshot -i # Interactive elements only
16
- * agent-browser snapshot --depth 3 # Limit depth
17
- * agent-browser click @e2 # Click element by ref
18
- */
19
- import type { Page, Frame, FrameLocator } from 'playwright-core';
20
- export interface RefMap {
21
- [ref: string]: {
22
- selector: string;
23
- role: string;
24
- name?: string;
25
- /** Index for disambiguation when multiple elements have same role+name */
26
- nth?: number;
27
- /** XPath path (only when path=true) */
28
- xpath?: string;
29
- /** CSS selector path (only when path=true) */
30
- cssPath?: string;
31
- /** Element attributes (only when attrs=true) */
32
- attributes?: Record<string, string>;
33
- };
34
- }
35
- export interface EnhancedSnapshot {
36
- tree: string;
37
- refs: RefMap;
38
- }
39
- export interface SnapshotOptions {
40
- interactive?: boolean;
41
- cursor?: boolean;
42
- maxDepth?: number;
43
- compact?: boolean;
44
- selector?: string;
45
- path?: boolean;
46
- attrs?: boolean;
47
- selectors?: boolean;
48
- all?: boolean;
49
- }
50
- /**
51
- * Reset ref counter (call at start of each snapshot)
52
- */
53
- export declare function resetRefs(): void;
54
- export declare function generateStableSelectors(page: Page | Frame, refs: RefMap): Promise<Record<string, {
55
- cssSelector: string;
56
- xpath: string;
57
- }>>;
58
- /**
59
- * Get enhanced snapshot with refs and optional filtering
60
- */
61
- export declare function getEnhancedSnapshot(page: Page | Frame | FrameLocator, options?: SnapshotOptions): Promise<EnhancedSnapshot>;
62
- /**
63
- * Parse a ref from command argument (e.g., "@e1" -> "e1")
64
- */
65
- export declare function parseRef(arg: string): string | null;
66
- /**
67
- * Get snapshot statistics
68
- */
69
- export declare function getSnapshotStats(tree: string, refs: RefMap): {
70
- lines: number;
71
- chars: number;
72
- tokens: number;
73
- refs: number;
74
- interactive: number;
75
- };
76
- export declare function getSemanticClass(element: Element): string | null;
77
- export declare function generateXPath(element: Element, maxDepth?: number): string;
78
- export declare function generateCSSPath(element: Element, maxDepth?: number): string;
79
- export declare function collectAttributes(element: Element): Record<string, string>;
1
+ export * from './snapshot/index.js';
80
2
  //# sourceMappingURL=snapshot.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../src/snapshot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEjE,MAAM,WAAW,MAAM;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,0EAA0E;QAC1E,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,uCAAuC;QACvC,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,8CAA8C;QAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,gDAAgD;QAChD,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACrC,CAAC;CACH;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAKD;;GAEG;AACH,wBAAgB,SAAS,IAAI,IAAI,CAEhC;AAuTD,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,IAAI,GAAG,KAAK,EAClB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAuWjE;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,IAAI,GAAG,KAAK,GAAG,YAAY,EACjC,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,gBAAgB,CAAC,CA0F3B;AAy5BD;;GAEG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAcnD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX;IACD,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB,CAUA;AA6BD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAYhE;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,GAAE,MAAU,GAAG,MAAM,CAsB5E;AAmDD,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,GAAE,MAAU,GAAG,MAAM,CA2C9E;AAyBD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAS1E"}
1
+ {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../src/snapshot.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC"}