donobu 2.0.0 → 2.2.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 (129) hide show
  1. package/dist/apis/SpecialFlowsApi.d.ts +5 -2
  2. package/dist/apis/SpecialFlowsApi.js +46 -25
  3. package/dist/apis/SpecialFlowsApi.js.map +1 -1
  4. package/dist/assets/control-panel.js +16 -1
  5. package/dist/assets/generated/parameter-schemas.json +340 -94
  6. package/dist/assets/generated/version +1 -1
  7. package/dist/clients/AnthropicGptClient.js +1 -1
  8. package/dist/clients/AnthropicGptClient.js.map +1 -1
  9. package/dist/clients/GoogleGptClient.js +1 -1
  10. package/dist/clients/GoogleGptClient.js.map +1 -1
  11. package/dist/clients/OpenAiGptClient.js +1 -1
  12. package/dist/clients/OpenAiGptClient.js.map +1 -1
  13. package/dist/envVars.d.ts +76 -0
  14. package/dist/envVars.js +80 -0
  15. package/dist/envVars.js.map +1 -0
  16. package/dist/esm/apis/SpecialFlowsApi.d.ts +5 -2
  17. package/dist/esm/apis/SpecialFlowsApi.js +46 -25
  18. package/dist/esm/apis/SpecialFlowsApi.js.map +1 -1
  19. package/dist/esm/assets/control-panel.js +16 -1
  20. package/dist/esm/assets/generated/parameter-schemas.json +340 -94
  21. package/dist/esm/assets/generated/version +1 -1
  22. package/dist/esm/clients/AnthropicGptClient.js +1 -1
  23. package/dist/esm/clients/AnthropicGptClient.js.map +1 -1
  24. package/dist/esm/clients/GoogleGptClient.js +1 -1
  25. package/dist/esm/clients/GoogleGptClient.js.map +1 -1
  26. package/dist/esm/clients/OpenAiGptClient.js +1 -1
  27. package/dist/esm/clients/OpenAiGptClient.js.map +1 -1
  28. package/dist/esm/envVars.d.ts +76 -0
  29. package/dist/esm/envVars.js +80 -0
  30. package/dist/esm/envVars.js.map +1 -0
  31. package/dist/esm/main.js +2 -2
  32. package/dist/esm/main.js.map +1 -1
  33. package/dist/esm/managers/AgentsManager.js +2 -1
  34. package/dist/esm/managers/AgentsManager.js.map +1 -1
  35. package/dist/esm/managers/CodeGenerator.js +7 -3
  36. package/dist/esm/managers/CodeGenerator.js.map +1 -1
  37. package/dist/esm/managers/DonobuFlow.d.ts +4 -4
  38. package/dist/esm/managers/DonobuFlow.js +73 -71
  39. package/dist/esm/managers/DonobuFlow.js.map +1 -1
  40. package/dist/esm/managers/DonobuFlowsManager.d.ts +1 -2
  41. package/dist/esm/managers/DonobuFlowsManager.js +28 -42
  42. package/dist/esm/managers/DonobuFlowsManager.js.map +1 -1
  43. package/dist/esm/managers/GptConfigsManager.d.ts +1 -1
  44. package/dist/esm/managers/GptConfigsManager.js +11 -7
  45. package/dist/esm/managers/GptConfigsManager.js.map +1 -1
  46. package/dist/esm/managers/ToolManager.js +3 -0
  47. package/dist/esm/managers/ToolManager.js.map +1 -1
  48. package/dist/esm/models/BrowserConfig.d.ts +65 -0
  49. package/dist/esm/models/BrowserConfig.js +4 -0
  50. package/dist/esm/models/BrowserConfig.js.map +1 -0
  51. package/dist/esm/models/BrowserFramework.d.ts +31 -4
  52. package/dist/esm/models/BrowserFramework.js +125 -7
  53. package/dist/esm/models/BrowserFramework.js.map +1 -1
  54. package/dist/esm/models/BrowserStateFlowReference.js +1 -0
  55. package/dist/esm/models/BrowserStateFlowReference.js.map +1 -1
  56. package/dist/esm/models/CreateDonobuFlow.d.ts +2 -27
  57. package/dist/esm/models/FlowMetadata.d.ts +6 -19
  58. package/dist/esm/models/FlowMetadata.js +1 -0
  59. package/dist/esm/models/FlowMetadata.js.map +1 -1
  60. package/dist/esm/persistence/DonobuSqliteDb.js +75 -0
  61. package/dist/esm/persistence/DonobuSqliteDb.js.map +1 -1
  62. package/dist/esm/persistence/FlowsPersistenceFactoryImpl.d.ts +0 -4
  63. package/dist/esm/persistence/FlowsPersistenceFactoryImpl.js +5 -8
  64. package/dist/esm/persistence/FlowsPersistenceFactoryImpl.js.map +1 -1
  65. package/dist/esm/test.d.ts +2 -0
  66. package/dist/esm/test.js +10 -5
  67. package/dist/esm/test.js.map +1 -1
  68. package/dist/esm/tools/AssertPageTextTool.d.ts +19 -0
  69. package/dist/esm/tools/AssertPageTextTool.js +42 -0
  70. package/dist/esm/tools/AssertPageTextTool.js.map +1 -0
  71. package/dist/esm/tools/AssertTextVisibility.d.ts +19 -0
  72. package/dist/esm/tools/AssertTextVisibility.js +32 -0
  73. package/dist/esm/tools/AssertTextVisibility.js.map +1 -0
  74. package/dist/esm/tools/ExtractPublicFacebookEntityDataTool.js +33 -16
  75. package/dist/esm/tools/ExtractPublicFacebookEntityDataTool.js.map +1 -1
  76. package/dist/esm/utils/MiscUtils.js +2 -1
  77. package/dist/esm/utils/MiscUtils.js.map +1 -1
  78. package/dist/esm/utils/PlaywrightUtils.js +1 -2
  79. package/dist/esm/utils/PlaywrightUtils.js.map +1 -1
  80. package/dist/main.js +2 -2
  81. package/dist/main.js.map +1 -1
  82. package/dist/managers/AgentsManager.js +2 -1
  83. package/dist/managers/AgentsManager.js.map +1 -1
  84. package/dist/managers/CodeGenerator.js +7 -3
  85. package/dist/managers/CodeGenerator.js.map +1 -1
  86. package/dist/managers/DonobuFlow.d.ts +4 -4
  87. package/dist/managers/DonobuFlow.js +73 -71
  88. package/dist/managers/DonobuFlow.js.map +1 -1
  89. package/dist/managers/DonobuFlowsManager.d.ts +1 -2
  90. package/dist/managers/DonobuFlowsManager.js +28 -42
  91. package/dist/managers/DonobuFlowsManager.js.map +1 -1
  92. package/dist/managers/GptConfigsManager.d.ts +1 -1
  93. package/dist/managers/GptConfigsManager.js +11 -7
  94. package/dist/managers/GptConfigsManager.js.map +1 -1
  95. package/dist/managers/ToolManager.js +3 -0
  96. package/dist/managers/ToolManager.js.map +1 -1
  97. package/dist/models/BrowserConfig.d.ts +65 -0
  98. package/dist/models/BrowserConfig.js +4 -0
  99. package/dist/models/BrowserConfig.js.map +1 -0
  100. package/dist/models/BrowserFramework.d.ts +31 -4
  101. package/dist/models/BrowserFramework.js +125 -7
  102. package/dist/models/BrowserFramework.js.map +1 -1
  103. package/dist/models/BrowserStateFlowReference.js +1 -0
  104. package/dist/models/BrowserStateFlowReference.js.map +1 -1
  105. package/dist/models/CreateDonobuFlow.d.ts +2 -27
  106. package/dist/models/FlowMetadata.d.ts +6 -19
  107. package/dist/models/FlowMetadata.js +1 -0
  108. package/dist/models/FlowMetadata.js.map +1 -1
  109. package/dist/persistence/DonobuSqliteDb.js +75 -0
  110. package/dist/persistence/DonobuSqliteDb.js.map +1 -1
  111. package/dist/persistence/FlowsPersistenceFactoryImpl.d.ts +0 -4
  112. package/dist/persistence/FlowsPersistenceFactoryImpl.js +5 -8
  113. package/dist/persistence/FlowsPersistenceFactoryImpl.js.map +1 -1
  114. package/dist/test.d.ts +2 -0
  115. package/dist/test.js +10 -5
  116. package/dist/test.js.map +1 -1
  117. package/dist/tools/AssertPageTextTool.d.ts +19 -0
  118. package/dist/tools/AssertPageTextTool.js +42 -0
  119. package/dist/tools/AssertPageTextTool.js.map +1 -0
  120. package/dist/tools/AssertTextVisibility.d.ts +19 -0
  121. package/dist/tools/AssertTextVisibility.js +32 -0
  122. package/dist/tools/AssertTextVisibility.js.map +1 -0
  123. package/dist/tools/ExtractPublicFacebookEntityDataTool.js +33 -16
  124. package/dist/tools/ExtractPublicFacebookEntityDataTool.js.map +1 -1
  125. package/dist/utils/MiscUtils.js +2 -1
  126. package/dist/utils/MiscUtils.js.map +1 -1
  127. package/dist/utils/PlaywrightUtils.js +1 -2
  128. package/dist/utils/PlaywrightUtils.js.map +1 -1
  129. package/package.json +8 -6
@@ -9,18 +9,62 @@ const puppeteer_extra_plugin_stealth_1 = __importDefault(require("puppeteer-extr
9
9
  const JsonUtils_1 = require("../utils/JsonUtils");
10
10
  const InvalidParamValueException_1 = require("../exceptions/InvalidParamValueException");
11
11
  const path_1 = __importDefault(require("path"));
12
+ const envVars_1 = require("../envVars");
13
+ const Logger_1 = require("../utils/Logger");
12
14
  class BrowserFramework {
15
+ browserConfig;
13
16
  browser;
14
17
  browserContext;
18
+ browserBaseData;
19
+ static DEFAULT_DEVICE_NAME = 'Desktop Chromium';
15
20
  static {
16
21
  playwright_extra_1.firefox.use((0, puppeteer_extra_plugin_stealth_1.default)());
17
22
  playwright_extra_1.chromium.use((0, puppeteer_extra_plugin_stealth_1.default)());
18
23
  playwright_extra_1.webkit.use((0, puppeteer_extra_plugin_stealth_1.default)());
19
24
  }
20
25
  static DEVICES = BrowserFramework.getDevices();
21
- constructor(browser, browserContext) {
26
+ constructor(browserConfig, browser, browserContext, browserBaseData) {
27
+ this.browserConfig = browserConfig;
22
28
  this.browser = browser;
23
29
  this.browserContext = browserContext;
30
+ this.browserBaseData = browserBaseData;
31
+ }
32
+ /**
33
+ * Closes the browser and browser context. If the browser is a BrowserBase
34
+ * instance, it will also release the session.
35
+ */
36
+ async close() {
37
+ try {
38
+ await this.browserContext.close();
39
+ }
40
+ catch (_error) {
41
+ // Ignore, the browser context may have already been closed and that is fine.
42
+ }
43
+ try {
44
+ await this.browser.close();
45
+ }
46
+ catch (_error) {
47
+ // Ignore, the browser may have already been closed and that is fine.
48
+ }
49
+ if (this.browserConfig.using.type === 'browserBase' &&
50
+ this.browserBaseData) {
51
+ const password = process.env[envVars_1.ENV_VAR_NAMES.BROWSERBASE_API_KEY] ?? '';
52
+ const options = {
53
+ method: 'POST',
54
+ headers: {
55
+ 'X-BB-API-Key': password,
56
+ 'Content-Type': 'application/json',
57
+ },
58
+ body: `{"projectId":"${this.browserBaseData.projectId}","status":"REQUEST_RELEASE"}`,
59
+ };
60
+ try {
61
+ await fetch(`https://api.browserbase.com/v1/sessions/${this.browserBaseData.id}`, options);
62
+ }
63
+ catch (error) {
64
+ // Ignore, BrowserBase sessions expire automatically anyway.
65
+ Logger_1.Logger.appLogger.warn('Failed to release BrowserBase session', error);
66
+ }
67
+ }
24
68
  }
25
69
  /**
26
70
  * Returns the list of supported devices by name. These values can be passed as a deviceName to
@@ -29,13 +73,34 @@ class BrowserFramework {
29
73
  static supportedDevicesNames() {
30
74
  return [...BrowserFramework.DEVICES.keys()].reverse();
31
75
  }
76
+ static async create(browserConfig, outputDir, storageState) {
77
+ const type = browserConfig.using.type;
78
+ switch (type) {
79
+ case 'device': {
80
+ const { browser, browserContext } = await BrowserFramework.forDevice(browserConfig.using.deviceName ??
81
+ BrowserFramework.DEFAULT_DEVICE_NAME, browserConfig.using.headless ?? false, outputDir, storageState);
82
+ return new BrowserFramework(browserConfig, browser, browserContext);
83
+ }
84
+ case 'remoteInstance': {
85
+ const { browser, browserContext } = await BrowserFramework.forRemoteBrowser(browserConfig.using.url, outputDir, storageState);
86
+ return new BrowserFramework(browserConfig, browser, browserContext);
87
+ }
88
+ case 'browserBase': {
89
+ const { browser, browserContext, browserBaseData } = await BrowserFramework.forBrowserBase(browserConfig.using.sessionArgs, outputDir, storageState);
90
+ return new BrowserFramework(browserConfig, browser, browserContext, browserBaseData);
91
+ }
92
+ default: {
93
+ throw new InvalidParamValueException_1.InvalidParamValueException('type', type);
94
+ }
95
+ }
96
+ }
32
97
  /**
33
98
  * Connects to an existing Chromium browser using the Chrome DevTools Protocol (CDP) at the given
34
99
  * URL. If the URL contains "${env.VARIABLE_NAME}", then it will be expanded to the value of the
35
100
  * specified environment variable.
36
101
  */
37
102
  static async forRemoteBrowser(remoteBrowserInstanceUrl, outputDir, storageState) {
38
- const expandedUrl = this.expandEnvVariablesInUrl(remoteBrowserInstanceUrl);
103
+ const expandedUrl = this.expandEnvVariables(remoteBrowserInstanceUrl);
39
104
  try {
40
105
  const browser = await playwright_extra_1.chromium.connectOverCDP(expandedUrl);
41
106
  const contextOptions = {
@@ -44,7 +109,10 @@ class BrowserFramework {
44
109
  if (storageState) {
45
110
  contextOptions.storageState = storageState;
46
111
  }
47
- return new BrowserFramework(browser, await browser.newContext(contextOptions));
112
+ return {
113
+ browser: browser,
114
+ browserContext: await browser.newContext(contextOptions),
115
+ };
48
116
  }
49
117
  catch (_) {
50
118
  throw new InvalidParamValueException_1.InvalidParamValueException('remoteBrowserInstanceUrl', remoteBrowserInstanceUrl);
@@ -63,6 +131,56 @@ class BrowserFramework {
63
131
  throw new InvalidParamValueException_1.InvalidParamValueException('deviceName', deviceName);
64
132
  }
65
133
  }
134
+ /**
135
+ * Creates a BrowserBase session. If the project ID
136
+ * contains "${env.VARIABLE_NAME}", then it will be expanded to the value of
137
+ * the specified environment variable. Using this method requires the
138
+ * BROWSERBASE_API_KEY environment variable to be set.
139
+ *
140
+ * The returned browserBaseData object conforms to the response of the session
141
+ * creation API endpoint. See...
142
+ * https://docs.browserbase.com/reference/api/create-a-session#response-id
143
+ */
144
+ static async forBrowserBase(sessionArgs, outputDir, storageState) {
145
+ const browserBaseData = await BrowserFramework.establishBrowserBaseSession(sessionArgs);
146
+ const browser = await playwright_extra_1.chromium.connectOverCDP(browserBaseData.connectUrl);
147
+ const contextOptions = {
148
+ recordVideo: { dir: outputDir },
149
+ };
150
+ if (storageState) {
151
+ contextOptions.storageState = storageState;
152
+ }
153
+ return {
154
+ browser: browser,
155
+ browserContext: await browser.newContext(contextOptions),
156
+ browserBaseData: browserBaseData,
157
+ };
158
+ }
159
+ /**
160
+ * Establishes a BrowserBase session. The returned structure matches the
161
+ * response structore from the BrowserBase session API. See...
162
+ * https://docs.browserbase.com/reference/api/create-a-session#response-id
163
+ */
164
+ static async establishBrowserBaseSession(sessionArgs) {
165
+ const expandedSessionArgs = {
166
+ ...sessionArgs,
167
+ projectId: this.expandEnvVariables(sessionArgs.projectId),
168
+ };
169
+ const password = process.env[envVars_1.ENV_VAR_NAMES.BROWSERBASE_API_KEY];
170
+ if (!password) {
171
+ throw new InvalidParamValueException_1.InvalidParamValueException(envVars_1.ENV_VAR_NAMES.BROWSERBASE_API_KEY, null);
172
+ }
173
+ const options = {
174
+ method: 'POST',
175
+ headers: { 'X-BB-API-Key': password, 'Content-Type': 'application/json' },
176
+ body: JSON.stringify(expandedSessionArgs),
177
+ };
178
+ const browserBaseData = await fetch('https://api.browserbase.com/v1/sessions', options).then((response) => response.json());
179
+ if (browserBaseData.error) {
180
+ throw new InvalidParamValueException_1.InvalidParamValueException(envVars_1.ENV_VAR_NAMES.BROWSERBASE_API_KEY, '(redacted)', `${browserBaseData.error}: ${browserBaseData.message}`);
181
+ }
182
+ return browserBaseData;
183
+ }
66
184
  static async forDeviceWithType(deviceName, browserType, headless, outputDir, storageState) {
67
185
  const device = BrowserFramework.DEVICES.get(deviceName);
68
186
  if (device) {
@@ -126,17 +244,17 @@ class BrowserFramework {
126
244
  throw new InvalidParamValueException_1.InvalidParamValueException('browserType', browserType);
127
245
  }
128
246
  try {
129
- const context = await browser.newContext(contextOptions);
130
- return new BrowserFramework(browser, context);
247
+ const browserContext = await browser.newContext(contextOptions);
248
+ return { browser, browserContext };
131
249
  }
132
250
  catch (error) {
133
251
  await browser.close();
134
252
  throw error;
135
253
  }
136
254
  }
137
- static expandEnvVariablesInUrl(url) {
255
+ static expandEnvVariables(str) {
138
256
  const pattern = /\${env\.(\w+)}/g;
139
- return url.replace(pattern, (_, envVarName) => {
257
+ return str.replace(pattern, (_, envVarName) => {
140
258
  const envVarValue = process.env[envVarName];
141
259
  if (!envVarValue) {
142
260
  throw new InvalidParamValueException_1.InvalidParamValueException(envVarName, null);
@@ -1 +1 @@
1
- {"version":3,"file":"BrowserFramework.js","sourceRoot":"","sources":["../../src/models/BrowserFramework.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BrowserFramework.js","sourceRoot":"","sources":["../../src/models/BrowserFramework.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  "use strict";
2
+ // src/models/BrowserStateFlowReference.ts
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  //# sourceMappingURL=BrowserStateFlowReference.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BrowserStateFlowReference.js","sourceRoot":"","sources":["../../src/models/BrowserStateFlowReference.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"BrowserStateFlowReference.js","sourceRoot":"","sources":["../../src/models/BrowserStateFlowReference.ts"],"names":[],"mappings":";AAAA,0CAA0C"}
@@ -2,7 +2,7 @@ import { CustomTool } from './CustomTool';
2
2
  import { ProposedToolCall } from './ProposedToolCall';
3
3
  import { RunMode } from './FlowMetadata';
4
4
  import { JSONSchema7 } from 'json-schema';
5
- import { BrowserStateFlowReference } from './BrowserStateFlowReference';
5
+ import { BrowserConfig } from './BrowserConfig';
6
6
  /**
7
7
  * This is the expected payload for a request to create a new DonobuFlow flow.
8
8
  */
@@ -16,38 +16,13 @@ export type CreateDonobuFlow = {
16
16
  readonly overallObjective?: string;
17
17
  /** The name for this flow; if present, must be fewer than 256 characters. */
18
18
  readonly name?: string;
19
- /**
20
- * When starting the flow, initialize the browser state from the given flow
21
- * by its ID or name.
22
- **/
23
- readonly initialBrowserState?: BrowserStateFlowReference;
24
- /** If set to true, saves the browser state at the end of the flow. */
25
- readonly persistBrowserState?: boolean;
26
- /**
27
- * The name of the device to run the flow with. See `devices.json` for details.
28
- * If not specified, defaults to DonobuFlowsManager.DEFAULT_DEVICE_NAME unless
29
- * remoteBrowserInstanceUrl is specified. If this is non-null, then
30
- * remoteBrowserInstanceUrl must be null.
31
- */
32
- readonly deviceName?: string;
33
- /**
34
- * The URL of a remote browser instance to connect to using the Chrome DevTools
35
- * Protocol (CDP). If this is non-null, then deviceName must be null. If the URL
36
- * contains "${env.VARIABLE_NAME}", then it will be expanded to the value of the
37
- * specified environment variable.
38
- */
39
- readonly remoteBrowserInstanceUrl?: string;
19
+ readonly browser?: BrowserConfig;
40
20
  /**
41
21
  * The URL to HTTP POST to when the flow completes. The body will contain a
42
22
  * JSON object with single field, "id", of which is the ID of the flow that
43
23
  * completed.
44
24
  */
45
25
  readonly callbackUrl?: string;
46
- /**
47
- * If true, will not open a real browser window to perform the flow.
48
- * If remoteBrowserInstanceUrl is non-null, this parameter is ignored.
49
- */
50
- readonly headless?: boolean;
51
26
  /**
52
27
  * Custom tools to enable for this flow. Any tools specified here will be
53
28
  * implicitly added to allowedTools.
@@ -1,6 +1,6 @@
1
1
  import { CustomTool } from './CustomTool';
2
- import { BrowserStateFlowReference } from './BrowserStateFlowReference';
3
2
  import { JSONSchema7 } from 'json-schema';
3
+ import { BrowserConfig } from './BrowserConfig';
4
4
  /**
5
5
  * Metadata type of the details/status/state of a Donobu flow.
6
6
  */
@@ -11,16 +11,16 @@ export type FlowMetadata = {
11
11
  readonly name: string | null;
12
12
  /** The version of Donobu that created the flow. */
13
13
  readonly createdWithDonobuVersion: string;
14
- /** The source of the initial browser state. */
15
- readonly initialBrowserState: BrowserStateFlowReference | null;
16
- /** If true, will persist the final browser state when the flow completes. */
17
- readonly persistBrowserState: boolean | null;
14
+ /**
15
+ * The configuration of the browser to use for the flow.
16
+ */
17
+ readonly browser: BrowserConfig;
18
18
  /** The name of the specific GPT configuration used for the flow. */
19
19
  readonly gptConfigName: string | null;
20
20
  /**
21
21
  * If true, means that the `gptConfigName` was explicitly overwritten when the
22
22
  * flow was created.
23
- **/
23
+ */
24
24
  readonly hasGptConfigNameOverride: boolean;
25
25
  /** Custom tools available for the flow. */
26
26
  readonly customTools: CustomTool[] | null;
@@ -30,25 +30,12 @@ export type FlowMetadata = {
30
30
  runMode: RunMode;
31
31
  /** Set to true if the in-browser control panel should be enabled. */
32
32
  isControlPanelEnabled: boolean;
33
- /**
34
- * The name of the device to use for the flow.
35
- * If non-null, remoteBrowserInstanceUrl must be null
36
- */
37
- readonly deviceName: string | null;
38
- /**
39
- * The URL of a remote browser instance to connect to using Chrome DevTools Protocol (CDP).
40
- * If non-null, deviceName must be null. URLs containing "${env.VARIABLE_NAME}" will be
41
- * expanded to the value of the specified environment variable.
42
- */
43
- readonly remoteBrowserInstanceUrl: string | null;
44
33
  /**
45
34
  * The URL to HTTP POST to when the flow completes. The
46
35
  * body will contain a JSON object with single field, "id", of which is
47
36
  * the ID of the flow that completed.
48
37
  */
49
38
  readonly callbackUrl: string | null;
50
- /** If true, a real browser window was not used to perform the flow. */
51
- readonly headless: boolean;
52
39
  /** The website URL to start the flow at. */
53
40
  readonly targetWebsite: string;
54
41
  /** The overall objective to pursue. */
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+ // src/models/FlowMetadata.ts
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  exports.RunMode = exports.isComplete = exports.State = void 0;
4
5
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"FlowMetadata.js","sourceRoot":"","sources":["../../src/models/FlowMetadata.ts"],"names":[],"mappings":";;;AA+GA;;GAEG;AACH,IAAY,KAUX;AAVD,WAAY,KAAK;IACf,gCAAuB,CAAA;IACvB,sCAA6B,CAAA;IAC7B,sEAA6D,CAAA;IAC7D,4EAAmE,CAAA;IACnE,0BAAiB,CAAA;IACjB,8BAAqB,CAAA;IACrB,0CAAiC,CAAA;IACjC,0BAAiB,CAAA;IACjB,4BAAmB,CAAA;AACrB,CAAC,EAVW,KAAK,qBAAL,KAAK,QAUhB;AAED;;;;;GAKG;AACI,MAAM,UAAU,GAAG,CAAC,KAAY,EAAW,EAAE;IAClD,OAAO,KAAK,KAAK,KAAK,CAAC,MAAM,IAAI,KAAK,KAAK,KAAK,CAAC,OAAO,CAAC;AAC3D,CAAC,CAAC;AAFW,QAAA,UAAU,cAErB;AAEF;;GAEG;AACH,IAAY,OAgBX;AAhBD,WAAY,OAAO;IACjB;;;OAGG;IACH,oCAAyB,CAAA;IACzB;;;OAGG;IACH,gCAAqB,CAAA;IACrB;;;OAGG;IACH,0CAA+B,CAAA;AACjC,CAAC,EAhBW,OAAO,uBAAP,OAAO,QAgBlB"}
1
+ {"version":3,"file":"FlowMetadata.js","sourceRoot":"","sources":["../../src/models/FlowMetadata.ts"],"names":[],"mappings":";AAAA,6BAA6B;;;AAgG7B;;GAEG;AACH,IAAY,KAUX;AAVD,WAAY,KAAK;IACf,gCAAuB,CAAA;IACvB,sCAA6B,CAAA;IAC7B,sEAA6D,CAAA;IAC7D,4EAAmE,CAAA;IACnE,0BAAiB,CAAA;IACjB,8BAAqB,CAAA;IACrB,0CAAiC,CAAA;IACjC,0BAAiB,CAAA;IACjB,4BAAmB,CAAA;AACrB,CAAC,EAVW,KAAK,qBAAL,KAAK,QAUhB;AAED;;;;;GAKG;AACI,MAAM,UAAU,GAAG,CAAC,KAAY,EAAW,EAAE;IAClD,OAAO,KAAK,KAAK,KAAK,CAAC,MAAM,IAAI,KAAK,KAAK,KAAK,CAAC,OAAO,CAAC;AAC3D,CAAC,CAAC;AAFW,QAAA,UAAU,cAErB;AAEF;;GAEG;AACH,IAAY,OAgBX;AAhBD,WAAY,OAAO;IACjB;;;OAGG;IACH,oCAAyB,CAAA;IACzB;;;OAGG;IACH,gCAAqB,CAAA;IACrB;;;OAGG;IACH,0CAA+B,CAAA;AACjC,CAAC,EAhBW,OAAO,uBAAP,OAAO,QAgBlB"}
@@ -88,6 +88,81 @@ CREATE TABLE IF NOT EXISTS gpt_configs (
88
88
  );`);
89
89
  },
90
90
  },
91
+ {
92
+ // Update the flow JSON metadata schema.
93
+ version: 4,
94
+ up: (db) => {
95
+ // For each row in the flow_metadata table...
96
+ // 1. Load the metadata field.
97
+ // 2. Parse it as JSON data.
98
+ // 3. Update the JSON data such that...
99
+ // a. There is a new field called "browser" that is an object.
100
+ // b. The "initialBrowserState" field is moved to the "browser" object as "initialState".
101
+ // c. The "persistBrowserState" field is moved to the "browser" object as "persistState".
102
+ // d. There is a field in all "browser" objects called "using" that is an object.
103
+ // e. If there is a non-null "remoteBrowserInstanceUrl" field, then...
104
+ // i. The "remoteBrowserInstanceUrl" field is moved to the "using" object as "url".
105
+ // ii. The "type" field in the "using" object is set to "remoteInstance".
106
+ // f. If the "remoteBrowserInstanceUrl" field is null, then...
107
+ // i. The "deviceName" field is moved to the "using" object. If "deviceName" is null,
108
+ // then it is defaulted to "Desktop Chromium".
109
+ // ii. The "headless" field is moved to the "using" object.
110
+ // iii. The "type" field in the "using" object is set to "device".
111
+ // g. The original top-level "initialBrowserState" field is removed.
112
+ // h. The original top-level "persistBrowserState" field is removed.
113
+ // i. The original top-level "remoteBrowserInstanceUrl" field is removed.
114
+ // j. The original top-level "deviceName" field is removed.
115
+ // k. The original top-level "headless" field is removed.
116
+ // 4. Save the JSON data back to the metadata field.
117
+ // Get all rows from the flow_metadata table.
118
+ const flows = db
119
+ .prepare('SELECT id, metadata FROM flow_metadata')
120
+ .all();
121
+ // Prepare the update statement.
122
+ const updateStmt = db.prepare('UPDATE flow_metadata SET metadata = ? WHERE id = ?');
123
+ // Process each flow's metadata.
124
+ for (const flow of flows) {
125
+ try {
126
+ // Parse the metadata JSON.
127
+ const metadata = JSON.parse(flow.metadata);
128
+ // Create the new browser object structure.
129
+ metadata.browser = {
130
+ initialState: metadata.initialBrowserState || null,
131
+ persistState: metadata.persistBrowserState || false,
132
+ using: {},
133
+ };
134
+ // Determine the browser type and populate the 'using' object.
135
+ if (metadata.remoteBrowserInstanceUrl) {
136
+ // Remote browser instance configuration.
137
+ metadata.browser.using = {
138
+ type: 'remoteInstance',
139
+ url: metadata.remoteBrowserInstanceUrl,
140
+ };
141
+ }
142
+ else {
143
+ // Local device configuration.
144
+ metadata.browser.using = {
145
+ type: 'device',
146
+ deviceName: metadata.deviceName || 'Desktop Chromium',
147
+ headless: metadata.headless !== undefined ? metadata.headless : false,
148
+ };
149
+ }
150
+ // Remove the old fields.
151
+ delete metadata.initialBrowserState;
152
+ delete metadata.persistBrowserState;
153
+ delete metadata.remoteBrowserInstanceUrl;
154
+ delete metadata.deviceName;
155
+ delete metadata.headless;
156
+ // Update the database with the modified metadata.
157
+ updateStmt.run(JSON.stringify(metadata), flow.id);
158
+ }
159
+ catch (error) {
160
+ console.error(`Error updating metadata for flow ${flow.id}:`, error);
161
+ // Continue processing other flows even if one fails.
162
+ }
163
+ }
164
+ },
165
+ },
91
166
  ];
92
167
  /**
93
168
  * Create the SQL schema migrations table that can be used to manage table
@@ -1 +1 @@
1
- {"version":3,"file":"DonobuSqliteDb.js","sourceRoot":"","sources":["../../src/persistence/DonobuSqliteDb.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DonobuSqliteDb.js","sourceRoot":"","sources":["../../src/persistence/DonobuSqliteDb.ts"],"names":[],"mappings":"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"}
@@ -14,10 +14,6 @@ export declare class FlowsPersistenceFactoryImpl implements FlowsPersistenceFact
14
14
  private readonly googleCloudStorageBucket;
15
15
  private readonly supabaseJwtSecretKey;
16
16
  private readonly requestContextHolder;
17
- private static readonly AWS_S3_BUCKET_KEY;
18
- private static readonly AWS_S3_REGION_KEY;
19
- private static readonly GOOGLE_CLOUD_STORAGE_BUCKET_ENV;
20
- private static readonly SUPABASE_JWT_SECRET_KEY_ENV;
21
17
  /**
22
18
  * Creates an instance.
23
19
  *
@@ -17,6 +17,7 @@ const FlowsPersistenceSqlite_1 = require("./FlowsPersistenceSqlite");
17
17
  const Logger_1 = require("../utils/Logger");
18
18
  const MiscUtils_1 = require("../utils/MiscUtils");
19
19
  const DonobuSqliteDb_1 = require("./DonobuSqliteDb");
20
+ const envVars_1 = require("../envVars");
20
21
  /**
21
22
  * A factory class for creating new FlowsPersistence instances. The type of persistence
22
23
  * objects created varies depending on this factory's constructor arguments and the current API
@@ -29,10 +30,6 @@ class FlowsPersistenceFactoryImpl {
29
30
  googleCloudStorageBucket;
30
31
  supabaseJwtSecretKey;
31
32
  requestContextHolder;
32
- static AWS_S3_BUCKET_KEY = 'AWS_S3_BUCKET';
33
- static AWS_S3_REGION_KEY = 'AWS_S3_REGION';
34
- static GOOGLE_CLOUD_STORAGE_BUCKET_ENV = 'GOOGLE_CLOUD_STORAGE_BUCKET';
35
- static SUPABASE_JWT_SECRET_KEY_ENV = 'SUPABASE_JWT_SECRET_KEY';
36
33
  /**
37
34
  * Creates an instance.
38
35
  *
@@ -72,10 +69,10 @@ class FlowsPersistenceFactoryImpl {
72
69
  if (deploymentEnvironment === DonobuDeploymentEnvironment_1.DonobuDeploymentEnvironment.LOCAL) {
73
70
  await FlowsPersistenceFactoryImpl.migrateToSqlite();
74
71
  }
75
- const awsS3Bucket = process.env[FlowsPersistenceFactoryImpl.AWS_S3_BUCKET_KEY];
76
- const awsS3Region = process.env[FlowsPersistenceFactoryImpl.AWS_S3_REGION_KEY];
77
- const googleCloudStorageBucket = process.env[FlowsPersistenceFactoryImpl.GOOGLE_CLOUD_STORAGE_BUCKET_ENV];
78
- const supabaseJwtSecretKey = process.env[FlowsPersistenceFactoryImpl.SUPABASE_JWT_SECRET_KEY_ENV];
72
+ const awsS3Bucket = process.env[envVars_1.ENV_VAR_NAMES.AWS_S3_BUCKET];
73
+ const awsS3Region = process.env[envVars_1.ENV_VAR_NAMES.AWS_S3_REGION];
74
+ const googleCloudStorageBucket = process.env[envVars_1.ENV_VAR_NAMES.GOOGLE_CLOUD_STORAGE_BUCKET];
75
+ const supabaseJwtSecretKey = process.env[envVars_1.ENV_VAR_NAMES.SUPABASE_JWT_SECRET_KEY];
79
76
  return new FlowsPersistenceFactoryImpl(deploymentEnvironment, awsS3Bucket ? awsS3Bucket : null, awsS3Region ? awsS3Region : null, googleCloudStorageBucket ? googleCloudStorageBucket : null, supabaseJwtSecretKey ? supabaseJwtSecretKey : null, requestContextHolder);
80
77
  }
81
78
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"FlowsPersistenceFactoryImpl.js","sourceRoot":"","sources":["../../src/persistence/FlowsPersistenceFactoryImpl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FlowsPersistenceFactoryImpl.js","sourceRoot":"","sources":["../../src/persistence/FlowsPersistenceFactoryImpl.ts"],"names":[],"mappings":"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"}
package/dist/test.d.ts CHANGED
@@ -20,12 +20,14 @@ import { ScrollPageToolCoreParameters } from './tools/ScrollPageTool';
20
20
  import { SelectorBasedHoverOverElementToolParameters } from './tools/HoverOverElementTool';
21
21
  import { SelectorBasedClickToolParameters } from './tools/ClickTool';
22
22
  import { LanguageModel } from 'ai';
23
+ import { AssertPageTextToolCoreParameters } from './tools/AssertPageTextTool';
23
24
  /**
24
25
  * Extends the Page object with additional test-related methods.
25
26
  */
26
27
  interface DonobuExtendedPage extends Page {
27
28
  run(toolName: string, toolParams?: any): Promise<ToolCallResult>;
28
29
  analyzePageText(params: AnalyzePageTextToolCoreParameters): Promise<ToolCallResult>;
30
+ assertPageText(params: AssertPageTextToolCoreParameters): Promise<ToolCallResult>;
29
31
  chooseSelectOption(params: SelectorBasedChooseSelectOptionToolParameters): Promise<ToolCallResult>;
30
32
  clickElement(params: SelectorBasedClickToolParameters): Promise<ToolCallResult>;
31
33
  createCookieReport(): Promise<ToolCallResult>;
package/dist/test.js CHANGED
@@ -175,18 +175,20 @@ exports.test = test_1.test.extend({
175
175
  id: crypto_1.default.randomUUID(),
176
176
  name: testInfo.title,
177
177
  createdWithDonobuVersion: donobu.donobuVersion,
178
- initialBrowserState: null,
179
- persistBrowserState: null,
178
+ browser: {
179
+ using: {
180
+ type: 'device',
181
+ deviceName: 'Desktop Chromium',
182
+ headless: true,
183
+ },
184
+ },
180
185
  gptConfigName: null,
181
186
  hasGptConfigNameOverride: false,
182
187
  customTools: null,
183
188
  defaultToolTipDurationMilliseconds: 0,
184
189
  runMode: FlowMetadata_1.RunMode.DETERMINISTIC,
185
190
  isControlPanelEnabled: false,
186
- deviceName: null,
187
- remoteBrowserInstanceUrl: null,
188
191
  callbackUrl: null,
189
- headless: true,
190
192
  targetWebsite: 'https://example.com',
191
193
  overallObjective: null,
192
194
  allowedTools: [],
@@ -241,6 +243,9 @@ exports.test = test_1.test.extend({
241
243
  page.analyzePageText = async (params) => {
242
244
  return page.run('analyzePageText', params);
243
245
  };
246
+ page.assertPageText = async (params) => {
247
+ return page.run('assertPageText', params);
248
+ };
244
249
  page.chooseSelectOption = async (params) => {
245
250
  return page.run('chooseSelectOption', params);
246
251
  };
package/dist/test.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":"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"}