@weavetab/mcp 2.5.0 → 2.5.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 (168) hide show
  1. package/AGENTS.md +49 -49
  2. package/ARCHITECTURE.md +590 -590
  3. package/LICENSE +216 -216
  4. package/README.md +269 -269
  5. package/SECURITY.md +207 -207
  6. package/TROUBLESHOOTING.md +373 -365
  7. package/dist/anticaptcha/detector.js +395 -395
  8. package/dist/anticaptcha/solver.js +130 -130
  9. package/dist/cdp/bridge.js +73 -73
  10. package/dist/cdp/connector.js +46 -22
  11. package/dist/cdp/extension.js +34 -34
  12. package/dist/cdp/helpers.js +174 -174
  13. package/dist/cdp/pruner.js +195 -195
  14. package/dist/cdp/ref_cache.js +66 -66
  15. package/dist/cdp/security.js +10 -10
  16. package/dist/cdp/verify.js +57 -57
  17. package/dist/cdp/walker.js +563 -525
  18. package/dist/cli/plugin.js +26 -3
  19. package/dist/config/loader.d.ts +0 -3
  20. package/dist/config/loader.js +0 -9
  21. package/dist/index.js +0 -4
  22. package/dist/intelligence/intent.js +81 -81
  23. package/dist/intelligence/sessionMemory.js +2 -2
  24. package/dist/overlay/ghost.js +22 -22
  25. package/dist/overlay/injector.js +89 -89
  26. package/dist/plugin/extension_bridge.js +54 -54
  27. package/dist/plugin/interface.d.ts +7 -0
  28. package/dist/plugin/loader.js +3 -4
  29. package/dist/plugin/schema.d.ts +11 -0
  30. package/dist/plugin/schema.js +59 -0
  31. package/dist/security/guard.js +18 -18
  32. package/dist/sensors/actionability.js +167 -167
  33. package/dist/sensors/guard.js +29 -29
  34. package/dist/sensors/network.js +15 -17
  35. package/dist/server.d.ts +1 -1
  36. package/dist/server.js +173 -144
  37. package/dist/state/delta.js +6 -7
  38. package/dist/tools/automation.js +85 -85
  39. package/dist/tools/canvas.js +48 -25
  40. package/dist/tools/checkpoint.js +94 -35
  41. package/dist/tools/click.js +52 -41
  42. package/dist/tools/clipboard.js +80 -74
  43. package/dist/tools/design_extract.js +441 -441
  44. package/dist/tools/dialog.js +13 -13
  45. package/dist/tools/emulation.d.ts +2 -0
  46. package/dist/tools/emulation.js +7 -0
  47. package/dist/tools/fill.js +344 -347
  48. package/dist/tools/find.js +78 -52
  49. package/dist/tools/highlight.js +67 -67
  50. package/dist/tools/inspect.js +54 -25
  51. package/dist/tools/key.js +42 -35
  52. package/dist/tools/navigate.d.ts +1 -1
  53. package/dist/tools/navigate.js +35 -35
  54. package/dist/tools/office/parse.js +62 -18
  55. package/dist/tools/pdf.d.ts +9 -0
  56. package/dist/tools/pdf.js +7 -4
  57. package/dist/tools/performance.d.ts +11 -4
  58. package/dist/tools/performance.js +94 -42
  59. package/dist/tools/performance_test.d.ts +2 -2
  60. package/dist/tools/performance_test.js +69 -69
  61. package/dist/tools/pointer.js +116 -116
  62. package/dist/tools/read.js +99 -67
  63. package/dist/tools/recording.js +9 -0
  64. package/dist/tools/scrape.js +146 -146
  65. package/dist/tools/screenshot.d.ts +2 -0
  66. package/dist/tools/screenshot.js +46 -4
  67. package/dist/tools/scroll.d.ts +3 -1
  68. package/dist/tools/scroll.js +13 -15
  69. package/dist/tools/select.d.ts +3 -0
  70. package/dist/tools/select.js +131 -124
  71. package/dist/tools/snapshot.js +8 -6
  72. package/dist/tools/storage.d.ts +5 -1
  73. package/dist/tools/storage.js +16 -0
  74. package/dist/tools/tabs.d.ts +7 -5
  75. package/dist/tools/tabs.js +79 -26
  76. package/dist/tools/thought.js +8 -8
  77. package/dist/tools/type.js +274 -274
  78. package/dist/tools/type_secret.js +23 -23
  79. package/dist/tools/upload.js +3 -3
  80. package/dist/tools/video_compiler.js +9 -0
  81. package/dist/tools/wait.js +35 -35
  82. package/dist/version.d.ts +1 -1
  83. package/dist/version.js +1 -1
  84. package/docs/DOCUMENTATION.md +583 -585
  85. package/docs/PLUGINS.md +139 -121
  86. package/docs/TOOLS.md +3 -4
  87. package/docs/architecture/blind-injection.md +83 -83
  88. package/docs/architecture/overview.md +49 -49
  89. package/docs/architecture/security.md +36 -36
  90. package/docs/architecture/transport.md +37 -37
  91. package/docs/cli/cli-commands.md +50 -50
  92. package/docs/cli/cli-flags.md +28 -28
  93. package/docs/cli/cli-scripting.md +35 -35
  94. package/docs/configuration/config-locations.md +23 -23
  95. package/docs/configuration/configuration.md +39 -27
  96. package/docs/configuration/env-variables.md +19 -19
  97. package/docs/configuration/folders.md +62 -55
  98. package/docs/desktop-automation/electron-apps.md +225 -214
  99. package/docs/get-started/installation.md +1 -1
  100. package/docs/get-started/introduction.md +60 -60
  101. package/docs/get-started/quickstart.md +2 -2
  102. package/docs/get-started/setup-wizard.md +27 -27
  103. package/docs/intelligence/site-profiles.md +151 -151
  104. package/docs/tools/tools.md +582 -631
  105. package/docs/troubleshooting/trouble-browser.md +27 -27
  106. package/docs/troubleshooting/trouble-loop.md +31 -31
  107. package/ext-dist/background.js +415 -415
  108. package/ext-dist/content.js +2527 -2527
  109. package/ext-dist/dashboard.html +583 -583
  110. package/ext-dist/hud/hud.js +3 -3
  111. package/ext-dist/hud/index.html +20 -20
  112. package/ext-dist/manifest.json +73 -73
  113. package/ext-dist/styles.css +223 -223
  114. package/mcp.json +796 -805
  115. package/package.json +118 -118
  116. package/server.json +23 -23
  117. package/dist/cdp/walker.test.d.ts +0 -2
  118. package/dist/cdp/walker.test.js +0 -172
  119. package/dist/intelligence/sessionMemory.test.d.ts +0 -2
  120. package/dist/intelligence/sessionMemory.test.js +0 -62
  121. package/dist/intelligence/trail.test.d.ts +0 -2
  122. package/dist/intelligence/trail.test.js +0 -110
  123. package/dist/state/cache.test.d.ts +0 -2
  124. package/dist/state/cache.test.js +0 -76
  125. package/dist/state/delta.test.d.ts +0 -2
  126. package/dist/state/delta.test.js +0 -279
  127. package/dist/state/groups.d.ts +0 -15
  128. package/dist/state/groups.js +0 -80
  129. package/dist/tools/accessibility.d.ts +0 -14
  130. package/dist/tools/accessibility.js +0 -32
  131. package/dist/tools/ask.d.ts +0 -14
  132. package/dist/tools/ask.js +0 -49
  133. package/dist/tools/click_and_wait.d.ts +0 -33
  134. package/dist/tools/click_and_wait.js +0 -149
  135. package/dist/tools/drag.d.ts +0 -15
  136. package/dist/tools/drag.js +0 -29
  137. package/dist/tools/geo.d.ts +0 -19
  138. package/dist/tools/geo.js +0 -29
  139. package/dist/tools/github/analyze.d.ts +0 -4
  140. package/dist/tools/github/analyze.js +0 -113
  141. package/dist/tools/github/cache.d.ts +0 -21
  142. package/dist/tools/github/cache.js +0 -28
  143. package/dist/tools/github/index.d.ts +0 -19
  144. package/dist/tools/github/index.js +0 -40
  145. package/dist/tools/github/issues.d.ts +0 -9
  146. package/dist/tools/github/issues.js +0 -88
  147. package/dist/tools/github/pr.d.ts +0 -5
  148. package/dist/tools/github/pr.js +0 -88
  149. package/dist/tools/github/rateLimiter.d.ts +0 -4
  150. package/dist/tools/github/rateLimiter.js +0 -46
  151. package/dist/tools/github/read.d.ts +0 -34
  152. package/dist/tools/github/read.js +0 -74
  153. package/dist/tools/github/repoContext.d.ts +0 -20
  154. package/dist/tools/github/repoContext.js +0 -129
  155. package/dist/tools/hover.d.ts +0 -19
  156. package/dist/tools/hover.js +0 -57
  157. package/dist/tools/integration.test.d.ts +0 -2
  158. package/dist/tools/integration.test.js +0 -96
  159. package/dist/tools/macro_compiler.d.ts +0 -7
  160. package/dist/tools/macro_compiler.js +0 -82
  161. package/dist/tools/mouse.d.ts +0 -21
  162. package/dist/tools/mouse.js +0 -62
  163. package/dist/tools/response.d.ts +0 -129
  164. package/dist/tools/response.js +0 -5
  165. package/dist/tools/wait_for.d.ts +0 -23
  166. package/dist/tools/wait_for.js +0 -30
  167. package/dist/tools/windows.d.ts +0 -22
  168. package/dist/tools/windows.js +0 -57
@@ -9,31 +9,31 @@
9
9
  export async function verifyElementState(session, selector) {
10
10
  try {
11
11
  const { result } = await session.Runtime.evaluate({
12
- expression: `(function(sel) {
13
- try {
14
- var el = document.querySelector(sel);
15
- if (!el) return JSON.stringify({ exists: false });
16
-
17
- var rect = el.getBoundingClientRect();
18
- var attrs = {};
19
- for (var i = 0; i < el.attributes.length; i++) {
20
- attrs[el.attributes[i].name] = el.attributes[i].value;
21
- }
22
-
23
- return JSON.stringify({
24
- exists: true,
25
- tagName: el.tagName.toLowerCase(),
26
- value: (el as any).value !== undefined ? String((el as any).value) : undefined,
27
- textContent: el.textContent ? el.textContent.slice(0, 200) : undefined,
28
- checked: (el as any).checked,
29
- disabled: (el as any).disabled,
30
- visible: rect.width > 0 && rect.height > 0 && rect.bottom >= 0 && rect.top <= window.innerHeight,
31
- attributes: attrs,
32
- className: el.className
33
- });
34
- } catch(e) {
35
- return JSON.stringify({ exists: false, error: (e as Error).message });
36
- }
12
+ expression: `(function(sel) {
13
+ try {
14
+ var el = document.querySelector(sel);
15
+ if (!el) return JSON.stringify({ exists: false });
16
+
17
+ var rect = el.getBoundingClientRect();
18
+ var attrs = {};
19
+ for (var i = 0; i < el.attributes.length; i++) {
20
+ attrs[el.attributes[i].name] = el.attributes[i].value;
21
+ }
22
+
23
+ return JSON.stringify({
24
+ exists: true,
25
+ tagName: el.tagName.toLowerCase(),
26
+ value: (el as any).value !== undefined ? String((el as any).value) : undefined,
27
+ textContent: el.textContent ? el.textContent.slice(0, 200) : undefined,
28
+ checked: (el as any).checked,
29
+ disabled: (el as any).disabled,
30
+ visible: rect.width > 0 && rect.height > 0 && rect.bottom >= 0 && rect.top <= window.innerHeight,
31
+ attributes: attrs,
32
+ className: el.className
33
+ });
34
+ } catch(e) {
35
+ return JSON.stringify({ exists: false, error: (e as Error).message });
36
+ }
37
37
  })(${JSON.stringify(selector)})`,
38
38
  returnByValue: true,
39
39
  });
@@ -100,38 +100,38 @@ export async function detectVisibleFeedback(session) {
100
100
  export async function inferNextAction(session, lastAction, context) {
101
101
  try {
102
102
  const { result } = await session.Runtime.evaluate({
103
- expression: `
104
- (function(lastAction, ctx) {
105
- try {
106
- var suggestions = [];
107
- if (lastAction === 'fill' || lastAction === 'type') {
108
- var inputs = document.querySelectorAll('input:not([type="hidden"]):not([type="submit"]):not([type="button"]), textarea, select[required]');
109
- var emptyRequired = [];
110
- for (var i = 0; i < inputs.length; i++) {
111
- var inp = inputs[i];
112
- if ((inp.required || inp.getAttribute('aria-required') === 'true') && !inp.value) {
113
- emptyRequired.push(inp.getAttribute('placeholder') || inp.getAttribute('name') || inp.getAttribute('aria-label') || 'field');
114
- }
115
- }
116
- if (emptyRequired.length > 0) {
117
- suggestions.push('Fill required field: ' + emptyRequired[0]);
118
- }
119
- var submitBtn = document.querySelector('button[type="submit"], input[type="submit"], [type="submit"]');
120
- if (submitBtn) {
121
- suggestions.push('Submit form');
122
- }
123
- }
124
- if (lastAction === 'click') {
125
- var modal = document.querySelector('[role="dialog"], .modal, [class*="modal"]');
126
- if (modal) {
127
- suggestions.push('Interact with modal dialog');
128
- }
129
- }
130
- return JSON.stringify(suggestions[0] || undefined);
131
- } catch(e) {
132
- return JSON.stringify(undefined);
133
- }
134
- })(${JSON.stringify(lastAction)}, ${JSON.stringify(context)})
103
+ expression: `
104
+ (function(lastAction, ctx) {
105
+ try {
106
+ var suggestions = [];
107
+ if (lastAction === 'fill' || lastAction === 'type') {
108
+ var inputs = document.querySelectorAll('input:not([type="hidden"]):not([type="submit"]):not([type="button"]), textarea, select[required]');
109
+ var emptyRequired = [];
110
+ for (var i = 0; i < inputs.length; i++) {
111
+ var inp = inputs[i];
112
+ if ((inp.required || inp.getAttribute('aria-required') === 'true') && !inp.value) {
113
+ emptyRequired.push(inp.getAttribute('placeholder') || inp.getAttribute('name') || inp.getAttribute('aria-label') || 'field');
114
+ }
115
+ }
116
+ if (emptyRequired.length > 0) {
117
+ suggestions.push('Fill required field: ' + emptyRequired[0]);
118
+ }
119
+ var submitBtn = document.querySelector('button[type="submit"], input[type="submit"], [type="submit"]');
120
+ if (submitBtn) {
121
+ suggestions.push('Submit form');
122
+ }
123
+ }
124
+ if (lastAction === 'click') {
125
+ var modal = document.querySelector('[role="dialog"], .modal, [class*="modal"]');
126
+ if (modal) {
127
+ suggestions.push('Interact with modal dialog');
128
+ }
129
+ }
130
+ return JSON.stringify(suggestions[0] || undefined);
131
+ } catch(e) {
132
+ return JSON.stringify(undefined);
133
+ }
134
+ })(${JSON.stringify(lastAction)}, ${JSON.stringify(context)})
135
135
  `,
136
136
  returnByValue: true,
137
137
  });