@superblocksteam/vite-plugin-file-sync 2.0.69-next.2 → 2.0.70-next.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 (232) hide show
  1. package/dist/ai-service/agent/middleware.d.ts +6 -0
  2. package/dist/ai-service/agent/middleware.d.ts.map +1 -1
  3. package/dist/ai-service/agent/middleware.js +11 -0
  4. package/dist/ai-service/agent/middleware.js.map +1 -1
  5. package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts.map +1 -1
  6. package/dist/ai-service/agent/prompts/build-base-system-prompt.js +45 -3
  7. package/dist/ai-service/agent/prompts/build-base-system-prompt.js.map +1 -1
  8. package/dist/ai-service/agent/tool-message-utils.d.ts +2 -0
  9. package/dist/ai-service/agent/tool-message-utils.d.ts.map +1 -1
  10. package/dist/ai-service/agent/tool-message-utils.js +40 -0
  11. package/dist/ai-service/agent/tool-message-utils.js.map +1 -1
  12. package/dist/ai-service/agent/tools/apis/api-validation-orchestrator.js +3 -7
  13. package/dist/ai-service/agent/tools/apis/api-validation-orchestrator.js.map +1 -1
  14. package/dist/ai-service/agent/tools/apis/build-api-artifact.d.ts.map +1 -1
  15. package/dist/ai-service/agent/tools/apis/build-api-artifact.js +1 -5
  16. package/dist/ai-service/agent/tools/apis/build-api-artifact.js.map +1 -1
  17. package/dist/ai-service/agent/tools/apis/get-api-docs.d.ts.map +1 -1
  18. package/dist/ai-service/agent/tools/apis/get-api-docs.js +24 -0
  19. package/dist/ai-service/agent/tools/apis/get-api-docs.js.map +1 -1
  20. package/dist/ai-service/agent/tools/apis/test-api.js +2 -2
  21. package/dist/ai-service/agent/tools/apis/test-api.js.map +1 -1
  22. package/dist/ai-service/agent/tools/build-capture-screenshot.d.ts +10 -0
  23. package/dist/ai-service/agent/tools/build-capture-screenshot.d.ts.map +1 -0
  24. package/dist/ai-service/agent/tools/build-capture-screenshot.js +103 -0
  25. package/dist/ai-service/agent/tools/build-capture-screenshot.js.map +1 -0
  26. package/dist/ai-service/agent/tools/build-install-packages.d.ts.map +1 -1
  27. package/dist/ai-service/agent/tools/build-install-packages.js +36 -29
  28. package/dist/ai-service/agent/tools/build-install-packages.js.map +1 -1
  29. package/dist/ai-service/agent/tools/build-multi-edit-file.d.ts +1 -1
  30. package/dist/ai-service/agent/tools/build-reload-file.d.ts +8 -0
  31. package/dist/ai-service/agent/tools/build-reload-file.d.ts.map +1 -0
  32. package/dist/ai-service/agent/tools/build-reload-file.js +57 -0
  33. package/dist/ai-service/agent/tools/build-reload-file.js.map +1 -0
  34. package/dist/ai-service/agent/tools/get-console-logs.d.ts +23 -0
  35. package/dist/ai-service/agent/tools/get-console-logs.d.ts.map +1 -0
  36. package/dist/ai-service/agent/tools/get-console-logs.js +84 -0
  37. package/dist/ai-service/agent/tools/get-console-logs.js.map +1 -0
  38. package/dist/ai-service/agent/tools/get-runtime-errors.d.ts +13 -0
  39. package/dist/ai-service/agent/tools/get-runtime-errors.d.ts.map +1 -0
  40. package/dist/ai-service/agent/tools/get-runtime-errors.js +59 -0
  41. package/dist/ai-service/agent/tools/get-runtime-errors.js.map +1 -0
  42. package/dist/ai-service/agent/tools/index.d.ts +4 -0
  43. package/dist/ai-service/agent/tools/index.d.ts.map +1 -1
  44. package/dist/ai-service/agent/tools/index.js +4 -0
  45. package/dist/ai-service/agent/tools/index.js.map +1 -1
  46. package/dist/ai-service/agent/tools/integrations/execute-request.d.ts +5 -1
  47. package/dist/ai-service/agent/tools/integrations/execute-request.d.ts.map +1 -1
  48. package/dist/ai-service/agent/tools/integrations/execute-request.js +20 -2
  49. package/dist/ai-service/agent/tools/integrations/execute-request.js.map +1 -1
  50. package/dist/ai-service/agent/tools/shared-helpers.d.ts +35 -0
  51. package/dist/ai-service/agent/tools/shared-helpers.d.ts.map +1 -1
  52. package/dist/ai-service/agent/tools/shared-helpers.js +89 -0
  53. package/dist/ai-service/agent/tools/shared-helpers.js.map +1 -1
  54. package/dist/ai-service/agent/tools.d.ts.map +1 -1
  55. package/dist/ai-service/agent/tools.js +11 -5
  56. package/dist/ai-service/agent/tools.js.map +1 -1
  57. package/dist/ai-service/agent/tools2/access-control.d.ts.map +1 -1
  58. package/dist/ai-service/agent/tools2/access-control.js +8 -0
  59. package/dist/ai-service/agent/tools2/access-control.js.map +1 -1
  60. package/dist/ai-service/agent/tools2/registry.d.ts.map +1 -1
  61. package/dist/ai-service/agent/tools2/registry.js +3 -3
  62. package/dist/ai-service/agent/tools2/registry.js.map +1 -1
  63. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts.map +1 -1
  64. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js +38 -10
  65. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js.map +1 -1
  66. package/dist/ai-service/agent/tools2/types.d.ts +11 -1
  67. package/dist/ai-service/agent/tools2/types.d.ts.map +1 -1
  68. package/dist/ai-service/agent/tools2/types.js +1 -0
  69. package/dist/ai-service/agent/tools2/types.js.map +1 -1
  70. package/dist/ai-service/agent/utils.d.ts.map +1 -1
  71. package/dist/ai-service/agent/utils.js +33 -1
  72. package/dist/ai-service/agent/utils.js.map +1 -1
  73. package/dist/ai-service/app-interface/shell.d.ts.map +1 -1
  74. package/dist/ai-service/app-interface/shell.js +30 -15
  75. package/dist/ai-service/app-interface/shell.js.map +1 -1
  76. package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
  77. package/dist/ai-service/chat/chat-session-store.js +71 -0
  78. package/dist/ai-service/chat/chat-session-store.js.map +1 -1
  79. package/dist/ai-service/chat/extract-history.d.ts.map +1 -1
  80. package/dist/ai-service/chat/extract-history.js +0 -2
  81. package/dist/ai-service/chat/extract-history.js.map +1 -1
  82. package/dist/ai-service/chat/utils.d.ts +2 -0
  83. package/dist/ai-service/chat/utils.d.ts.map +1 -0
  84. package/dist/ai-service/chat/utils.js +8 -0
  85. package/dist/ai-service/chat/utils.js.map +1 -0
  86. package/dist/ai-service/clark-provider/clark-language-model.d.ts.map +1 -1
  87. package/dist/ai-service/clark-provider/clark-language-model.js +6 -0
  88. package/dist/ai-service/clark-provider/clark-language-model.js.map +1 -1
  89. package/dist/ai-service/clark-provider/clark-provider.d.ts +2 -1
  90. package/dist/ai-service/clark-provider/clark-provider.d.ts.map +1 -1
  91. package/dist/ai-service/clark-provider/clark-provider.js.map +1 -1
  92. package/dist/ai-service/features.d.ts +4 -0
  93. package/dist/ai-service/features.d.ts.map +1 -1
  94. package/dist/ai-service/features.js +4 -0
  95. package/dist/ai-service/features.js.map +1 -1
  96. package/dist/ai-service/index.d.ts +7 -1
  97. package/dist/ai-service/index.d.ts.map +1 -1
  98. package/dist/ai-service/index.js +129 -10
  99. package/dist/ai-service/index.js.map +1 -1
  100. package/dist/ai-service/integration-validator.d.ts.map +1 -1
  101. package/dist/ai-service/integration-validator.js +1 -1
  102. package/dist/ai-service/integration-validator.js.map +1 -1
  103. package/dist/ai-service/judge/integration/mcp-client.d.ts +13 -0
  104. package/dist/ai-service/judge/integration/mcp-client.d.ts.map +1 -1
  105. package/dist/ai-service/judge/integration/mcp-client.js +15 -0
  106. package/dist/ai-service/judge/integration/mcp-client.js.map +1 -1
  107. package/dist/ai-service/judge/tools/playwright-action.d.ts +1 -1
  108. package/dist/ai-service/llm/client.d.ts +12 -1
  109. package/dist/ai-service/llm/client.d.ts.map +1 -1
  110. package/dist/ai-service/llm/client.js +20 -2
  111. package/dist/ai-service/llm/client.js.map +1 -1
  112. package/dist/ai-service/llm/context/context.d.ts.map +1 -1
  113. package/dist/ai-service/llm/context/context.js +1 -1
  114. package/dist/ai-service/llm/context/context.js.map +1 -1
  115. package/dist/ai-service/llm/context/utils/message-utils.d.ts +3 -0
  116. package/dist/ai-service/llm/context/utils/message-utils.d.ts.map +1 -1
  117. package/dist/ai-service/llm/context/utils/message-utils.js +53 -1
  118. package/dist/ai-service/llm/context/utils/message-utils.js.map +1 -1
  119. package/dist/ai-service/llm/error.d.ts +10 -2
  120. package/dist/ai-service/llm/error.d.ts.map +1 -1
  121. package/dist/ai-service/llm/error.js +22 -0
  122. package/dist/ai-service/llm/error.js.map +1 -1
  123. package/dist/ai-service/llm/interaction/adapters/vercel.js.map +1 -1
  124. package/dist/ai-service/llm/interaction/index.d.ts +1 -1
  125. package/dist/ai-service/llm/interaction/index.d.ts.map +1 -1
  126. package/dist/ai-service/llm/interaction/index.js.map +1 -1
  127. package/dist/ai-service/llm/interaction/middlewares/stream-retry.d.ts +30 -36
  128. package/dist/ai-service/llm/interaction/middlewares/stream-retry.d.ts.map +1 -1
  129. package/dist/ai-service/llm/interaction/middlewares/stream-retry.js +123 -223
  130. package/dist/ai-service/llm/interaction/middlewares/stream-retry.js.map +1 -1
  131. package/dist/ai-service/llm/interaction/middlewares/utils/abort.d.ts +41 -0
  132. package/dist/ai-service/llm/interaction/middlewares/utils/abort.d.ts.map +1 -0
  133. package/dist/ai-service/llm/interaction/middlewares/utils/abort.js +74 -0
  134. package/dist/ai-service/llm/interaction/middlewares/utils/abort.js.map +1 -0
  135. package/dist/ai-service/llm/interaction/middlewares/utils/fallback-chain.d.ts +62 -0
  136. package/dist/ai-service/llm/interaction/middlewares/utils/fallback-chain.d.ts.map +1 -0
  137. package/dist/ai-service/llm/interaction/middlewares/utils/fallback-chain.js +112 -0
  138. package/dist/ai-service/llm/interaction/middlewares/utils/fallback-chain.js.map +1 -0
  139. package/dist/ai-service/llm/interaction/middlewares/utils/retries.d.ts +47 -0
  140. package/dist/ai-service/llm/interaction/middlewares/utils/retries.d.ts.map +1 -0
  141. package/dist/ai-service/llm/interaction/middlewares/utils/retries.js +131 -0
  142. package/dist/ai-service/llm/interaction/middlewares/utils/retries.js.map +1 -0
  143. package/dist/ai-service/llm/interaction/middlewares/utils/stall-detector.d.ts +30 -0
  144. package/dist/ai-service/llm/interaction/middlewares/utils/stall-detector.d.ts.map +1 -0
  145. package/dist/ai-service/llm/interaction/middlewares/utils/stall-detector.js +36 -0
  146. package/dist/ai-service/llm/interaction/middlewares/utils/stall-detector.js.map +1 -0
  147. package/dist/ai-service/llm/interaction/middlewares/utils/streams.d.ts +42 -0
  148. package/dist/ai-service/llm/interaction/middlewares/utils/streams.d.ts.map +1 -0
  149. package/dist/ai-service/llm/interaction/middlewares/utils/streams.js +208 -0
  150. package/dist/ai-service/llm/interaction/middlewares/utils/streams.js.map +1 -0
  151. package/dist/ai-service/llm/interaction/provider.d.ts +2 -0
  152. package/dist/ai-service/llm/interaction/provider.d.ts.map +1 -1
  153. package/dist/ai-service/llm/interaction/stream-lifecycle.d.ts.map +1 -1
  154. package/dist/ai-service/llm/interaction/stream-lifecycle.js +21 -3
  155. package/dist/ai-service/llm/interaction/stream-lifecycle.js.map +1 -1
  156. package/dist/ai-service/llm/provider.d.ts.map +1 -1
  157. package/dist/ai-service/llm/provider.js +4 -3
  158. package/dist/ai-service/llm/provider.js.map +1 -1
  159. package/dist/ai-service/llmobs/middleware/stream-text.d.ts.map +1 -1
  160. package/dist/ai-service/llmobs/middleware/stream-text.js +17 -4
  161. package/dist/ai-service/llmobs/middleware/stream-text.js.map +1 -1
  162. package/dist/ai-service/mcp/adapter/index.d.ts +8 -0
  163. package/dist/ai-service/mcp/adapter/index.d.ts.map +1 -0
  164. package/dist/ai-service/mcp/adapter/index.js +10 -0
  165. package/dist/ai-service/mcp/adapter/index.js.map +1 -0
  166. package/dist/ai-service/mcp/adapter/json-schema-to-zod.d.ts +44 -0
  167. package/dist/ai-service/mcp/adapter/json-schema-to-zod.d.ts.map +1 -0
  168. package/dist/ai-service/mcp/adapter/json-schema-to-zod.js +231 -0
  169. package/dist/ai-service/mcp/adapter/json-schema-to-zod.js.map +1 -0
  170. package/dist/ai-service/mcp/adapter/mcp-tool-adapter.d.ts +118 -0
  171. package/dist/ai-service/mcp/adapter/mcp-tool-adapter.d.ts.map +1 -0
  172. package/dist/ai-service/mcp/adapter/mcp-tool-adapter.js +254 -0
  173. package/dist/ai-service/mcp/adapter/mcp-tool-adapter.js.map +1 -0
  174. package/dist/ai-service/mcp/index.d.ts +11 -0
  175. package/dist/ai-service/mcp/index.d.ts.map +1 -0
  176. package/dist/ai-service/mcp/index.js +11 -0
  177. package/dist/ai-service/mcp/index.js.map +1 -0
  178. package/dist/ai-service/mcp/types.d.ts +94 -0
  179. package/dist/ai-service/mcp/types.d.ts.map +1 -0
  180. package/dist/ai-service/mcp/types.js +7 -0
  181. package/dist/ai-service/mcp/types.js.map +1 -0
  182. package/dist/ai-service/state-machine/clark-fsm.d.ts +6 -1
  183. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
  184. package/dist/ai-service/state-machine/clark-fsm.js +13 -0
  185. package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
  186. package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -1
  187. package/dist/ai-service/state-machine/handlers/agent-planning.js +1 -1
  188. package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -1
  189. package/dist/ai-service/state-machine/handlers/idle.d.ts.map +1 -1
  190. package/dist/ai-service/state-machine/handlers/idle.js +4 -0
  191. package/dist/ai-service/state-machine/handlers/idle.js.map +1 -1
  192. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
  193. package/dist/ai-service/state-machine/handlers/llm-generating.js +12 -2
  194. package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
  195. package/dist/ai-service/state-machine/helpers/file-read-tracker.d.ts.map +1 -1
  196. package/dist/ai-service/state-machine/helpers/file-read-tracker.js +12 -3
  197. package/dist/ai-service/state-machine/helpers/file-read-tracker.js.map +1 -1
  198. package/dist/ai-service/template-renderer.d.ts.map +1 -1
  199. package/dist/ai-service/template-renderer.js +4 -2
  200. package/dist/ai-service/template-renderer.js.map +1 -1
  201. package/dist/ai-service/test-utils/error-mocks.d.ts.map +1 -1
  202. package/dist/ai-service/test-utils/error-mocks.js +9 -4
  203. package/dist/ai-service/test-utils/error-mocks.js.map +1 -1
  204. package/dist/ai-service/transform/shared.js +1 -1
  205. package/dist/ai-service/transform/shared.js.map +1 -1
  206. package/dist/ai-service/util/backoff-strategy.d.ts.map +1 -1
  207. package/dist/ai-service/util/backoff-strategy.js +14 -1
  208. package/dist/ai-service/util/backoff-strategy.js.map +1 -1
  209. package/dist/clark-log-forwarder.d.ts +15 -0
  210. package/dist/clark-log-forwarder.d.ts.map +1 -0
  211. package/dist/clark-log-forwarder.js +31 -0
  212. package/dist/clark-log-forwarder.js.map +1 -0
  213. package/dist/components-manager.js +1 -1
  214. package/dist/components-manager.js.map +1 -1
  215. package/dist/file-sync-vite-plugin.d.ts.map +1 -1
  216. package/dist/file-sync-vite-plugin.js +11 -0
  217. package/dist/file-sync-vite-plugin.js.map +1 -1
  218. package/dist/file-system-manager.d.ts.map +1 -1
  219. package/dist/file-system-manager.js +3 -3
  220. package/dist/file-system-manager.js.map +1 -1
  221. package/dist/socket-manager.d.ts +3 -0
  222. package/dist/socket-manager.d.ts.map +1 -1
  223. package/dist/socket-manager.js +23 -0
  224. package/dist/socket-manager.js.map +1 -1
  225. package/dist/util/logger.d.ts +5 -10
  226. package/dist/util/logger.d.ts.map +1 -1
  227. package/dist/util/logger.js +6 -7
  228. package/dist/util/logger.js.map +1 -1
  229. package/dist/util.d.ts.map +1 -1
  230. package/dist/util.js +0 -2
  231. package/dist/util.js.map +1 -1
  232. package/package.json +8 -8
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-capture-screenshot.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools/build-capture-screenshot.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAE9D,eAAO,MAAM,iCAAiC;WAEvB,KAAK;;;;;;GAqI3B,CAAC"}
@@ -0,0 +1,103 @@
1
+ import z from "zod";
2
+ import { getErrorMeta } from "../../../util/logger.js";
3
+ import { createToolFactory, ToolCategory, PermissionLevel, } from "../tools2/types.js";
4
+ import { screenshotToModelOutput, validateScreenshotResponse, } from "./shared-helpers.js";
5
+ export const buildCaptureScreenshotToolFactory = createToolFactory("build_captureScreenshot", ({ clark }) => {
6
+ return {
7
+ category: ToolCategory.TEST,
8
+ defaultPermission: PermissionLevel.ALLOW,
9
+ readOnly: true,
10
+ skipOutputLimit: () => true, // Output is transformed to content type with media parts
11
+ description: `
12
+ Capture a screenshot of the running application.
13
+ This tool allows you to visually verify that the UI matches the user's expectations
14
+ and identify any layout, styling, or visual issues.
15
+
16
+ **Parameters:**
17
+ - reload (optional, default true): Performs a full page reload before
18
+ capturing the screenshot. Use this when testing build output to ensure the page
19
+ content is fresh (typically after running build_debug so generated content is loaded).
20
+ - captureLoadingState (optional, default false): Only applies when reload is true.
21
+ Set to true to capture loading-state shimmers/skeletons immediately after reload,
22
+ instead of waiting for APIs to finish.
23
+
24
+ **When to use reload=false (default):**
25
+ - When the user asks to verify something visually on the currently loaded app
26
+ - When you need to preserve the current application state (e.g., form data, scroll position)
27
+ - When the user reports visual issues and you want to see exactly what they see
28
+
29
+ **When to use reload=true:**
30
+ - After making code changes and calling build_debug, to test the build output
31
+ - When you need to verify the UI renders correctly from a fresh state
32
+ - Before calling build_finalize to verify the visual appearance after changes
33
+
34
+ **LIMITATIONS:**
35
+ - This is a read-only tool: you CANNOT interact with, click, or navigate the UI through this tool
36
+ `,
37
+ inputSchema: z.object({
38
+ reload: z
39
+ .boolean()
40
+ .optional()
41
+ .default(true)
42
+ .describe("Set to false only when you must preserve current UI state (e.g., user asks to verify current screen)."),
43
+ captureLoadingState: z
44
+ .boolean()
45
+ .optional()
46
+ .default(false)
47
+ .describe("Only applies when reload is true. Set to true to capture loading-state shimmers/skeletons immediately after reload, instead of waiting for APIs to finish."),
48
+ }),
49
+ execute: async ({ reload, captureLoadingState }) => {
50
+ const logger = clark.logger;
51
+ const shouldReload = reload ?? true;
52
+ logger.info(`[build_captureScreenshot] Starting screenshot capture (reload=${shouldReload})`);
53
+ // If reload is requested before running debug, proceed but warn so usage is clear
54
+ if (shouldReload && !clark.context.debugToolCalled) {
55
+ logger.warn(`[build_captureScreenshot] Reload requested before build_debug; proceeding without prior debug run`);
56
+ }
57
+ if (!clark.context.peer) {
58
+ const error = "Editor client not available - cannot capture screenshot";
59
+ logger.error(`[build_captureScreenshot] ${error}`);
60
+ throw new Error(error);
61
+ }
62
+ logger.info(`[build_captureScreenshot] Editor client available, ${shouldReload ? "triggering reload and capture" : "sending capture request"}...`);
63
+ try {
64
+ const requestStartTime = Date.now();
65
+ const response = await clark.context.peer.call.aiCaptureScreenshot({
66
+ reload: shouldReload,
67
+ captureLoadingState: captureLoadingState ?? false,
68
+ });
69
+ const requestDuration = Date.now() - requestStartTime;
70
+ logger.info(`[build_captureScreenshot] Received RPC response after ${requestDuration}ms`);
71
+ const { dataUrl } = validateScreenshotResponse(response, "build_captureScreenshot");
72
+ logger.info(`[build_captureScreenshot] Successfully captured screenshot${shouldReload ? " after reload" : ""} (${dataUrl.length} chars)`);
73
+ // Send screenshot to UI for display
74
+ const messageId = clark.context.pendingScreenshotMessageId;
75
+ if (messageId) {
76
+ logger.info(`[build_captureScreenshot] Updating message ${messageId} with screenshot`);
77
+ void clark.context.peer?.call.aiUpdateToolMessageScreenshot({
78
+ messageId,
79
+ screenshotDataUrl: dataUrl,
80
+ });
81
+ // Clear the pending message ID
82
+ clark.updateContext({
83
+ pendingScreenshotMessageId: undefined,
84
+ });
85
+ }
86
+ return {
87
+ dataUrl,
88
+ };
89
+ }
90
+ catch (error) {
91
+ logger.error(`[build_captureScreenshot] Error capturing screenshot:`, getErrorMeta(error));
92
+ throw error;
93
+ }
94
+ },
95
+ getActionName: () => ({
96
+ future: "capture a screenshot of the running app",
97
+ present: "capturing a screenshot of the running app",
98
+ past: "captured a screenshot of the running app",
99
+ }),
100
+ toModelOutput: (output) => screenshotToModelOutput(output, "build_captureScreenshot"),
101
+ };
102
+ });
103
+ //# sourceMappingURL=build-capture-screenshot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-capture-screenshot.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools/build-capture-screenshot.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"build-install-packages.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools/build-install-packages.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAOhF,UAAU,iBAAiB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;CAChB;AAyCD,eAAO,MAAM,+BAA+B;WAMjC,KAAK;cACF,uBAAuB;;;;;;;;;;;;;;;GA6FpC,CAAC"}
1
+ {"version":3,"file":"build-install-packages.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools/build-install-packages.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAOhF,UAAU,iBAAiB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;CAChB;AAyCD,eAAO,MAAM,+BAA+B;WAMjC,KAAK;cACF,uBAAuB;;;;;;;;;;;;;;;GAiGpC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import fs from "node:fs/promises";
2
2
  import path from "node:path";
3
3
  import z from "zod";
4
+ import { getErrorMeta, getLogger } from "../../../util/logger.js";
4
5
  import { createToolFactory, ToolCategory } from "../tools2/types.js";
5
6
  async function readPackageJson(appRootDirPath) {
6
7
  try {
@@ -64,37 +65,43 @@ export const buildInstallPackagesToolFactory = createToolFactory("build_installP
64
65
  .describe("Packages to install. If not provided or empty, runs a standard install to update dependencies from package.json"),
65
66
  }),
66
67
  execute: async ({ packages }) => {
67
- // create draft marker for package.json
68
- await services.draftInterface.createDraftMarkerOnly("package.json");
69
- let output;
70
- let versionChanges = [];
71
- if (packages && packages.length > 0) {
72
- const currentPackageJson = await readPackageJson(services.appShell.appRootDirPath);
73
- versionChanges = detectVersionChanges(packages, currentPackageJson);
74
- // Mode 1: Install specific packages
75
- output = await services.appShell.installSpecificPackages(packages, clark.context.abortController?.signal);
76
- const packageNames = packages.map((pkg) => pkg.name).join(", ");
77
- let message = `Successfully installed packages: ${packageNames}`;
78
- // Add version change information if any
79
- if (versionChanges.length > 0) {
80
- const changeDetails = versionChanges
81
- .map((change) => ` - ${change.name}: ${change.oldVersion} → ${change.newVersion}${change.isDev ? " (dev)" : ""}`)
82
- .join("\n");
83
- message += `\n\nVersion changes detected:\n${changeDetails}\n\n⚠️ WARNING: Version changes may affect existing components that depend on these packages. Consider checking for breaking changes.`;
68
+ try {
69
+ // create draft marker for package.json
70
+ await services.draftInterface.createDraftMarkerOnly("package.json");
71
+ let output;
72
+ let versionChanges = [];
73
+ if (packages && packages.length > 0) {
74
+ const currentPackageJson = await readPackageJson(services.appShell.appRootDirPath);
75
+ versionChanges = detectVersionChanges(packages, currentPackageJson);
76
+ // Mode 1: Install specific packages
77
+ output = await services.appShell.installSpecificPackages(packages, clark.context.abortController?.signal);
78
+ const packageNames = packages.map((pkg) => pkg.name).join(", ");
79
+ let message = `Successfully installed packages: ${packageNames}`;
80
+ // Add version change information if any
81
+ if (versionChanges.length > 0) {
82
+ const changeDetails = versionChanges
83
+ .map((change) => ` - ${change.name}: ${change.oldVersion} → ${change.newVersion}${change.isDev ? " (dev)" : ""}`)
84
+ .join("\n");
85
+ message += `\n\nVersion changes detected:\n${changeDetails}\n\n⚠️ WARNING: Version changes may affect existing components that depend on these packages. Consider checking for breaking changes.`;
86
+ }
87
+ return {
88
+ output,
89
+ message,
90
+ versionChanges,
91
+ };
92
+ }
93
+ else {
94
+ // Mode 2: Install from package.json
95
+ output = await services.appShell.runPackageManagerInstall(clark.context.abortController?.signal);
96
+ return {
97
+ output,
98
+ message: `Successfully ran package manager install command`,
99
+ };
84
100
  }
85
- return {
86
- output,
87
- message,
88
- versionChanges,
89
- };
90
101
  }
91
- else {
92
- // Mode 2: Install from package.json
93
- output = await services.appShell.runPackageManagerInstall(clark.context.abortController?.signal);
94
- return {
95
- output,
96
- message: `Successfully ran package manager install command`,
97
- };
102
+ catch (error) {
103
+ getLogger().error("Error installing packages", getErrorMeta(error));
104
+ throw error;
98
105
  }
99
106
  },
100
107
  };
@@ -1 +1 @@
1
- {"version":3,"file":"build-install-packages.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools/build-install-packages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-install-packages.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools/build-install-packages.ts"],"names":[],"mappings":"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"}
@@ -4,12 +4,12 @@ export declare const buildMultiEditFileToolFactory: import("../tools2/types.js")
4
4
  clark: Clark;
5
5
  services: ClarkStateHandlerParams;
6
6
  }, import("../tools2/types.js").Tool<{
7
- filePath: string;
8
7
  edits: {
9
8
  oldString: string;
10
9
  newString: string;
11
10
  replaceAll?: boolean | undefined;
12
11
  }[];
12
+ filePath: string;
13
13
  }, {
14
14
  filePath: string;
15
15
  diff: string;
@@ -0,0 +1,8 @@
1
+ import type { ClarkStateHandlerParams } from "../../state-machine/clark-fsm.js";
2
+ export declare const buildReloadFileToolFactory: import("../tools2/types.js").ToolFactory<ClarkStateHandlerParams, import("../tools2/types.js").Tool<{
3
+ filePath: string;
4
+ }, {
5
+ message: string;
6
+ filePath: string;
7
+ }>>;
8
+ //# sourceMappingURL=build-reload-file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-reload-file.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools/build-reload-file.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAEhF,eAAO,MAAM,0BAA0B;;;;;GAqEtC,CAAC"}
@@ -0,0 +1,57 @@
1
+ import path from "node:path";
2
+ import z from "zod";
3
+ import { getPrefixedLogger } from "../../../util/logger.js";
4
+ import { createToolFactory, PermissionLevel, ToolCategory, } from "../tools2/types.js";
5
+ export const buildReloadFileToolFactory = createToolFactory("build_reloadFile", (services) => {
6
+ return {
7
+ category: ToolCategory.GENERAL,
8
+ defaultPermission: PermissionLevel.ALLOW,
9
+ readOnly: true,
10
+ description: `
11
+ Reload a specific file in Vite's module graph. This will invalidate the module and trigger a Hot Module Replacement (HMR) update in the browser.
12
+ This will also remount the components in the app.
13
+
14
+ The tool accepts a relative file path (e.g., "pages/Home/index.tsx") and will:
15
+ 1. Invalidate the module in Vite's module graph
16
+ 2. Trigger an immediate reload to update the browser
17
+
18
+ Use this tool when:
19
+ - You update an API that is run off a useEffect that should be re-evaluated.
20
+ - You need to re-trigger some logic that only runs on component mount or file evaluation.
21
+
22
+ This tool should NOT be used as a first resort for fixing app issues. Examine error logs or build errors first.
23
+ `,
24
+ inputSchema: z.object({
25
+ filePath: z
26
+ .string()
27
+ .describe("Relative path to the file to reload (e.g., 'pages/Home/index.tsx')"),
28
+ }),
29
+ execute: async ({ filePath }) => {
30
+ const logger = getPrefixedLogger(`[reloadFile-${filePath}]`);
31
+ if (!services.viteServer) {
32
+ throw new Error("Vite server is not available. This tool can only be used in development mode.");
33
+ }
34
+ const fullPath = path.join(services.appShell.appRootDirPath, filePath);
35
+ logger.info(`Reloading file: ${filePath} (full path: ${fullPath})`);
36
+ const module = services.viteServer.moduleGraph.getModuleById(fullPath);
37
+ if (!module) {
38
+ throw new Error(`Module not found for file: ${filePath}. The file may not have been imported yet.`);
39
+ }
40
+ // Invalidate the module
41
+ services.viteServer.moduleGraph.invalidateModule(module);
42
+ // Trigger immediate reload
43
+ await services.viteServer.reloadModule(module);
44
+ services.viteServer.ws.send({
45
+ type: "custom",
46
+ event: "sb:force-remount-after-reload",
47
+ data: {},
48
+ });
49
+ logger.info(`Successfully reloaded file: ${filePath}`);
50
+ return {
51
+ message: `Successfully reloaded file: ${filePath}`,
52
+ filePath,
53
+ };
54
+ },
55
+ };
56
+ });
57
+ //# sourceMappingURL=build-reload-file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-reload-file.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools/build-reload-file.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,YAAY,GACb,MAAM,oBAAoB,CAAC;AAG5B,MAAM,CAAC,MAAM,0BAA0B,GAAG,iBAAiB,CACzD,kBAAkB,EAClB,CAAC,QAAiC,EAAE,EAAE;IACpC,OAAO;QACL,QAAQ,EAAE,YAAY,CAAC,OAAO;QAC9B,iBAAiB,EAAE,eAAe,CAAC,KAAK;QACxC,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE;;;;;;;;;;;;;CAalB;QACK,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,QAAQ,EAAE,CAAC;iBACR,MAAM,EAAE;iBACR,QAAQ,CACP,oEAAoE,CACrE;SACJ,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;YAC9B,MAAM,MAAM,GAAG,iBAAiB,CAAC,eAAe,QAAQ,GAAG,CAAC,CAAC;YAE7D,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CACb,+EAA+E,CAChF,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;YAEvE,MAAM,CAAC,IAAI,CAAC,mBAAmB,QAAQ,gBAAgB,QAAQ,GAAG,CAAC,CAAC;YAEpE,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YACvE,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CACb,8BAA8B,QAAQ,4CAA4C,CACnF,CAAC;YACJ,CAAC;YAED,wBAAwB;YACxB,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;YAEzD,2BAA2B;YAC3B,MAAM,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAE/C,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC;gBAC1B,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,+BAA+B;gBACtC,IAAI,EAAE,EAAE;aACT,CAAC,CAAC;YAEH,MAAM,CAAC,IAAI,CAAC,+BAA+B,QAAQ,EAAE,CAAC,CAAC;YAEvD,OAAO;gBACL,OAAO,EAAE,+BAA+B,QAAQ,EAAE;gBAClD,QAAQ;aACT,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -0,0 +1,23 @@
1
+ import type { Clark } from "../../state-machine/clark-fsm.js";
2
+ import type { ClarkStateHandlerParams } from "../../state-machine/clark-fsm.js";
3
+ export declare const buildGetConsoleLogsToolFactory: import("../tools2/types.js").ToolFactory<{
4
+ clark: Clark;
5
+ services: ClarkStateHandlerParams;
6
+ }, import("../tools2/types.js").Tool<{
7
+ limit?: number | undefined;
8
+ level?: "warn" | "error" | undefined;
9
+ }, {
10
+ logs: {
11
+ timeAgo: string;
12
+ id: string;
13
+ timestamp?: number;
14
+ level: "log" | "warn" | "error" | "info" | "debug";
15
+ message: string;
16
+ stack?: string;
17
+ generationTimestamp?: string;
18
+ _size?: number;
19
+ }[];
20
+ count: number;
21
+ totalCount: number;
22
+ }>>;
23
+ //# sourceMappingURL=get-console-logs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-console-logs.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools/get-console-logs.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAEhF,eAAO,MAAM,8BAA8B;WAEpB,KAAK;cAAY,uBAAuB;;;;;;;;;;;;;;;;;GAyF9D,CAAC"}
@@ -0,0 +1,84 @@
1
+ import z from "zod";
2
+ import { createToolFactory, ToolCategory } from "../tools2/types.js";
3
+ export const buildGetConsoleLogsToolFactory = createToolFactory("get_console_logs", ({ clark }) => {
4
+ return {
5
+ category: ToolCategory.TEST,
6
+ description: `
7
+ Retrieve console logs from the user's application.
8
+
9
+ Captures console.log(), console.info(), console.debug(), console.warn(), and console.error() calls from the user's app running in the browser.
10
+
11
+ Use this tool to: investigate warnings, review error messages, or understand application errors.
12
+
13
+ Returns an array of console log entries with:
14
+ - id: unique identifier for the log entry
15
+ - timestamp: when the log was created (milliseconds since epoch)
16
+ - timeAgo: human-readable relative time (e.g., "2 minutes ago", "just now")
17
+ - level: log level (log/info/debug/warn/error)
18
+ - message: the logged message (objects are JSON stringified)
19
+ - stack: stack trace
20
+ - generationTimestamp: ISO timestamp of when log was captured
21
+
22
+ Logs are sorted by timestamp (most recent first) and retained for 10 minutes.
23
+
24
+ Optional filtering:
25
+ - level: Filter by specific log level (e.g., "error" to see only errors)
26
+ - limit: Maximum number of logs to return (default: all logs). Use this to get the most recent N logs.
27
+
28
+ Returns:
29
+ - logs: Array of log entries (most recent first)
30
+ - count: Number of logs returned
31
+ - totalCount: Total number of logs in buffer
32
+
33
+ Note: Logs older than 10 minutes are automatically removed.
34
+ The buffer holds up to 128KB total, with individual entries truncated to 10KB if needed.
35
+ `,
36
+ inputSchema: z.object({
37
+ level: z
38
+ .enum(["warn", "error"])
39
+ .optional()
40
+ .describe("Filter logs by level"),
41
+ limit: z
42
+ .number()
43
+ .positive()
44
+ .optional()
45
+ .describe("Maximum number of logs to return (most recent first). If not specified, returns all logs."),
46
+ }),
47
+ execute: async ({ level, limit }) => {
48
+ const allLogs = clark.context.consoleLogs ?? [];
49
+ const now = Date.now();
50
+ // Helper function to format relative time
51
+ const formatTimeAgo = (timestamp) => {
52
+ const seconds = Math.floor((now - timestamp) / 1000);
53
+ if (seconds < 10)
54
+ return "just now";
55
+ if (seconds < 60)
56
+ return `${seconds} seconds ago`;
57
+ const minutes = Math.floor(seconds / 60);
58
+ return `${minutes} ${minutes === 1 ? "minute" : "minutes"} ago`;
59
+ };
60
+ // Filter by level if specified
61
+ let logs = level
62
+ ? allLogs.filter((log) => log.level === level)
63
+ : allLogs;
64
+ // Sort by timestamp descending (most recent first)
65
+ logs = logs.sort((a, b) => (b.timestamp ?? 0) - (a.timestamp ?? 0));
66
+ // Apply limit if specified
67
+ if (limit !== undefined) {
68
+ logs = logs.slice(0, limit);
69
+ }
70
+ // Add timeAgo to each log
71
+ const logsWithTimeAgo = logs.map((log) => ({
72
+ ...log,
73
+ timeAgo: log.timestamp ? formatTimeAgo(log.timestamp) : "unknown",
74
+ }));
75
+ return {
76
+ logs: logsWithTimeAgo,
77
+ count: logsWithTimeAgo.length,
78
+ totalCount: allLogs.length,
79
+ };
80
+ },
81
+ readOnly: true,
82
+ };
83
+ });
84
+ //# sourceMappingURL=get-console-logs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-console-logs.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools/get-console-logs.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAIrE,MAAM,CAAC,MAAM,8BAA8B,GAAG,iBAAiB,CAC7D,kBAAkB,EAClB,CAAC,EAAE,KAAK,EAAuD,EAAE,EAAE;IACjE,OAAO;QACL,QAAQ,EAAE,YAAY,CAAC,IAAI;QAC3B,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA6Bd;QACC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,KAAK,EAAE,CAAC;iBACL,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;iBACvB,QAAQ,EAAE;iBACV,QAAQ,CAAC,sBAAsB,CAAC;YACnC,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,EAAE;iBACV,QAAQ,CACP,2FAA2F,CAC5F;SACJ,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;YAClC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;YAChD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAEvB,0CAA0C;YAC1C,MAAM,aAAa,GAAG,CAAC,SAAiB,EAAU,EAAE;gBAClD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC;gBAErD,IAAI,OAAO,GAAG,EAAE;oBAAE,OAAO,UAAU,CAAC;gBACpC,IAAI,OAAO,GAAG,EAAE;oBAAE,OAAO,GAAG,OAAO,cAAc,CAAC;gBAElD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;gBACzC,OAAO,GAAG,OAAO,IAAI,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC;YAClE,CAAC,CAAC;YAEF,+BAA+B;YAC/B,IAAI,IAAI,GAAG,KAAK;gBACd,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,KAAK,CAAC;gBAC9C,CAAC,CAAC,OAAO,CAAC;YAEZ,mDAAmD;YACnD,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC;YAEpE,2BAA2B;YAC3B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC9B,CAAC;YAED,0BAA0B;YAC1B,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACzC,GAAG,GAAG;gBACN,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;aAClE,CAAC,CAAC,CAAC;YAEJ,OAAO;gBACL,IAAI,EAAE,eAAe;gBACrB,KAAK,EAAE,eAAe,CAAC,MAAM;gBAC7B,UAAU,EAAE,OAAO,CAAC,MAAM;aAC3B,CAAC;QACJ,CAAC;QACD,QAAQ,EAAE,IAAI;KACf,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -0,0 +1,13 @@
1
+ import type { Clark } from "../../state-machine/clark-fsm.js";
2
+ import type { ClarkStateHandlerParams } from "../../state-machine/clark-fsm.js";
3
+ export declare const buildGetRuntimeErrorsToolFactory: import("../tools2/types.js").ToolFactory<{
4
+ clark: Clark;
5
+ services: ClarkStateHandlerParams;
6
+ }, import("../tools2/types.js").Tool<{
7
+ limit?: number | undefined;
8
+ }, {
9
+ errors: import("@superblocksteam/library-shared/types").RuntimeErrorData[];
10
+ count: number;
11
+ totalCount: number;
12
+ }>>;
13
+ //# sourceMappingURL=get-runtime-errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-runtime-errors.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools/get-runtime-errors.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAEhF,eAAO,MAAM,gCAAgC;WAEtB,KAAK;cAAY,uBAAuB;;;;;;;GA+D9D,CAAC"}
@@ -0,0 +1,59 @@
1
+ import z from "zod";
2
+ import { createToolFactory, ToolCategory } from "../tools2/types.js";
3
+ export const buildGetRuntimeErrorsToolFactory = createToolFactory("get_runtime_errors", ({ clark }) => {
4
+ return {
5
+ category: ToolCategory.TEST,
6
+ description: `
7
+ Retrieve runtime errors from the user's application.
8
+
9
+ Captures React component errors, JavaScript exceptions, unhandled promise rejections,
10
+ and global errors that occurred during the current session.
11
+
12
+ Use this tool to: debug runtime errors, investigate exceptions, or understand what went wrong in the user's app.
13
+
14
+ Returns an array of error objects with:
15
+ - id: unique identifier for the error
16
+ - error: error message string
17
+ - errorInfo: React error info with componentStack
18
+ - identifier: component source info (sourceId, instanceId) where error occurred
19
+ - timestamp: when the error was captured (milliseconds since epoch)
20
+ - generationTimestamp: ISO timestamp of when error was captured
21
+
22
+ Errors are sorted by timestamp (most recent first) and retained for 10 minutes.
23
+
24
+ Optional filtering:
25
+ - limit: Maximum number of errors to return (default: all errors). Use this to get the most recent N errors.
26
+
27
+ Returns:
28
+ - errors: Array of error objects (most recent first)
29
+ - count: Number of errors returned
30
+ - totalCount: Total number of errors in buffer
31
+
32
+ Note: Errors older than 10 minutes are automatically removed.
33
+ The buffer holds up to 128KB total of error data.
34
+ `,
35
+ inputSchema: z.object({
36
+ limit: z
37
+ .number()
38
+ .positive()
39
+ .optional()
40
+ .describe("Maximum number of errors to return (most recent first). If not specified, returns all errors."),
41
+ }),
42
+ execute: async ({ limit }) => {
43
+ const allErrors = clark.context.runtimeErrors ?? [];
44
+ // Sort by timestamp descending (most recent first)
45
+ let errors = allErrors.sort((a, b) => (b.timestamp ?? 0) - (a.timestamp ?? 0));
46
+ // Apply limit if specified
47
+ if (limit !== undefined) {
48
+ errors = errors.slice(0, limit);
49
+ }
50
+ return {
51
+ errors,
52
+ count: errors.length,
53
+ totalCount: allErrors.length,
54
+ };
55
+ },
56
+ readOnly: true,
57
+ };
58
+ });
59
+ //# sourceMappingURL=get-runtime-errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-runtime-errors.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools/get-runtime-errors.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAIrE,MAAM,CAAC,MAAM,gCAAgC,GAAG,iBAAiB,CAC/D,oBAAoB,EACpB,CAAC,EAAE,KAAK,EAAuD,EAAE,EAAE;IACjE,OAAO;QACL,QAAQ,EAAE,YAAY,CAAC,IAAI;QAC3B,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA4Bd;QACC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,EAAE;iBACV,QAAQ,CACP,+FAA+F,CAChG;SACJ,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;YAC3B,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,CAAC;YAEpD,mDAAmD;YACnD,IAAI,MAAM,GAAG,SAAS,CAAC,IAAI,CACzB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,CAClD,CAAC;YAEF,2BAA2B;YAC3B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAClC,CAAC;YAED,OAAO;gBACL,MAAM;gBACN,KAAK,EAAE,MAAM,CAAC,MAAM;gBACpB,UAAU,EAAE,SAAS,CAAC,MAAM;aAC7B,CAAC;QACJ,CAAC;QACD,QAAQ,EAAE,IAAI;KACf,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -6,11 +6,15 @@ export { buildReadFilesToolFactory, multiFileToolConfig, } from "./build-read-fi
6
6
  export { buildListFilesToolFactory } from "./build-list-files.js";
7
7
  export { buildValidateIconsToolFactory } from "./build-validate-icons.js";
8
8
  export { buildDebugToolFactory } from "./build-debug.js";
9
+ export { buildCaptureScreenshotToolFactory } from "./build-capture-screenshot.js";
9
10
  export { buildFinalizeToolFactory } from "./build-finalize.js";
10
11
  export { buildManageChecklistToolFactory } from "./build-manage-checklist.js";
11
12
  export { buildDeleteFileToolFactory, checkDeleteFilePermissions, } from "./build-delete-file.js";
13
+ export { buildReloadFileToolFactory } from "./build-reload-file.js";
12
14
  export * from "./integrations/index.js";
13
15
  export { exitPlanModeToolFactory } from "../tools2/tools/exit-plan-mode.js";
14
16
  export { askMultiChoiceToolFactory } from "../tools2/tools/ask-multi-choice.js";
17
+ export { buildGetRuntimeErrorsToolFactory } from "./get-runtime-errors.js";
18
+ export { buildGetConsoleLogsToolFactory } from "./get-console-logs.js";
15
19
  export { grepMetadataToolFactory } from "../tools2/tools/grep-metadata.js";
16
20
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EACL,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EACL,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,iCAAiC,EAAE,MAAM,+BAA+B,CAAC;AAClF,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AACpE,cAAc,yBAAyB,CAAC;AACxC,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAE,gCAAgC,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC"}
@@ -6,11 +6,15 @@ export { buildReadFilesToolFactory, multiFileToolConfig, } from "./build-read-fi
6
6
  export { buildListFilesToolFactory } from "./build-list-files.js";
7
7
  export { buildValidateIconsToolFactory } from "./build-validate-icons.js";
8
8
  export { buildDebugToolFactory } from "./build-debug.js";
9
+ export { buildCaptureScreenshotToolFactory } from "./build-capture-screenshot.js";
9
10
  export { buildFinalizeToolFactory } from "./build-finalize.js";
10
11
  export { buildManageChecklistToolFactory } from "./build-manage-checklist.js";
11
12
  export { buildDeleteFileToolFactory, checkDeleteFilePermissions, } from "./build-delete-file.js";
13
+ export { buildReloadFileToolFactory } from "./build-reload-file.js";
12
14
  export * from "./integrations/index.js";
13
15
  export { exitPlanModeToolFactory } from "../tools2/tools/exit-plan-mode.js";
14
16
  export { askMultiChoiceToolFactory } from "../tools2/tools/ask-multi-choice.js";
17
+ export { buildGetRuntimeErrorsToolFactory } from "./get-runtime-errors.js";
18
+ export { buildGetConsoleLogsToolFactory } from "./get-console-logs.js";
15
19
  export { grepMetadataToolFactory } from "../tools2/tools/grep-metadata.js";
16
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EACL,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EACL,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,iCAAiC,EAAE,MAAM,+BAA+B,CAAC;AAClF,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AACpE,cAAc,yBAAyB,CAAC;AACxC,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAE,gCAAgC,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC"}
@@ -6,13 +6,15 @@ export declare const executeRequestToIntegrationToolFactory: import("../../tools
6
6
  params: {
7
7
  type: "sql";
8
8
  query: string;
9
+ entityName?: string | undefined;
9
10
  } | {
10
11
  type: "graphql";
11
12
  graphQLQuery: {
12
13
  query: string;
13
- variables?: Record<string, unknown> | undefined;
14
14
  headers?: Record<string, string> | undefined;
15
+ variables?: Record<string, unknown> | undefined;
15
16
  };
17
+ entityName?: string | undefined;
16
18
  } | {
17
19
  type: "rest";
18
20
  httpRequest: {
@@ -20,9 +22,11 @@ export declare const executeRequestToIntegrationToolFactory: import("../../tools
20
22
  headers?: Record<string, string> | undefined;
21
23
  queryParams?: Record<string, string> | undefined;
22
24
  };
25
+ entityName?: string | undefined;
23
26
  } | {
24
27
  type: "salesforce";
25
28
  query: string;
29
+ entityName?: string | undefined;
26
30
  } | {
27
31
  type: "other";
28
32
  body: string;
@@ -1 +1 @@
1
- {"version":3,"file":"execute-request.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools/integrations/execute-request.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EACV,KAAK,EACL,uBAAuB,EACxB,MAAM,qCAAqC,CAAC;AAK7C,eAAO,MAAM,sCAAsC;WAMxC,KAAK;cACF,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAqRpC,CAAC"}
1
+ {"version":3,"file":"execute-request.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools/integrations/execute-request.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EACV,KAAK,EACL,uBAAuB,EACxB,MAAM,qCAAqC,CAAC;AAK7C,eAAO,MAAM,sCAAsC;WAMxC,KAAK;cACF,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WA+SpC,CAAC"}