synabun 2026.3.307 → 2026.3.310

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 (214) hide show
  1. package/CLAUDE.md +150 -0
  2. package/hooks/claude-code/post-plan.mjs +1 -1
  3. package/hooks/claude-code/session-start.mjs +2 -0
  4. package/mcp-server/dist/config.d.ts +13 -0
  5. package/mcp-server/dist/config.d.ts.map +1 -0
  6. package/mcp-server/dist/config.js +59 -0
  7. package/mcp-server/dist/config.js.map +1 -0
  8. package/mcp-server/dist/http.d.ts +13 -0
  9. package/mcp-server/dist/http.d.ts.map +1 -0
  10. package/mcp-server/dist/http.js +86 -0
  11. package/mcp-server/dist/http.js.map +1 -0
  12. package/mcp-server/dist/index.d.ts +10 -0
  13. package/mcp-server/dist/index.d.ts.map +1 -0
  14. package/mcp-server/dist/index.js +189 -0
  15. package/mcp-server/dist/index.js.map +1 -0
  16. package/mcp-server/dist/preload-http.d.ts +3 -0
  17. package/mcp-server/dist/preload-http.d.ts.map +1 -0
  18. package/mcp-server/dist/preload-http.js +26 -0
  19. package/mcp-server/dist/preload-http.js.map +1 -0
  20. package/mcp-server/dist/preload.d.ts +3 -0
  21. package/mcp-server/dist/preload.d.ts.map +1 -0
  22. package/mcp-server/dist/preload.js +30 -0
  23. package/mcp-server/dist/preload.js.map +1 -0
  24. package/mcp-server/dist/scripts/migrate-qdrant-to-sqlite.d.ts +19 -0
  25. package/mcp-server/dist/scripts/migrate-qdrant-to-sqlite.d.ts.map +1 -0
  26. package/mcp-server/dist/scripts/migrate-qdrant-to-sqlite.js +403 -0
  27. package/mcp-server/dist/scripts/migrate-qdrant-to-sqlite.js.map +1 -0
  28. package/mcp-server/dist/services/categories.d.ts +61 -0
  29. package/mcp-server/dist/services/categories.d.ts.map +1 -0
  30. package/mcp-server/dist/services/categories.js +356 -0
  31. package/mcp-server/dist/services/categories.js.map +1 -0
  32. package/mcp-server/dist/services/discord.d.ts +112 -0
  33. package/mcp-server/dist/services/discord.d.ts.map +1 -0
  34. package/mcp-server/dist/services/discord.js +477 -0
  35. package/mcp-server/dist/services/discord.js.map +1 -0
  36. package/mcp-server/dist/services/file-checksums.d.ts +14 -0
  37. package/mcp-server/dist/services/file-checksums.d.ts.map +1 -0
  38. package/mcp-server/dist/services/file-checksums.js +34 -0
  39. package/mcp-server/dist/services/file-checksums.js.map +1 -0
  40. package/mcp-server/dist/services/local-embeddings.d.ts +23 -0
  41. package/mcp-server/dist/services/local-embeddings.d.ts.map +1 -0
  42. package/mcp-server/dist/services/local-embeddings.js +71 -0
  43. package/mcp-server/dist/services/local-embeddings.js.map +1 -0
  44. package/mcp-server/dist/services/neural-interface.d.ts +92 -0
  45. package/mcp-server/dist/services/neural-interface.d.ts.map +1 -0
  46. package/mcp-server/dist/services/neural-interface.js +238 -0
  47. package/mcp-server/dist/services/neural-interface.js.map +1 -0
  48. package/mcp-server/dist/services/sqlite.d.ts +85 -0
  49. package/mcp-server/dist/services/sqlite.d.ts.map +1 -0
  50. package/mcp-server/dist/services/sqlite.js +660 -0
  51. package/mcp-server/dist/services/sqlite.js.map +1 -0
  52. package/mcp-server/dist/tools/browser-advanced.d.ts +54 -0
  53. package/mcp-server/dist/tools/browser-advanced.d.ts.map +1 -0
  54. package/mcp-server/dist/tools/browser-advanced.js +97 -0
  55. package/mcp-server/dist/tools/browser-advanced.js.map +1 -0
  56. package/mcp-server/dist/tools/browser-interact.d.ts +138 -0
  57. package/mcp-server/dist/tools/browser-interact.d.ts.map +1 -0
  58. package/mcp-server/dist/tools/browser-interact.js +216 -0
  59. package/mcp-server/dist/tools/browser-interact.js.map +1 -0
  60. package/mcp-server/dist/tools/browser-navigate.d.ts +52 -0
  61. package/mcp-server/dist/tools/browser-navigate.d.ts.map +1 -0
  62. package/mcp-server/dist/tools/browser-navigate.js +61 -0
  63. package/mcp-server/dist/tools/browser-navigate.js.map +1 -0
  64. package/mcp-server/dist/tools/browser-observe.d.ts +298 -0
  65. package/mcp-server/dist/tools/browser-observe.d.ts.map +1 -0
  66. package/mcp-server/dist/tools/browser-observe.js +1154 -0
  67. package/mcp-server/dist/tools/browser-observe.js.map +1 -0
  68. package/mcp-server/dist/tools/browser.d.ts +7 -0
  69. package/mcp-server/dist/tools/browser.d.ts.map +1 -0
  70. package/mcp-server/dist/tools/browser.js +55 -0
  71. package/mcp-server/dist/tools/browser.js.map +1 -0
  72. package/mcp-server/dist/tools/card-tools.d.ts +82 -0
  73. package/mcp-server/dist/tools/card-tools.d.ts.map +1 -0
  74. package/mcp-server/dist/tools/card-tools.js +137 -0
  75. package/mcp-server/dist/tools/card-tools.js.map +1 -0
  76. package/mcp-server/dist/tools/card.d.ts +8 -0
  77. package/mcp-server/dist/tools/card.d.ts.map +1 -0
  78. package/mcp-server/dist/tools/card.js +14 -0
  79. package/mcp-server/dist/tools/card.js.map +1 -0
  80. package/mcp-server/dist/tools/category.d.ts +32 -0
  81. package/mcp-server/dist/tools/category.d.ts.map +1 -0
  82. package/mcp-server/dist/tools/category.js +290 -0
  83. package/mcp-server/dist/tools/category.js.map +1 -0
  84. package/mcp-server/dist/tools/discord-channel.d.ts +44 -0
  85. package/mcp-server/dist/tools/discord-channel.d.ts.map +1 -0
  86. package/mcp-server/dist/tools/discord-channel.js +236 -0
  87. package/mcp-server/dist/tools/discord-channel.js.map +1 -0
  88. package/mcp-server/dist/tools/discord-guild.d.ts +20 -0
  89. package/mcp-server/dist/tools/discord-guild.d.ts.map +1 -0
  90. package/mcp-server/dist/tools/discord-guild.js +138 -0
  91. package/mcp-server/dist/tools/discord-guild.js.map +1 -0
  92. package/mcp-server/dist/tools/discord-member.d.ts +26 -0
  93. package/mcp-server/dist/tools/discord-member.d.ts.map +1 -0
  94. package/mcp-server/dist/tools/discord-member.js +122 -0
  95. package/mcp-server/dist/tools/discord-member.js.map +1 -0
  96. package/mcp-server/dist/tools/discord-message.d.ts +36 -0
  97. package/mcp-server/dist/tools/discord-message.d.ts.map +1 -0
  98. package/mcp-server/dist/tools/discord-message.js +184 -0
  99. package/mcp-server/dist/tools/discord-message.js.map +1 -0
  100. package/mcp-server/dist/tools/discord-onboarding.d.ts +32 -0
  101. package/mcp-server/dist/tools/discord-onboarding.d.ts.map +1 -0
  102. package/mcp-server/dist/tools/discord-onboarding.js +179 -0
  103. package/mcp-server/dist/tools/discord-onboarding.js.map +1 -0
  104. package/mcp-server/dist/tools/discord-role.d.ts +34 -0
  105. package/mcp-server/dist/tools/discord-role.d.ts.map +1 -0
  106. package/mcp-server/dist/tools/discord-role.js +178 -0
  107. package/mcp-server/dist/tools/discord-role.js.map +1 -0
  108. package/mcp-server/dist/tools/discord-thread.d.ts +28 -0
  109. package/mcp-server/dist/tools/discord-thread.d.ts.map +1 -0
  110. package/mcp-server/dist/tools/discord-thread.js +88 -0
  111. package/mcp-server/dist/tools/discord-thread.js.map +1 -0
  112. package/mcp-server/dist/tools/discord-webhook.d.ts +32 -0
  113. package/mcp-server/dist/tools/discord-webhook.d.ts.map +1 -0
  114. package/mcp-server/dist/tools/discord-webhook.js +154 -0
  115. package/mcp-server/dist/tools/discord-webhook.js.map +1 -0
  116. package/mcp-server/dist/tools/discord.d.ts +7 -0
  117. package/mcp-server/dist/tools/discord.d.ts.map +1 -0
  118. package/mcp-server/dist/tools/discord.js +31 -0
  119. package/mcp-server/dist/tools/discord.js.map +1 -0
  120. package/mcp-server/dist/tools/forget.d.ts +14 -0
  121. package/mcp-server/dist/tools/forget.d.ts.map +1 -0
  122. package/mcp-server/dist/tools/forget.js +26 -0
  123. package/mcp-server/dist/tools/forget.js.map +1 -0
  124. package/mcp-server/dist/tools/git-tools.d.ts +24 -0
  125. package/mcp-server/dist/tools/git-tools.d.ts.map +1 -0
  126. package/mcp-server/dist/tools/git-tools.js +107 -0
  127. package/mcp-server/dist/tools/git-tools.js.map +1 -0
  128. package/mcp-server/dist/tools/git.d.ts +7 -0
  129. package/mcp-server/dist/tools/git.d.ts.map +1 -0
  130. package/mcp-server/dist/tools/git.js +9 -0
  131. package/mcp-server/dist/tools/git.js.map +1 -0
  132. package/mcp-server/dist/tools/image-tools.d.ts +24 -0
  133. package/mcp-server/dist/tools/image-tools.d.ts.map +1 -0
  134. package/mcp-server/dist/tools/image-tools.js +80 -0
  135. package/mcp-server/dist/tools/image-tools.js.map +1 -0
  136. package/mcp-server/dist/tools/image.d.ts +10 -0
  137. package/mcp-server/dist/tools/image.d.ts.map +1 -0
  138. package/mcp-server/dist/tools/image.js +12 -0
  139. package/mcp-server/dist/tools/image.js.map +1 -0
  140. package/mcp-server/dist/tools/leonardo-browser-tools.d.ts +77 -0
  141. package/mcp-server/dist/tools/leonardo-browser-tools.d.ts.map +1 -0
  142. package/mcp-server/dist/tools/leonardo-browser-tools.js +223 -0
  143. package/mcp-server/dist/tools/leonardo-browser-tools.js.map +1 -0
  144. package/mcp-server/dist/tools/leonardo.d.ts +13 -0
  145. package/mcp-server/dist/tools/leonardo.d.ts.map +1 -0
  146. package/mcp-server/dist/tools/leonardo.js +19 -0
  147. package/mcp-server/dist/tools/leonardo.js.map +1 -0
  148. package/mcp-server/dist/tools/loop.d.ts +30 -0
  149. package/mcp-server/dist/tools/loop.d.ts.map +1 -0
  150. package/mcp-server/dist/tools/loop.js +302 -0
  151. package/mcp-server/dist/tools/loop.js.map +1 -0
  152. package/mcp-server/dist/tools/memories.d.ts +26 -0
  153. package/mcp-server/dist/tools/memories.d.ts.map +1 -0
  154. package/mcp-server/dist/tools/memories.js +96 -0
  155. package/mcp-server/dist/tools/memories.js.map +1 -0
  156. package/mcp-server/dist/tools/recall.d.ts +41 -0
  157. package/mcp-server/dist/tools/recall.d.ts.map +1 -0
  158. package/mcp-server/dist/tools/recall.js +275 -0
  159. package/mcp-server/dist/tools/recall.js.map +1 -0
  160. package/mcp-server/dist/tools/reflect.d.ts +44 -0
  161. package/mcp-server/dist/tools/reflect.d.ts.map +1 -0
  162. package/mcp-server/dist/tools/reflect.js +118 -0
  163. package/mcp-server/dist/tools/reflect.js.map +1 -0
  164. package/mcp-server/dist/tools/remember.d.ts +38 -0
  165. package/mcp-server/dist/tools/remember.d.ts.map +1 -0
  166. package/mcp-server/dist/tools/remember.js +88 -0
  167. package/mcp-server/dist/tools/remember.js.map +1 -0
  168. package/mcp-server/dist/tools/response.d.ts +23 -0
  169. package/mcp-server/dist/tools/response.d.ts.map +1 -0
  170. package/mcp-server/dist/tools/response.js +24 -0
  171. package/mcp-server/dist/tools/response.js.map +1 -0
  172. package/mcp-server/dist/tools/restore.d.ts +14 -0
  173. package/mcp-server/dist/tools/restore.d.ts.map +1 -0
  174. package/mcp-server/dist/tools/restore.js +23 -0
  175. package/mcp-server/dist/tools/restore.js.map +1 -0
  176. package/mcp-server/dist/tools/sync.d.ts +18 -0
  177. package/mcp-server/dist/tools/sync.d.ts.map +1 -0
  178. package/mcp-server/dist/tools/sync.js +93 -0
  179. package/mcp-server/dist/tools/sync.js.map +1 -0
  180. package/mcp-server/dist/tools/tictactoe-tools.d.ts +18 -0
  181. package/mcp-server/dist/tools/tictactoe-tools.d.ts.map +1 -0
  182. package/mcp-server/dist/tools/tictactoe-tools.js +78 -0
  183. package/mcp-server/dist/tools/tictactoe-tools.js.map +1 -0
  184. package/mcp-server/dist/tools/tictactoe.d.ts +7 -0
  185. package/mcp-server/dist/tools/tictactoe.d.ts.map +1 -0
  186. package/mcp-server/dist/tools/tictactoe.js +9 -0
  187. package/mcp-server/dist/tools/tictactoe.js.map +1 -0
  188. package/mcp-server/dist/tools/utils.d.ts +10 -0
  189. package/mcp-server/dist/tools/utils.d.ts.map +1 -0
  190. package/mcp-server/dist/tools/utils.js +30 -0
  191. package/mcp-server/dist/tools/utils.js.map +1 -0
  192. package/mcp-server/dist/tools/whiteboard-tools.d.ts +194 -0
  193. package/mcp-server/dist/tools/whiteboard-tools.d.ts.map +1 -0
  194. package/mcp-server/dist/tools/whiteboard-tools.js +198 -0
  195. package/mcp-server/dist/tools/whiteboard-tools.js.map +1 -0
  196. package/mcp-server/dist/tools/whiteboard.d.ts +8 -0
  197. package/mcp-server/dist/tools/whiteboard.d.ts.map +1 -0
  198. package/mcp-server/dist/tools/whiteboard.js +14 -0
  199. package/mcp-server/dist/tools/whiteboard.js.map +1 -0
  200. package/mcp-server/dist/tui.d.ts +3 -0
  201. package/mcp-server/dist/tui.d.ts.map +1 -0
  202. package/mcp-server/dist/tui.js +807 -0
  203. package/mcp-server/dist/tui.js.map +1 -0
  204. package/mcp-server/dist/types.d.ts +77 -0
  205. package/mcp-server/dist/types.d.ts.map +1 -0
  206. package/mcp-server/dist/types.js +2 -0
  207. package/mcp-server/dist/types.js.map +1 -0
  208. package/neural-interface/public/shared/styles.css +2 -2
  209. package/neural-interface/public/shared/ui-settings.js +2 -2
  210. package/neural-interface/server.js +82 -8
  211. package/neural-interface/templates/CLAUDE-template.md +9 -1
  212. package/package.json +4 -2
  213. package/preuninstall.js +28 -0
  214. package/setup.js +86 -1
@@ -0,0 +1,52 @@
1
+ import { z } from 'zod';
2
+ export declare const browserNavigateSchema: {
3
+ url: z.ZodString;
4
+ sessionId: z.ZodOptional<z.ZodString>;
5
+ };
6
+ export declare const browserNavigateDescription = "Navigate the browser to a URL. If no browser session exists, one is created automatically.";
7
+ export declare function handleBrowserNavigate(args: {
8
+ url: string;
9
+ sessionId?: string;
10
+ }): Promise<{
11
+ content: {
12
+ type: "text";
13
+ text: string;
14
+ }[];
15
+ }>;
16
+ export declare const browserGoBackSchema: {
17
+ sessionId: z.ZodOptional<z.ZodString>;
18
+ };
19
+ export declare const browserGoBackDescription = "Go back to the previous page in browser history.";
20
+ export declare function handleBrowserGoBack(args: {
21
+ sessionId?: string;
22
+ }): Promise<{
23
+ content: {
24
+ type: "text";
25
+ text: string;
26
+ }[];
27
+ }>;
28
+ export declare const browserGoForwardSchema: {
29
+ sessionId: z.ZodOptional<z.ZodString>;
30
+ };
31
+ export declare const browserGoForwardDescription = "Go forward to the next page in browser history.";
32
+ export declare function handleBrowserGoForward(args: {
33
+ sessionId?: string;
34
+ }): Promise<{
35
+ content: {
36
+ type: "text";
37
+ text: string;
38
+ }[];
39
+ }>;
40
+ export declare const browserReloadSchema: {
41
+ sessionId: z.ZodOptional<z.ZodString>;
42
+ };
43
+ export declare const browserReloadDescription = "Reload the current page. Useful after making changes or when content is stale.";
44
+ export declare function handleBrowserReload(args: {
45
+ sessionId?: string;
46
+ }): Promise<{
47
+ content: {
48
+ type: "text";
49
+ text: string;
50
+ }[];
51
+ }>;
52
+ //# sourceMappingURL=browser-navigate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-navigate.d.ts","sourceRoot":"","sources":["../../src/tools/browser-navigate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,qBAAqB;;;CAGjC,CAAC;AAEF,eAAO,MAAM,0BAA0B,+FACuD,CAAC;AAE/F,wBAAsB,qBAAqB,CAAC,IAAI,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAQpF;AAID,eAAO,MAAM,mBAAmB;;CAE/B,CAAC;AAEF,eAAO,MAAM,wBAAwB,qDAAqD,CAAC;AAE3F,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAQrE;AAID,eAAO,MAAM,sBAAsB;;CAElC,CAAC;AAEF,eAAO,MAAM,2BAA2B,oDAAoD,CAAC;AAE7F,wBAAsB,sBAAsB,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAQxE;AAID,eAAO,MAAM,mBAAmB;;CAE/B,CAAC;AAEF,eAAO,MAAM,wBAAwB,mFAAmF,CAAC;AAEzH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAQrE"}
@@ -0,0 +1,61 @@
1
+ import { z } from 'zod';
2
+ import * as ni from '../services/neural-interface.js';
3
+ import { text } from './response.js';
4
+ // ── browser_navigate ──
5
+ export const browserNavigateSchema = {
6
+ url: z.string().describe('The URL to navigate to.'),
7
+ sessionId: z.string().optional().describe('Browser session ID. If omitted, auto-selects the only open session or creates a new one.'),
8
+ };
9
+ export const browserNavigateDescription = 'Navigate the browser to a URL. If no browser session exists, one is created automatically.';
10
+ export async function handleBrowserNavigate(args) {
11
+ const resolved = await ni.resolveSession(args.sessionId, { url: args.url });
12
+ if ('error' in resolved)
13
+ return text(resolved.error);
14
+ const result = await ni.navigate(resolved.sessionId, args.url);
15
+ if (result.error)
16
+ return text(`Navigation failed: ${result.error}`);
17
+ return text(`Navigated to ${result.url} — "${result.title}"`);
18
+ }
19
+ // ── browser_go_back ──
20
+ export const browserGoBackSchema = {
21
+ sessionId: z.string().optional().describe('Browser session ID. If omitted, auto-selects the only open session.'),
22
+ };
23
+ export const browserGoBackDescription = 'Go back to the previous page in browser history.';
24
+ export async function handleBrowserGoBack(args) {
25
+ const resolved = await ni.resolveSession(args.sessionId);
26
+ if ('error' in resolved)
27
+ return text(resolved.error);
28
+ const result = await ni.goBack(resolved.sessionId);
29
+ if (result.error)
30
+ return text(`Go back failed: ${result.error}`);
31
+ return text(`Went back to ${result.url} — "${result.title}"`);
32
+ }
33
+ // ── browser_go_forward ──
34
+ export const browserGoForwardSchema = {
35
+ sessionId: z.string().optional().describe('Browser session ID. If omitted, auto-selects the only open session.'),
36
+ };
37
+ export const browserGoForwardDescription = 'Go forward to the next page in browser history.';
38
+ export async function handleBrowserGoForward(args) {
39
+ const resolved = await ni.resolveSession(args.sessionId);
40
+ if ('error' in resolved)
41
+ return text(resolved.error);
42
+ const result = await ni.goForward(resolved.sessionId);
43
+ if (result.error)
44
+ return text(`Go forward failed: ${result.error}`);
45
+ return text(`Went forward to ${result.url} — "${result.title}"`);
46
+ }
47
+ // ── browser_reload ──
48
+ export const browserReloadSchema = {
49
+ sessionId: z.string().optional().describe('Browser session ID. If omitted, auto-selects the only open session.'),
50
+ };
51
+ export const browserReloadDescription = 'Reload the current page. Useful after making changes or when content is stale.';
52
+ export async function handleBrowserReload(args) {
53
+ const resolved = await ni.resolveSession(args.sessionId);
54
+ if ('error' in resolved)
55
+ return text(resolved.error);
56
+ const result = await ni.reload(resolved.sessionId);
57
+ if (result.error)
58
+ return text(`Reload failed: ${result.error}`);
59
+ return text(`Reloaded — now at ${result.url} "${result.title}"`);
60
+ }
61
+ //# sourceMappingURL=browser-navigate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-navigate.js","sourceRoot":"","sources":["../../src/tools/browser-navigate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,298 @@
1
+ import { z } from 'zod';
2
+ export declare const browserSnapshotSchema: {
3
+ selector: z.ZodOptional<z.ZodString>;
4
+ sessionId: z.ZodOptional<z.ZodString>;
5
+ };
6
+ export declare const browserSnapshotDescription: string;
7
+ export declare function handleBrowserSnapshot(args: {
8
+ selector?: string;
9
+ sessionId?: string;
10
+ }): Promise<{
11
+ content: {
12
+ type: "text";
13
+ text: string;
14
+ }[];
15
+ }>;
16
+ export declare const browserContentSchema: {
17
+ format: z.ZodDefault<z.ZodOptional<z.ZodEnum<["text", "markdown"]>>>;
18
+ sessionId: z.ZodOptional<z.ZodString>;
19
+ };
20
+ export declare const browserContentDescription = "Get the content of the current page. Set format=\"markdown\" for clean markdown with structure preserved (headings, links, lists) \u2014 nav/header/footer/ads stripped automatically. Default format=\"text\" returns raw visible text. Markdown is preferred for LLM consumption \u2014 up to 80% more token-efficient than raw HTML.";
21
+ export declare function handleBrowserContent(args: {
22
+ format?: string;
23
+ sessionId?: string;
24
+ }): Promise<{
25
+ content: {
26
+ type: "text";
27
+ text: string;
28
+ }[];
29
+ }>;
30
+ export declare const browserScreenshotSchema: {
31
+ sessionId: z.ZodOptional<z.ZodString>;
32
+ };
33
+ export declare const browserScreenshotDescription = "Take a screenshot of the current page. Returns a base64-encoded JPEG image. Use sparingly \u2014 prefer browser_snapshot for most tasks as it is far more token-efficient.";
34
+ export declare function handleBrowserScreenshot(args: {
35
+ sessionId?: string;
36
+ }): Promise<{
37
+ content: ({
38
+ type: "text";
39
+ text: string;
40
+ } | {
41
+ type: "image";
42
+ data: string;
43
+ mimeType: string;
44
+ })[];
45
+ }>;
46
+ export declare const browserExtractTweetsSchema: {
47
+ sessionId: z.ZodOptional<z.ZodString>;
48
+ };
49
+ export declare const browserExtractTweetsDescription = "Extract all currently visible tweets as structured JSON (author, handle, text, time, url, replies, reposts, likes, views). Much faster than browser_snapshot for data harvesting \u2014 use this in scraping/loop flows instead of reading the ARIA tree. Navigate to x.com/search?q=%23hashtag&f=live first for latest-first hashtag results.";
50
+ export declare function handleBrowserExtractTweets(args: {
51
+ sessionId?: string;
52
+ }): Promise<{
53
+ content: {
54
+ type: "text";
55
+ text: string;
56
+ }[];
57
+ }>;
58
+ export declare const browserExtractFbPostsSchema: {
59
+ sessionId: z.ZodOptional<z.ZodString>;
60
+ };
61
+ export declare const browserExtractFbPostsDescription: string;
62
+ export declare function handleBrowserExtractFbPosts(args: {
63
+ sessionId?: string;
64
+ }): Promise<{
65
+ content: {
66
+ type: "text";
67
+ text: string;
68
+ }[];
69
+ }>;
70
+ export declare const browserExtractTiktokVideosSchema: {
71
+ sessionId: z.ZodOptional<z.ZodString>;
72
+ };
73
+ export declare const browserExtractTiktokVideosDescription: string;
74
+ export declare function handleBrowserExtractTiktokVideos(args: {
75
+ sessionId?: string;
76
+ }): Promise<{
77
+ content: {
78
+ type: "text";
79
+ text: string;
80
+ }[];
81
+ }>;
82
+ export declare const browserExtractTiktokSearchSchema: {
83
+ sessionId: z.ZodOptional<z.ZodString>;
84
+ };
85
+ export declare const browserExtractTiktokSearchDescription: string;
86
+ export declare function handleBrowserExtractTiktokSearch(args: {
87
+ sessionId?: string;
88
+ }): Promise<{
89
+ content: {
90
+ type: "text";
91
+ text: string;
92
+ }[];
93
+ }>;
94
+ export declare const browserExtractTiktokStudioSchema: {
95
+ sessionId: z.ZodOptional<z.ZodString>;
96
+ };
97
+ export declare const browserExtractTiktokStudioDescription: string;
98
+ export declare function handleBrowserExtractTiktokStudio(args: {
99
+ sessionId?: string;
100
+ }): Promise<{
101
+ content: {
102
+ type: "text";
103
+ text: string;
104
+ }[];
105
+ }>;
106
+ export declare const browserExtractTiktokProfileSchema: {
107
+ sessionId: z.ZodOptional<z.ZodString>;
108
+ };
109
+ export declare const browserExtractTiktokProfileDescription: string;
110
+ export declare function handleBrowserExtractTiktokProfile(args: {
111
+ sessionId?: string;
112
+ }): Promise<{
113
+ content: {
114
+ type: "text";
115
+ text: string;
116
+ }[];
117
+ }>;
118
+ export declare const browserExtractWaChatsSchema: {
119
+ sessionId: z.ZodOptional<z.ZodString>;
120
+ };
121
+ export declare const browserExtractWaChatsDescription: string;
122
+ export declare function handleBrowserExtractWaChats(args: {
123
+ sessionId?: string;
124
+ }): Promise<{
125
+ content: {
126
+ type: "text";
127
+ text: string;
128
+ }[];
129
+ }>;
130
+ export declare const browserExtractWaMessagesSchema: {
131
+ sessionId: z.ZodOptional<z.ZodString>;
132
+ };
133
+ export declare const browserExtractWaMessagesDescription: string;
134
+ export declare function handleBrowserExtractWaMessages(args: {
135
+ sessionId?: string;
136
+ }): Promise<{
137
+ content: {
138
+ type: "text";
139
+ text: string;
140
+ }[];
141
+ }>;
142
+ export declare const browserExtractIgFeedSchema: {
143
+ sessionId: z.ZodOptional<z.ZodString>;
144
+ };
145
+ export declare const browserExtractIgFeedDescription: string;
146
+ export declare function handleBrowserExtractIgFeed(args: {
147
+ sessionId?: string;
148
+ }): Promise<{
149
+ content: {
150
+ type: "text";
151
+ text: string;
152
+ }[];
153
+ }>;
154
+ export declare const browserExtractIgProfileSchema: {
155
+ sessionId: z.ZodOptional<z.ZodString>;
156
+ };
157
+ export declare const browserExtractIgProfileDescription: string;
158
+ export declare function handleBrowserExtractIgProfile(args: {
159
+ sessionId?: string;
160
+ }): Promise<{
161
+ content: {
162
+ type: "text";
163
+ text: string;
164
+ }[];
165
+ }>;
166
+ export declare const browserExtractIgPostSchema: {
167
+ sessionId: z.ZodOptional<z.ZodString>;
168
+ };
169
+ export declare const browserExtractIgPostDescription: string;
170
+ export declare function handleBrowserExtractIgPost(args: {
171
+ sessionId?: string;
172
+ }): Promise<{
173
+ content: {
174
+ type: "text";
175
+ text: string;
176
+ }[];
177
+ }>;
178
+ export declare const browserExtractIgReelsSchema: {
179
+ sessionId: z.ZodOptional<z.ZodString>;
180
+ };
181
+ export declare const browserExtractIgReelsDescription: string;
182
+ export declare function handleBrowserExtractIgReels(args: {
183
+ sessionId?: string;
184
+ }): Promise<{
185
+ content: {
186
+ type: "text";
187
+ text: string;
188
+ }[];
189
+ }>;
190
+ export declare const browserExtractIgSearchSchema: {
191
+ sessionId: z.ZodOptional<z.ZodString>;
192
+ };
193
+ export declare const browserExtractIgSearchDescription: string;
194
+ export declare function handleBrowserExtractIgSearch(args: {
195
+ sessionId?: string;
196
+ }): Promise<{
197
+ content: {
198
+ type: "text";
199
+ text: string;
200
+ }[];
201
+ }>;
202
+ export declare const browserExtractLiFeedSchema: {
203
+ sessionId: z.ZodOptional<z.ZodString>;
204
+ };
205
+ export declare const browserExtractLiFeedDescription: string;
206
+ export declare function handleBrowserExtractLiFeed(args: {
207
+ sessionId?: string;
208
+ }): Promise<{
209
+ content: {
210
+ type: "text";
211
+ text: string;
212
+ }[];
213
+ }>;
214
+ export declare const browserExtractLiProfileSchema: {
215
+ sessionId: z.ZodOptional<z.ZodString>;
216
+ };
217
+ export declare const browserExtractLiProfileDescription: string;
218
+ export declare function handleBrowserExtractLiProfile(args: {
219
+ sessionId?: string;
220
+ }): Promise<{
221
+ content: {
222
+ type: "text";
223
+ text: string;
224
+ }[];
225
+ }>;
226
+ export declare const browserExtractLiPostSchema: {
227
+ sessionId: z.ZodOptional<z.ZodString>;
228
+ };
229
+ export declare const browserExtractLiPostDescription: string;
230
+ export declare function handleBrowserExtractLiPost(args: {
231
+ sessionId?: string;
232
+ }): Promise<{
233
+ content: {
234
+ type: "text";
235
+ text: string;
236
+ }[];
237
+ }>;
238
+ export declare const browserExtractLiNotificationsSchema: {
239
+ sessionId: z.ZodOptional<z.ZodString>;
240
+ };
241
+ export declare const browserExtractLiNotificationsDescription: string;
242
+ export declare function handleBrowserExtractLiNotifications(args: {
243
+ sessionId?: string;
244
+ }): Promise<{
245
+ content: {
246
+ type: "text";
247
+ text: string;
248
+ }[];
249
+ }>;
250
+ export declare const browserExtractLiMessagesSchema: {
251
+ sessionId: z.ZodOptional<z.ZodString>;
252
+ };
253
+ export declare const browserExtractLiMessagesDescription: string;
254
+ export declare function handleBrowserExtractLiMessages(args: {
255
+ sessionId?: string;
256
+ }): Promise<{
257
+ content: {
258
+ type: "text";
259
+ text: string;
260
+ }[];
261
+ }>;
262
+ export declare const browserExtractLiSearchPeopleSchema: {
263
+ sessionId: z.ZodOptional<z.ZodString>;
264
+ };
265
+ export declare const browserExtractLiSearchPeopleDescription: string;
266
+ export declare function handleBrowserExtractLiSearchPeople(args: {
267
+ sessionId?: string;
268
+ }): Promise<{
269
+ content: {
270
+ type: "text";
271
+ text: string;
272
+ }[];
273
+ }>;
274
+ export declare const browserExtractLiNetworkSchema: {
275
+ sessionId: z.ZodOptional<z.ZodString>;
276
+ };
277
+ export declare const browserExtractLiNetworkDescription: string;
278
+ export declare function handleBrowserExtractLiNetwork(args: {
279
+ sessionId?: string;
280
+ }): Promise<{
281
+ content: {
282
+ type: "text";
283
+ text: string;
284
+ }[];
285
+ }>;
286
+ export declare const browserExtractLiJobsSchema: {
287
+ sessionId: z.ZodOptional<z.ZodString>;
288
+ };
289
+ export declare const browserExtractLiJobsDescription: string;
290
+ export declare function handleBrowserExtractLiJobs(args: {
291
+ sessionId?: string;
292
+ }): Promise<{
293
+ content: {
294
+ type: "text";
295
+ text: string;
296
+ }[];
297
+ }>;
298
+ //# sourceMappingURL=browser-observe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-observe.d.ts","sourceRoot":"","sources":["../../src/tools/browser-observe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,qBAAqB;;;CAKjC,CAAC;AAEF,eAAO,MAAM,0BAA0B,QAOqN,CAAC;AAyC7P,wBAAsB,qBAAqB,CAAC,IAAI,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAoB1F;AAID,eAAO,MAAM,oBAAoB;;;CAKhC,CAAC;AAEF,eAAO,MAAM,yBAAyB,4UACuR,CAAC;AAE9T,wBAAsB,oBAAoB,CAAC,IAAI,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAqBvF;AAID,eAAO,MAAM,uBAAuB;;CAEnC,CAAC;AAEF,eAAO,MAAM,4BAA4B,+KACgI,CAAC;AAE1K,wBAAsB,uBAAuB,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;;;;;GAazE;AAuBD,eAAO,MAAM,0BAA0B;;CAEtC,CAAC;AAEF,eAAO,MAAM,+BAA+B,mVACiS,CAAC;AAE9U,wBAAsB,0BAA0B,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAc5E;AAsBD,eAAO,MAAM,2BAA2B;;CAEvC,CAAC;AAEF,eAAO,MAAM,gCAAgC,QAG2B,CAAC;AAEzE,wBAAsB,2BAA2B,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAa7E;AA8BD,eAAO,MAAM,gCAAgC;;CAE5C,CAAC;AAEF,eAAO,MAAM,qCAAqC,QAI0B,CAAC;AAE7E,wBAAsB,gCAAgC,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAalF;AAqBD,eAAO,MAAM,gCAAgC;;CAE5C,CAAC;AAEF,eAAO,MAAM,qCAAqC,QAIyB,CAAC;AAE5E,wBAAsB,gCAAgC,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAalF;AAuBD,eAAO,MAAM,gCAAgC;;CAE5C,CAAC;AAEF,eAAO,MAAM,qCAAqC,QAIwB,CAAC;AAE3E,wBAAsB,gCAAgC,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAalF;AAwBD,eAAO,MAAM,iCAAiC;;CAE7C,CAAC;AAEF,eAAO,MAAM,sCAAsC,QAIkC,CAAC;AAEtF,wBAAsB,iCAAiC,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAanF;AAyBD,eAAO,MAAM,2BAA2B;;CAEvC,CAAC;AAEF,eAAO,MAAM,gCAAgC,QAI4B,CAAC;AAE1E,wBAAsB,2BAA2B,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAa7E;AAuBD,eAAO,MAAM,8BAA8B;;CAE1C,CAAC;AAEF,eAAO,MAAM,mCAAmC,QAIe,CAAC;AAEhE,wBAAsB,8BAA8B,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAahF;AAyBD,eAAO,MAAM,0BAA0B;;CAEtC,CAAC;AAEF,eAAO,MAAM,+BAA+B,QAG6C,CAAC;AAE1F,wBAAsB,0BAA0B,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAa5E;AAwCD,eAAO,MAAM,6BAA6B;;CAEzC,CAAC;AAEF,eAAO,MAAM,kCAAkC,QAG+D,CAAC;AAE/G,wBAAsB,6BAA6B,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAa/E;AAqDD,eAAO,MAAM,0BAA0B;;CAEtC,CAAC;AAEF,eAAO,MAAM,+BAA+B,QAIwB,CAAC;AAErE,wBAAsB,0BAA0B,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAa5E;AA2CD,eAAO,MAAM,2BAA2B;;CAEvC,CAAC;AAEF,eAAO,MAAM,gCAAgC,QAG8B,CAAC;AAE5E,wBAAsB,2BAA2B,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAa7E;AAYD,eAAO,MAAM,4BAA4B;;CAExC,CAAC;AAEF,eAAO,MAAM,iCAAiC,QAG0B,CAAC;AAEzE,wBAAsB,4BAA4B,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAa9E;AAuCD,eAAO,MAAM,0BAA0B;;CAEtC,CAAC;AAEF,eAAO,MAAM,+BAA+B,QAIqC,CAAC;AAElF,wBAAsB,0BAA0B,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAa5E;AAgCD,eAAO,MAAM,6BAA6B;;CAEzC,CAAC;AAEF,eAAO,MAAM,kCAAkC,QAImB,CAAC;AAEnE,wBAAsB,6BAA6B,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAa/E;AAiCD,eAAO,MAAM,0BAA0B;;CAEtC,CAAC;AAEF,eAAO,MAAM,+BAA+B,QAI+D,CAAC;AAE5G,wBAAsB,0BAA0B,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAa5E;AAkBD,eAAO,MAAM,mCAAmC;;CAE/C,CAAC;AAEF,eAAO,MAAM,wCAAwC,QAGmB,CAAC;AAEzE,wBAAsB,mCAAmC,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAarF;AA0BD,eAAO,MAAM,8BAA8B;;CAE1C,CAAC;AAEF,eAAO,MAAM,mCAAmC,QAK+D,CAAC;AAEhH,wBAAsB,8BAA8B,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAehF;AA2CD,eAAO,MAAM,kCAAkC;;CAE9C,CAAC;AAEF,eAAO,MAAM,uCAAuC,QAIiC,CAAC;AAEtF,wBAAsB,kCAAkC,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAapF;AAgDD,eAAO,MAAM,6BAA6B;;CAEzC,CAAC;AAEF,eAAO,MAAM,kCAAkC,QAMyB,CAAC;AAEzE,wBAAsB,6BAA6B,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAe/E;AAsGD,eAAO,MAAM,0BAA0B;;CAEtC,CAAC;AAEF,eAAO,MAAM,+BAA+B,QAMR,CAAC;AAErC,wBAAsB,0BAA0B,CAAC,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;GAa5E"}