donobu 2.18.4 → 2.19.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 (215) hide show
  1. package/dist/apis/FlowsApi.d.ts +4 -0
  2. package/dist/apis/FlowsApi.d.ts.map +1 -1
  3. package/dist/apis/FlowsApi.js +15 -1
  4. package/dist/apis/FlowsApi.js.map +1 -1
  5. package/dist/apis/SpecialFlowsApi.d.ts.map +1 -1
  6. package/dist/apis/SpecialFlowsApi.js +11 -9
  7. package/dist/apis/SpecialFlowsApi.js.map +1 -1
  8. package/dist/assets/control-panel.js +7 -1
  9. package/dist/assets/generated/parameter-schemas.json +44 -0
  10. package/dist/assets/generated/version +1 -1
  11. package/dist/assets/page-interactions-tracker.js +27 -30
  12. package/dist/bindings/PageInteractionTracker.d.ts.map +1 -1
  13. package/dist/bindings/PageInteractionTracker.js +1 -1
  14. package/dist/bindings/PageInteractionTracker.js.map +1 -1
  15. package/dist/esm/apis/FlowsApi.d.ts +4 -0
  16. package/dist/esm/apis/FlowsApi.d.ts.map +1 -1
  17. package/dist/esm/apis/FlowsApi.js +15 -1
  18. package/dist/esm/apis/FlowsApi.js.map +1 -1
  19. package/dist/esm/apis/SpecialFlowsApi.d.ts.map +1 -1
  20. package/dist/esm/apis/SpecialFlowsApi.js +11 -9
  21. package/dist/esm/apis/SpecialFlowsApi.js.map +1 -1
  22. package/dist/esm/assets/control-panel.js +7 -1
  23. package/dist/esm/assets/generated/parameter-schemas.json +44 -0
  24. package/dist/esm/assets/generated/version +1 -1
  25. package/dist/esm/assets/page-interactions-tracker.js +27 -30
  26. package/dist/esm/bindings/PageInteractionTracker.d.ts.map +1 -1
  27. package/dist/esm/bindings/PageInteractionTracker.js +1 -1
  28. package/dist/esm/bindings/PageInteractionTracker.js.map +1 -1
  29. package/dist/esm/lib/testExtension.d.ts.map +1 -1
  30. package/dist/esm/lib/testExtension.js +20 -19
  31. package/dist/esm/lib/testExtension.js.map +1 -1
  32. package/dist/esm/managers/AdminApiController.d.ts.map +1 -1
  33. package/dist/esm/managers/AdminApiController.js +1 -0
  34. package/dist/esm/managers/AdminApiController.js.map +1 -1
  35. package/dist/esm/managers/CodeGenerator.d.ts +47 -1
  36. package/dist/esm/managers/CodeGenerator.d.ts.map +1 -1
  37. package/dist/esm/managers/CodeGenerator.js +211 -19
  38. package/dist/esm/managers/CodeGenerator.js.map +1 -1
  39. package/dist/esm/managers/ControlPanel.d.ts.map +1 -1
  40. package/dist/esm/managers/ControlPanel.js +7 -5
  41. package/dist/esm/managers/ControlPanel.js.map +1 -1
  42. package/dist/esm/managers/DonobuFlow.d.ts +3 -4
  43. package/dist/esm/managers/DonobuFlow.d.ts.map +1 -1
  44. package/dist/esm/managers/DonobuFlow.js +57 -44
  45. package/dist/esm/managers/DonobuFlow.js.map +1 -1
  46. package/dist/esm/managers/DonobuFlowsManager.d.ts +58 -34
  47. package/dist/esm/managers/DonobuFlowsManager.d.ts.map +1 -1
  48. package/dist/esm/managers/DonobuFlowsManager.js +217 -64
  49. package/dist/esm/managers/DonobuFlowsManager.js.map +1 -1
  50. package/dist/esm/managers/FlowDependencyAnalyzer.d.ts +40 -0
  51. package/dist/esm/managers/FlowDependencyAnalyzer.d.ts.map +1 -0
  52. package/dist/esm/managers/FlowDependencyAnalyzer.js +236 -0
  53. package/dist/esm/managers/FlowDependencyAnalyzer.js.map +1 -0
  54. package/dist/esm/managers/ProjectStructureGenerator.d.ts +62 -0
  55. package/dist/esm/managers/ProjectStructureGenerator.d.ts.map +1 -0
  56. package/dist/esm/managers/ProjectStructureGenerator.js +234 -0
  57. package/dist/esm/managers/ProjectStructureGenerator.js.map +1 -0
  58. package/dist/esm/managers/ToolManager.d.ts.map +1 -1
  59. package/dist/esm/managers/ToolManager.js +4 -2
  60. package/dist/esm/managers/ToolManager.js.map +1 -1
  61. package/dist/esm/models/FlowMetadata.d.ts +52 -0
  62. package/dist/esm/models/FlowMetadata.d.ts.map +1 -1
  63. package/dist/esm/persistence/flows/FlowsPersistence.d.ts +11 -9
  64. package/dist/esm/persistence/flows/FlowsPersistence.d.ts.map +1 -1
  65. package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.d.ts +4 -5
  66. package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.d.ts.map +1 -1
  67. package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.js +76 -77
  68. package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.js.map +1 -1
  69. package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.js +2 -2
  70. package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.js.map +1 -1
  71. package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.d.ts +7 -7
  72. package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.d.ts.map +1 -1
  73. package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.js +51 -60
  74. package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.js.map +1 -1
  75. package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts +4 -5
  76. package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts.map +1 -1
  77. package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.js +40 -41
  78. package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.js.map +1 -1
  79. package/dist/esm/persistence/flows/FlowsPersistenceSqlite.d.ts +4 -4
  80. package/dist/esm/persistence/flows/FlowsPersistenceSqlite.d.ts.map +1 -1
  81. package/dist/esm/persistence/flows/FlowsPersistenceSqlite.js +40 -40
  82. package/dist/esm/persistence/flows/FlowsPersistenceSqlite.js.map +1 -1
  83. package/dist/esm/persistence/flows/FlowsPersistenceSupabase.d.ts +4 -5
  84. package/dist/esm/persistence/flows/FlowsPersistenceSupabase.d.ts.map +1 -1
  85. package/dist/esm/persistence/flows/FlowsPersistenceSupabase.js +37 -37
  86. package/dist/esm/persistence/flows/FlowsPersistenceSupabase.js.map +1 -1
  87. package/dist/esm/persistence/flows/FlowsPersistenceVolatile.d.ts +7 -7
  88. package/dist/esm/persistence/flows/FlowsPersistenceVolatile.d.ts.map +1 -1
  89. package/dist/esm/persistence/flows/FlowsPersistenceVolatile.js +35 -33
  90. package/dist/esm/persistence/flows/FlowsPersistenceVolatile.js.map +1 -1
  91. package/dist/esm/tools/AssertPageTool.d.ts +34 -0
  92. package/dist/esm/tools/AssertPageTool.d.ts.map +1 -0
  93. package/dist/esm/tools/AssertPageTool.js +156 -0
  94. package/dist/esm/tools/AssertPageTool.js.map +1 -0
  95. package/dist/esm/tools/AssertTool.js +1 -1
  96. package/dist/esm/tools/AssertTool.js.map +1 -1
  97. package/dist/esm/tools/ClickTool.d.ts.map +1 -1
  98. package/dist/esm/tools/ClickTool.js +3 -0
  99. package/dist/esm/tools/ClickTool.js.map +1 -1
  100. package/dist/esm/tools/DetectBrokenLinksTool.js +1 -1
  101. package/dist/esm/tools/DetectBrokenLinksTool.js.map +1 -1
  102. package/dist/esm/tools/ExtractGoogleStreetviewEntityDataTool.js +1 -1
  103. package/dist/esm/tools/ExtractGoogleStreetviewEntityDataTool.js.map +1 -1
  104. package/dist/esm/tools/ExtractPaymentProviderKeyTool.d.ts +47 -1
  105. package/dist/esm/tools/ExtractPaymentProviderKeyTool.d.ts.map +1 -1
  106. package/dist/esm/tools/ExtractPaymentProviderKeyTool.js +160 -25
  107. package/dist/esm/tools/ExtractPaymentProviderKeyTool.js.map +1 -1
  108. package/dist/esm/tools/SolveMfaChallenge.d.ts.map +1 -1
  109. package/dist/esm/tools/SolveMfaChallenge.js.map +1 -1
  110. package/dist/esm/utils/BrowserUtils.d.ts +52 -0
  111. package/dist/esm/utils/BrowserUtils.d.ts.map +1 -0
  112. package/dist/esm/utils/BrowserUtils.js +340 -0
  113. package/dist/esm/utils/BrowserUtils.js.map +1 -0
  114. package/dist/esm/utils/PlaywrightUtils.d.ts +15 -11
  115. package/dist/esm/utils/PlaywrightUtils.d.ts.map +1 -1
  116. package/dist/esm/utils/PlaywrightUtils.js +110 -122
  117. package/dist/esm/utils/PlaywrightUtils.js.map +1 -1
  118. package/dist/lib/autoTest.d.ts +2 -0
  119. package/dist/lib/autoTest.d.ts.map +1 -0
  120. package/dist/lib/autoTest.js +17 -0
  121. package/dist/lib/autoTest.js.map +1 -0
  122. package/dist/lib/testExtension.d.ts.map +1 -1
  123. package/dist/lib/testExtension.js +20 -19
  124. package/dist/lib/testExtension.js.map +1 -1
  125. package/dist/managers/AdminApiController.d.ts.map +1 -1
  126. package/dist/managers/AdminApiController.js +1 -0
  127. package/dist/managers/AdminApiController.js.map +1 -1
  128. package/dist/managers/CodeGenerator.d.ts +47 -1
  129. package/dist/managers/CodeGenerator.d.ts.map +1 -1
  130. package/dist/managers/CodeGenerator.js +211 -19
  131. package/dist/managers/CodeGenerator.js.map +1 -1
  132. package/dist/managers/ControlPanel.d.ts.map +1 -1
  133. package/dist/managers/ControlPanel.js +7 -5
  134. package/dist/managers/ControlPanel.js.map +1 -1
  135. package/dist/managers/DonobuFlow.d.ts +3 -4
  136. package/dist/managers/DonobuFlow.d.ts.map +1 -1
  137. package/dist/managers/DonobuFlow.js +57 -44
  138. package/dist/managers/DonobuFlow.js.map +1 -1
  139. package/dist/managers/DonobuFlowsManager.d.ts +58 -34
  140. package/dist/managers/DonobuFlowsManager.d.ts.map +1 -1
  141. package/dist/managers/DonobuFlowsManager.js +217 -64
  142. package/dist/managers/DonobuFlowsManager.js.map +1 -1
  143. package/dist/managers/FlowDependencyAnalyzer.d.ts +40 -0
  144. package/dist/managers/FlowDependencyAnalyzer.d.ts.map +1 -0
  145. package/dist/managers/FlowDependencyAnalyzer.js +236 -0
  146. package/dist/managers/FlowDependencyAnalyzer.js.map +1 -0
  147. package/dist/managers/ProjectStructureGenerator.d.ts +62 -0
  148. package/dist/managers/ProjectStructureGenerator.d.ts.map +1 -0
  149. package/dist/managers/ProjectStructureGenerator.js +234 -0
  150. package/dist/managers/ProjectStructureGenerator.js.map +1 -0
  151. package/dist/managers/ToolManager.d.ts.map +1 -1
  152. package/dist/managers/ToolManager.js +4 -2
  153. package/dist/managers/ToolManager.js.map +1 -1
  154. package/dist/models/BrowserFramework.d.ts +2 -12
  155. package/dist/models/BrowserFramework.d.ts.map +1 -1
  156. package/dist/models/BrowserFramework.js +91 -66
  157. package/dist/models/BrowserFramework.js.map +1 -1
  158. package/dist/models/FlowMetadata.d.ts +52 -0
  159. package/dist/models/FlowMetadata.d.ts.map +1 -1
  160. package/dist/persistence/flows/FlowsPersistence.d.ts +11 -9
  161. package/dist/persistence/flows/FlowsPersistence.d.ts.map +1 -1
  162. package/dist/persistence/flows/FlowsPersistenceAwsS3.d.ts +4 -5
  163. package/dist/persistence/flows/FlowsPersistenceAwsS3.d.ts.map +1 -1
  164. package/dist/persistence/flows/FlowsPersistenceAwsS3.js +76 -77
  165. package/dist/persistence/flows/FlowsPersistenceAwsS3.js.map +1 -1
  166. package/dist/persistence/flows/FlowsPersistenceFactoryImpl.js +2 -2
  167. package/dist/persistence/flows/FlowsPersistenceFactoryImpl.js.map +1 -1
  168. package/dist/persistence/flows/FlowsPersistenceFilesystem.d.ts +7 -7
  169. package/dist/persistence/flows/FlowsPersistenceFilesystem.d.ts.map +1 -1
  170. package/dist/persistence/flows/FlowsPersistenceFilesystem.js +51 -60
  171. package/dist/persistence/flows/FlowsPersistenceFilesystem.js.map +1 -1
  172. package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts +4 -5
  173. package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts.map +1 -1
  174. package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.js +40 -41
  175. package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.js.map +1 -1
  176. package/dist/persistence/flows/FlowsPersistenceSqlite.d.ts +4 -4
  177. package/dist/persistence/flows/FlowsPersistenceSqlite.d.ts.map +1 -1
  178. package/dist/persistence/flows/FlowsPersistenceSqlite.js +40 -40
  179. package/dist/persistence/flows/FlowsPersistenceSqlite.js.map +1 -1
  180. package/dist/persistence/flows/FlowsPersistenceSupabase.d.ts +4 -5
  181. package/dist/persistence/flows/FlowsPersistenceSupabase.d.ts.map +1 -1
  182. package/dist/persistence/flows/FlowsPersistenceSupabase.js +37 -37
  183. package/dist/persistence/flows/FlowsPersistenceSupabase.js.map +1 -1
  184. package/dist/persistence/flows/FlowsPersistenceVolatile.d.ts +7 -7
  185. package/dist/persistence/flows/FlowsPersistenceVolatile.d.ts.map +1 -1
  186. package/dist/persistence/flows/FlowsPersistenceVolatile.js +35 -33
  187. package/dist/persistence/flows/FlowsPersistenceVolatile.js.map +1 -1
  188. package/dist/tools/AssertPageTool.d.ts +34 -0
  189. package/dist/tools/AssertPageTool.d.ts.map +1 -0
  190. package/dist/tools/AssertPageTool.js +156 -0
  191. package/dist/tools/AssertPageTool.js.map +1 -0
  192. package/dist/tools/AssertTool.js +1 -1
  193. package/dist/tools/AssertTool.js.map +1 -1
  194. package/dist/tools/ClickTool.d.ts.map +1 -1
  195. package/dist/tools/ClickTool.js +3 -0
  196. package/dist/tools/ClickTool.js.map +1 -1
  197. package/dist/tools/DetectBrokenLinksTool.js +1 -1
  198. package/dist/tools/DetectBrokenLinksTool.js.map +1 -1
  199. package/dist/tools/ExtractGoogleStreetviewEntityDataTool.js +1 -1
  200. package/dist/tools/ExtractGoogleStreetviewEntityDataTool.js.map +1 -1
  201. package/dist/tools/ExtractPaymentProviderKeyTool.d.ts +47 -1
  202. package/dist/tools/ExtractPaymentProviderKeyTool.d.ts.map +1 -1
  203. package/dist/tools/ExtractPaymentProviderKeyTool.js +160 -25
  204. package/dist/tools/ExtractPaymentProviderKeyTool.js.map +1 -1
  205. package/dist/tools/SolveMfaChallenge.d.ts.map +1 -1
  206. package/dist/tools/SolveMfaChallenge.js.map +1 -1
  207. package/dist/utils/BrowserUtils.d.ts +52 -0
  208. package/dist/utils/BrowserUtils.d.ts.map +1 -0
  209. package/dist/utils/BrowserUtils.js +340 -0
  210. package/dist/utils/BrowserUtils.js.map +1 -0
  211. package/dist/utils/PlaywrightUtils.d.ts +15 -11
  212. package/dist/utils/PlaywrightUtils.d.ts.map +1 -1
  213. package/dist/utils/PlaywrightUtils.js +110 -122
  214. package/dist/utils/PlaywrightUtils.js.map +1 -1
  215. package/package.json +1 -1
@@ -15,7 +15,7 @@ const MiscUtils_1 = require("../utils/MiscUtils");
15
15
  const PageInteractionTracker_1 = require("../bindings/PageInteractionTracker");
16
16
  const MarkObjectiveNotCompletableTool_1 = require("../tools/MarkObjectiveNotCompletableTool");
17
17
  const PageClosedException_1 = require("../exceptions/PageClosedException");
18
- const BrowserFramework_1 = require("../models/BrowserFramework");
18
+ const BrowserUtils_1 = require("../utils/BrowserUtils");
19
19
  const ToggleDonobuAnnotations_1 = require("../bindings/ToggleDonobuAnnotations");
20
20
  const ProposeToolCall_1 = require("../bindings/ProposeToolCall");
21
21
  const PageInspector_1 = require("./PageInspector");
@@ -26,7 +26,7 @@ const ControlPanel_1 = require("./ControlPanel");
26
26
  */
27
27
  async function extractFromPage(instruction, jsonSchema, page, toolCallHistory, gptClient) {
28
28
  const finalScreenshot = page
29
- ? await MiscUtils_1.MiscUtils.resizeImageToMaxFileSize(await PlaywrightUtils_1.PlaywrightUtils.takeScreenshot(page), DonobuFlow.MAX_IMAGE_BYTES_FOR_LLM)
29
+ ? await MiscUtils_1.MiscUtils.resizeImageToMaxFileSize(await PlaywrightUtils_1.PlaywrightUtils.takeViewportScreenshot(page), DonobuFlow.MAX_IMAGE_BYTES_FOR_LLM)
30
30
  : null;
31
31
  const systemMessage = `You help people navigate webpages and return relevant information.
32
32
  These web pages are being rendered in a browser and are powered using the Microsoft Playwright framework.
@@ -86,10 +86,10 @@ ${formattedToolCallHistory}
86
86
  * flow via its `run` method.
87
87
  */
88
88
  class DonobuFlow {
89
- constructor(flowsManager, envData, browserFramework, persistence, gptClient, toolManager, interactionVisualizer, proposedToolCalls, invokedToolCalls, gptMessages, focusedPage, metadata) {
89
+ constructor(flowsManager, envData, browserContext, persistence, gptClient, toolManager, interactionVisualizer, proposedToolCalls, invokedToolCalls, gptMessages, focusedPage, metadata) {
90
90
  this.flowsManager = flowsManager;
91
91
  this.envData = envData;
92
- this.browserFramework = browserFramework;
92
+ this.browserContext = browserContext;
93
93
  this.persistence = persistence;
94
94
  this.gptClient = gptClient;
95
95
  this.toolManager = toolManager;
@@ -158,7 +158,7 @@ class DonobuFlow {
158
158
  }
159
159
  }
160
160
  finally {
161
- await this.browserFramework.close();
161
+ await this.browserContext.close();
162
162
  }
163
163
  }
164
164
  /**
@@ -167,7 +167,7 @@ class DonobuFlow {
167
167
  * browser context, then the flow is marked as a failure.
168
168
  */
169
169
  async onFocusedPageClosed(_error) {
170
- const allPages = this.browserFramework.browserContext.pages();
170
+ const allPages = this.browserContext.pages();
171
171
  if (allPages.length === 0) {
172
172
  this.focusedPage.current = null;
173
173
  // There are no other pages to bring into focus, so we fail the run.
@@ -176,7 +176,7 @@ class DonobuFlow {
176
176
  this.metadata.result = {
177
177
  failed: 'Stopped flow due to the browser unexpectedly closing!',
178
178
  };
179
- await this.persistence.setMetadata(this.metadata);
179
+ await this.persistence.setFlowMetadata(this.metadata);
180
180
  }
181
181
  else {
182
182
  // Otherwise, bring the next page in the browser context into focus.
@@ -194,7 +194,7 @@ class DonobuFlow {
194
194
  failed: `Stopped flow due to the ${this.gptClient?.config.type} GPT platform throwing an internal error!`,
195
195
  context: error.message,
196
196
  };
197
- await this.persistence.setMetadata(this.metadata);
197
+ await this.persistence.setFlowMetadata(this.metadata);
198
198
  }
199
199
  /**
200
200
  * This method is called if there is an unhandled unexpected exception. This
@@ -206,16 +206,16 @@ class DonobuFlow {
206
206
  this.metadata.result = {
207
207
  failed: 'Internal error 🙈',
208
208
  };
209
- await this.persistence.setMetadata(this.metadata);
209
+ await this.persistence.setFlowMetadata(this.metadata);
210
210
  }
211
211
  /**
212
212
  * This method is called when a flow is complete (i.e. when {@link DonobuFlow.run} should return).
213
213
  */
214
214
  async onComplete() {
215
- await this.persistence.setMetadata(this.metadata);
215
+ await this.persistence.setFlowMetadata(this.metadata);
216
216
  if (this.metadata.browser?.persistState) {
217
217
  try {
218
- const browserState = await BrowserFramework_1.BrowserFramework.getBrowserStorageState(this.browserFramework.browserContext);
218
+ const browserState = await BrowserUtils_1.BrowserUtils.getBrowserStorageState(this.browserContext);
219
219
  await this.persistence.setBrowserState(this.metadata.id, browserState);
220
220
  }
221
221
  catch (error) {
@@ -275,7 +275,7 @@ class DonobuFlow {
275
275
  else {
276
276
  await dialog.accept(textParam);
277
277
  }
278
- const postCallImage = await PlaywrightUtils_1.PlaywrightUtils.takeScreenshot(dialog.page());
278
+ const postCallImage = await PlaywrightUtils_1.PlaywrightUtils.takeViewportScreenshot(dialog.page());
279
279
  const postCallImageId = await this.persistence.saveScreenShot(this.metadata.id, postCallImage);
280
280
  const completedAt = new Date().getTime();
281
281
  const toolCall = {
@@ -355,7 +355,7 @@ Message: ${dialog.message()}`;
355
355
  metadata: null,
356
356
  };
357
357
  }
358
- const postCallImage = await PlaywrightUtils_1.PlaywrightUtils.takeScreenshot(dialog.page());
358
+ const postCallImage = await PlaywrightUtils_1.PlaywrightUtils.takeViewportScreenshot(dialog.page());
359
359
  const postCallImageId = await this.persistence.saveScreenShot(this.metadata.id, postCallImage);
360
360
  const completedAt = new Date().getTime();
361
361
  const toolCall = {
@@ -404,7 +404,7 @@ Message: ${dialog.message()}`;
404
404
  else {
405
405
  await dialog.dismiss();
406
406
  }
407
- const postCallImage = await PlaywrightUtils_1.PlaywrightUtils.takeScreenshot(dialog.page());
407
+ const postCallImage = await PlaywrightUtils_1.PlaywrightUtils.takeViewportScreenshot(dialog.page());
408
408
  const postCallImageId = await this.persistence.saveScreenShot(this.metadata.id, postCallImage);
409
409
  const completedAt = new Date().getTime();
410
410
  const toolCall = {
@@ -543,7 +543,7 @@ Message: ${dialog.message()}`;
543
543
  const lastState = this.metadata.state;
544
544
  this.metadata.state = nextState;
545
545
  this.metadata.nextState = null;
546
- await this.persistence.setMetadata(this.metadata);
546
+ await this.persistence.setFlowMetadata(this.metadata);
547
547
  if (lastState !== nextState) {
548
548
  Logger_1.appLogger.info(`Transitioned flow state from ${lastState} to ${nextState}`);
549
549
  }
@@ -635,11 +635,9 @@ Message: ${dialog.message()}`;
635
635
  ],
636
636
  });
637
637
  }
638
- await this.browserFramework.browserContext.grantPermissions([
639
- 'geolocation',
640
- ]);
641
- await this.setupInitScriptsAndBindings(this.browserFramework.browserContext);
642
- await this.browserFramework.browserContext.newPage();
638
+ await this.browserContext.grantPermissions(['geolocation']);
639
+ await this.setupInitScriptsAndBindings(this.browserContext);
640
+ await this.browserContext.newPage();
643
641
  }
644
642
  async onRunningAction() {
645
643
  const proposedToolCall = this.proposedToolCalls.shift();
@@ -668,7 +666,7 @@ Message: ${dialog.message()}`;
668
666
  toolCallId: finalProposedToolCall.toolCallId,
669
667
  };
670
668
  const toolCall = await this.toolManager.invokeTool(toolCallContext, finalProposedToolCall.name, finalProposedToolCall.parameters, !isUserDirected);
671
- await this.persistence.setMetadata(this.metadata);
669
+ await this.persistence.setFlowMetadata(this.metadata);
672
670
  this.invokedToolCalls.push(toolCall);
673
671
  await this.persistence.saveToolCall(this.metadata.id, toolCall);
674
672
  if (isUserDirected) {
@@ -732,13 +730,13 @@ Message: ${dialog.message()}`;
732
730
  async onFailed() {
733
731
  this.metadata.completedAt = new Date().getTime();
734
732
  this.metadata.nextState = null;
735
- await this.persistence.setMetadata(this.metadata);
733
+ await this.persistence.setFlowMetadata(this.metadata);
736
734
  Logger_1.appLogger.error(`Completed flow with state: ${this.metadata.state}`);
737
735
  }
738
736
  async onSuccess() {
739
737
  this.metadata.completedAt = new Date().getTime();
740
738
  this.metadata.nextState = null;
741
- await this.persistence.setMetadata(this.metadata);
739
+ await this.persistence.setFlowMetadata(this.metadata);
742
740
  Logger_1.appLogger.info(`Completed flow with state: ${this.metadata.state}`);
743
741
  }
744
742
  updateGptMessagesWithUserProposedToolCall(proposedToolCall) {
@@ -818,22 +816,21 @@ Message: ${dialog.message()}`;
818
816
  throw new PageClosedException_1.PageClosedException();
819
817
  }
820
818
  try {
821
- // Get a clean screenshot before we annotate the page.
822
- const preAnnotatedScreenShotBytes = await PlaywrightUtils_1.PlaywrightUtils.takeScreenshot(currentPage);
823
- // Save the clean screenshot.
824
- await this.persistence.saveScreenShot(this.metadata.id, preAnnotatedScreenShotBytes);
825
819
  // Hide the control panel so it does not interfere with finding
826
820
  // interactable elements.
827
821
  await this.controlPanel.hide(currentPage.context());
828
- // Add the internal Donobu attribute to each visible interactable element.
822
+ // Add the magic Donobu HTML attribute to each visible interactable element.
829
823
  await this.pageInspector.attributeInteractableElements(currentPage);
824
+ // Get a clean screenshot before we visually annotate the page.
825
+ const screenshots = await PlaywrightUtils_1.PlaywrightUtils.takePageScreenshots(currentPage);
830
826
  await this.controlPanel.show(currentPage.context());
827
+ await this.persistence.saveScreenShot(this.metadata.id, screenshots.viewport);
831
828
  // Now grab all the elements we attributed.
832
829
  const interactableElements = await this.pageInspector.getAttributedInteractableElements(currentPage);
833
830
  // Now add visible annotations to the attributed elements.
834
831
  await this.pageInspector.annotateInteractableElements(currentPage);
835
832
  // Grab a screenshot with the annotations.
836
- const annotatedScreenShotBytes = await PlaywrightUtils_1.PlaywrightUtils.takeScreenshot(currentPage);
833
+ const annotatedScreenShotBytes = await PlaywrightUtils_1.PlaywrightUtils.takeViewportScreenshot(currentPage);
837
834
  // Now remove the annotations since we have the screenshot. Note that the
838
835
  // Donobu attributed elements retain their Donobu attribute. This is done
839
836
  // so that Tool implementations can grab handles to these objects via a
@@ -845,13 +842,12 @@ Message: ${dialog.message()}`;
845
842
  // Cap the size of the screenshots so that the LLM platform will not
846
843
  // complain about image size, and so that we do not waste so much network
847
844
  // time sending unnecessarily large images.
848
- const resizedPreAnnotatedScreenShot = await MiscUtils_1.MiscUtils.resizeImageToMaxFileSize(preAnnotatedScreenShotBytes, DonobuFlow.MAX_IMAGE_BYTES_FOR_LLM);
845
+ const resizedPreAnnotatedScreenShot = await MiscUtils_1.MiscUtils.resizeImageToMaxFileSize(screenshots.viewport, DonobuFlow.MAX_IMAGE_BYTES_FOR_LLM);
849
846
  const resizedAnnotatedScreenShot = await MiscUtils_1.MiscUtils.resizeImageToMaxFileSize(annotatedScreenShotBytes, DonobuFlow.MAX_IMAGE_BYTES_FOR_LLM);
850
847
  const mainMessage = DonobuFlow.createMainUserMessage(currentPage, interactableElements);
851
848
  let scrolledPreviewItems = [];
852
- const scrolledDownScreenShotBytes = await PlaywrightUtils_1.PlaywrightUtils.getScrolledDownScreenShot(currentPage);
853
- if (scrolledDownScreenShotBytes) {
854
- const resizedScrolledDownScreenShot = await MiscUtils_1.MiscUtils.resizeImageToMaxFileSize(scrolledDownScreenShotBytes, DonobuFlow.MAX_IMAGE_BYTES_FOR_LLM);
849
+ if (screenshots.aboveViewport) {
850
+ const resizedScrolledDownScreenShot = await MiscUtils_1.MiscUtils.resizeImageToMaxFileSize(screenshots.aboveViewport, DonobuFlow.MAX_IMAGE_BYTES_FOR_LLM);
855
851
  scrolledPreviewItems = [
856
852
  {
857
853
  type: 'jpeg',
@@ -859,7 +855,23 @@ Message: ${dialog.message()}`;
859
855
  },
860
856
  {
861
857
  type: 'text',
862
- text: `For reference, this is a preview of the page scrolled down by one viewport.
858
+ text: `For reference, this is a preview of the page scrolled up by a half of a viewport.
859
+ Only use this preview to decide if you need to scroll up. Since this is a scrolled-up preview,
860
+ these elements have NOT been annotated, if you need to interact with the elements in this
861
+ preview image, you must first scroll the page up.`,
862
+ },
863
+ ];
864
+ }
865
+ if (screenshots.belowViewport) {
866
+ const resizedScrolledDownScreenShot = await MiscUtils_1.MiscUtils.resizeImageToMaxFileSize(screenshots.belowViewport, DonobuFlow.MAX_IMAGE_BYTES_FOR_LLM);
867
+ scrolledPreviewItems = [
868
+ {
869
+ type: 'jpeg',
870
+ bytes: await MiscUtils_1.MiscUtils.resizeImageToMaxFileSize(resizedScrolledDownScreenShot, DonobuFlow.MAX_IMAGE_BYTES_FOR_LLM),
871
+ },
872
+ {
873
+ type: 'text',
874
+ text: `For reference, this is a preview of the page scrolled down by a half of a viewport.
863
875
  Only use this preview to decide if you need to scroll down. Since this is a scrolled-down preview,
864
876
  these elements have NOT been annotated, if you need to interact with the elements in this
865
877
  preview image, you must first scroll the page down.`,
@@ -936,7 +948,8 @@ preview image, you must first scroll the page down.`,
936
948
  gptResponseMessage.completionTokensUsed;
937
949
  }
938
950
  static createSystemMessageForOverallObjective(envVars, overallObjective) {
939
- let envVarsSchema = (envVars ?? [])
951
+ const hasEnvVars = envVars && envVars.length > 0;
952
+ let envVarsSchema = (hasEnvVars ? envVars : [])
940
953
  .map((envVarName) => {
941
954
  return ` ${envVarName}: string`;
942
955
  })
@@ -961,7 +974,7 @@ calling tools. References are created by using JSON-path syntax inside of
961
974
  double curly braces. The structure of JSON data that can be referenced is as
962
975
  follows...
963
976
 
964
- {${envVars ? envVarsSchema : ''}
977
+ {${hasEnvVars ? envVarsSchema : ''}
965
978
  /**
966
979
  * The historical tool calls for the current Donobu flow.
967
980
  */
@@ -986,8 +999,8 @@ follows...
986
999
  }
987
1000
 
988
1001
  Non-exhaustive, illustrative, examples of how to use references...
989
- ${envVars
990
- ? `- Needing to use 'SOME_PASSWORD' environment variable, you would specify it like "{{env.SOME_PASSWORD}}"
1002
+ ${hasEnvVars
1003
+ ? `- Needing to use 'SOME_PASSWORD' environment variable, you would specify it like "{{$.env.SOME_PASSWORD}}"
991
1004
  `
992
1005
  : ''}
993
1006
  - Calling the ${MarkObjectiveNotCompletableTool_1.MarkObjectiveNotCompletableTool.NAME} tool, and you want to note
@@ -1026,14 +1039,14 @@ state the reason why this particular action is being taken using present continu
1026
1039
  in plain English with proper grammar and capitalization. The rationale MUST relate back to
1027
1040
  the overall objective!
1028
1041
 
1029
- Subsequent user messages will include two to three of images of a webpage.
1030
- - The first image is the current, real, view of the web page.
1031
- - The second image is the current view of the web page but having each interactable element marked up with an annotation.
1042
+ Subsequent user messages will include two to four of images of a webpage.
1043
+ - The first image is the current, real, view of the web page (i.e. the current viewport).
1044
+ - The second image is the current viewport of the web page but having each interactable element marked up with an annotation.
1032
1045
  Each annotation is placed dead center of its associated element.
1033
- - The third image is a preview of the page content scrolled down one viewport (if it exists at all).
1034
- This preview is not annotated; it is just used to decide if there is meaningful content that needs
1046
+ - The images following that are previews of the page content scrolled up or down by a half of a viewport (if they exist at all).
1047
+ These previews are not annotated; they are just used to decide if there is meaningful content that needs
1035
1048
  to be scrolled into view or not (such that it then can be interacted with). Note IF you need to
1036
- interact with the elements that are in this page scroll preview, the page must be scrolled down first.
1049
+ interact with the elements that are in this page scroll preview, the page must be scrolled up or down first.
1037
1050
 
1038
1051
  The annotations can be used designate the target for various tool calls that interact with the website.
1039
1052
 
@@ -1 +1 @@
1
- {"version":3,"file":"DonobuFlow.js","sourceRoot":"","sources":["../../src/managers/DonobuFlow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DonobuFlow.js","sourceRoot":"","sources":["../../src/managers/DonobuFlow.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ import { GptConfigsManager } from './GptConfigsManager';
12
12
  import { AgentsManager } from './AgentsManager';
13
13
  import { DonobuAgent } from '../models/DonobuAgentType';
14
14
  import { FlowsQuery } from '../models/FlowMetadata';
15
+ import { GeneratedProject } from './CodeGenerator';
15
16
  import { EnvDataManager } from './EnvDataManager';
16
17
  /**
17
18
  * Response wrapper for `createFlow` calls.
@@ -60,7 +61,7 @@ export declare class DonobuFlowsManager {
60
61
  /**
61
62
  * Get flows metadata across multiple persistence layers with pagination and filtering.
62
63
  */
63
- getFlowsMetadata(query: FlowsQuery): Promise<PaginatedResult<FlowMetadata>>;
64
+ getFlows(query: FlowsQuery): Promise<PaginatedResult<FlowMetadata>>;
64
65
  /**
65
66
  * Returns the metadata for the given flow by ID. If the flow is active, the
66
67
  * returned metadata object is shared with the underlying flow and changes
@@ -88,6 +89,11 @@ export declare class DonobuFlowsManager {
88
89
  cancelFlow(flowId: string): Promise<FlowMetadata>;
89
90
  /** Creates a Node.js Microsoft Playwright script to replay the given flow. */
90
91
  getFlowAsPlaywrightScript(flowId: string): Promise<string>;
92
+ /**
93
+ * Generates a complete Playwright project structure for multiple flows with dependency management.
94
+ * Automatically includes any missing dependencies to ensure a complete dependency graph.
95
+ */
96
+ getFlowsAsPlaywrightProject(flowIds: string[]): Promise<GeneratedProject>;
91
97
  /**
92
98
  * Creates a GPT client using the provided GPT configuration by name. If the
93
99
  * configuration name is null, or resolves to a missing configuration, then
@@ -106,6 +112,43 @@ export declare class DonobuFlowsManager {
106
112
  * {@link BrowserStateNotFoundException} if it is not found.
107
113
  */
108
114
  getBrowserStorageState(browserStateRef: BrowserStateReference): Promise<BrowserStorageState>;
115
+ /**
116
+ * Creates a dictionary of environment variables from allowed variable names.
117
+ *
118
+ * This method retrieves environment variable values for each of the provided names
119
+ * from the environment data manager. Only environment variables that exist in
120
+ * the environment data manager will be included in the result.
121
+ *
122
+ * @param allowedEnvVarsByName - Array of environment variable names that are allowed to be accessed.
123
+ * @returns A record mapping environment variable names to their values.
124
+ *
125
+ * @example
126
+ * // Returns { "API_KEY": "abc123", "BASE_URL": "https://example.com" }
127
+ * await buildEnvData(["API_KEY", "BASE_URL", "MISSING_VAR"]);
128
+ */
129
+ buildEnvData(allowedEnvVarsByName: string[]): Promise<Record<string, string>>;
130
+ /**
131
+ * Extracts environment variable names from the given objective and combines
132
+ * it with the given explicitly allowed variables.
133
+ *
134
+ * This function performs two operations:
135
+ * 1. Extracts environment variable references (in the form `$.env.VARIABLE_NAME`) from the overall objective.
136
+ * 2. Combines these with any explicitly allowed environment variable names.
137
+ *
138
+ * The resulting array contains unique environment variable names without duplicates.
139
+ *
140
+ * @param overallObjective - The objective text that may contain environment variable references.
141
+ * @param explicitlyAllowedEnvVariableNames - Additional environment variable names explicitly allowed.
142
+ * @returns An array of unique environment variable names that are allowed to be accessed.
143
+ *
144
+ * @example
145
+ * // Returns ["API_KEY", "USER_NAME", "DEBUG_MODE"]
146
+ * distillAllowedEnvVariableNames(
147
+ * "Use {{$.env.API_KEY}} to authenticate and greet {{$.env.USER_NAME}}",
148
+ * ["API_KEY", "DEBUG_MODE"]
149
+ * );
150
+ */
151
+ static distillAllowedEnvVariableNames(overallObjective: string | null | undefined, explicitlyAllowedEnvVariableNames: string[] | null | undefined): string[];
109
152
  private validateFlowName;
110
153
  private validateFlowParams;
111
154
  private setupAllowedTools;
@@ -142,41 +185,22 @@ export declare class DonobuFlowsManager {
142
185
  */
143
186
  private createCompositePageToken;
144
187
  /**
145
- * Creates a dictionary of environment variables from allowed variable names.
146
- *
147
- * This method retrieves environment variable values for each of the provided names
148
- * from the environment data manager. Only environment variables that exist in
149
- * the environment data manager will be included in the result.
150
- *
151
- * @param allowedEnvVarsByName - Array of environment variable names that are allowed to be accessed.
152
- * @returns A record mapping environment variable names to their values.
153
- *
154
- * @example
155
- * // Returns { "API_KEY": "abc123", "BASE_URL": "https://example.com" }
156
- * await buildEnvData(["API_KEY", "BASE_URL", "MISSING_VAR"]);
188
+ * Resolves the complete set of flow IDs including all transitive dependencies.
189
+ * Uses breadth-first search to discover all dependencies recursively.
157
190
  */
158
- buildEnvData(allowedEnvVarsByName: string[]): Promise<Record<string, string>>;
191
+ private resolveFlowDependencies;
159
192
  /**
160
- * Extracts environment variable names from the given objective and combines
161
- * it with the given explicitly allowed variables.
162
- *
163
- * This function performs two operations:
164
- * 1. Extracts environment variable references (in the form `$.env.VARIABLE_NAME`) from the overall objective.
165
- * 2. Combines these with any explicitly allowed environment variable names.
166
- *
167
- * The resulting array contains unique environment variable names without duplicates.
168
- *
169
- * @param overallObjective - The objective text that may contain environment variable references.
170
- * @param explicitlyAllowedEnvVariableNames - Additional environment variable names explicitly allowed.
171
- * @returns An array of unique environment variable names that are allowed to be accessed.
172
- *
173
- * @example
174
- * // Returns ["API_KEY", "USER_NAME", "DEBUG_MODE"]
175
- * distillAllowedEnvVariableNames(
176
- * "Use {{$.env.API_KEY}} to authenticate and greet {{$.env.USER_NAME}}",
177
- * ["API_KEY", "DEBUG_MODE"]
178
- * );
193
+ * Extracts dependencies for a single flow by analyzing its browser.initialState
179
194
  */
180
- static distillAllowedEnvVariableNames(overallObjective: string | null | undefined, explicitlyAllowedEnvVariableNames: string[] | null | undefined): string[];
195
+ private extractFlowDependencies;
196
+ /**
197
+ * Determines if a new flow ID should replace an existing flow ID in the name mapping.
198
+ * This is a simplified version that just compares the flows by their metadata.
199
+ */
200
+ private shouldReplaceFlowMapping;
201
+ /**
202
+ * Helper method that implements the same logic as FlowDependencyAnalyzer.shouldReplaceFlow
203
+ */
204
+ private shouldReplaceFlow;
181
205
  }
182
206
  //# sourceMappingURL=DonobuFlowsManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DonobuFlowsManager.d.ts","sourceRoot":"","sources":["../../src/managers/DonobuFlowsManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DonobuFlowsManager.d.ts","sourceRoot":"","sources":["../../src/managers/DonobuFlowsManager.ts"],"names":[],"mappings":"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"}