browser-use 0.2.0 → 0.4.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 (259) hide show
  1. package/README.md +295 -686
  2. package/dist/actor/element.d.ts +19 -0
  3. package/dist/actor/element.js +46 -0
  4. package/dist/actor/index.d.ts +4 -0
  5. package/dist/actor/index.js +4 -0
  6. package/dist/actor/mouse.d.ts +19 -0
  7. package/dist/actor/mouse.js +39 -0
  8. package/dist/actor/page.d.ts +29 -0
  9. package/dist/actor/page.js +88 -0
  10. package/dist/actor/utils.d.ts +4 -0
  11. package/dist/actor/utils.js +35 -0
  12. package/dist/agent/cloud-events.d.ts +18 -0
  13. package/dist/agent/cloud-events.js +65 -2
  14. package/dist/agent/gif.d.ts +1 -0
  15. package/dist/agent/gif.js +24 -2
  16. package/dist/agent/judge.d.ts +17 -0
  17. package/dist/agent/judge.js +197 -0
  18. package/dist/agent/message-manager/service.d.ts +12 -4
  19. package/dist/agent/message-manager/service.js +205 -39
  20. package/dist/agent/message-manager/utils.js +0 -1
  21. package/dist/agent/message-manager/views.d.ts +4 -0
  22. package/dist/agent/message-manager/views.js +11 -7
  23. package/dist/agent/prompts.d.ts +24 -3
  24. package/dist/agent/prompts.js +274 -59
  25. package/dist/agent/service.d.ts +103 -41
  26. package/dist/agent/service.js +2336 -472
  27. package/dist/agent/variable-detector.d.ts +12 -0
  28. package/dist/agent/variable-detector.js +211 -0
  29. package/dist/agent/views.d.ts +237 -18
  30. package/dist/agent/views.js +446 -33
  31. package/dist/browser/cloud/cloud.d.ts +20 -0
  32. package/dist/browser/cloud/cloud.js +129 -0
  33. package/dist/browser/cloud/index.d.ts +2 -0
  34. package/dist/browser/cloud/index.js +2 -0
  35. package/dist/browser/cloud/views.d.ts +41 -0
  36. package/dist/browser/cloud/views.js +35 -0
  37. package/dist/browser/events.d.ts +345 -0
  38. package/dist/browser/events.js +566 -0
  39. package/dist/browser/extensions.js +17 -17
  40. package/dist/browser/index.d.ts +4 -0
  41. package/dist/browser/index.js +4 -0
  42. package/dist/browser/profile.d.ts +10 -4
  43. package/dist/browser/profile.js +79 -12
  44. package/dist/browser/session-manager.d.ts +85 -0
  45. package/dist/browser/session-manager.js +208 -0
  46. package/dist/browser/session.d.ts +105 -9
  47. package/dist/browser/session.js +1166 -95
  48. package/dist/browser/types.d.ts +153 -156
  49. package/dist/browser/views.d.ts +39 -0
  50. package/dist/browser/views.js +32 -0
  51. package/dist/browser/watchdogs/aboutblank-watchdog.d.ts +12 -0
  52. package/dist/browser/watchdogs/aboutblank-watchdog.js +131 -0
  53. package/dist/browser/watchdogs/base.d.ts +21 -0
  54. package/dist/browser/watchdogs/base.js +81 -0
  55. package/dist/browser/watchdogs/cdp-session-watchdog.d.ts +14 -0
  56. package/dist/browser/watchdogs/cdp-session-watchdog.js +177 -0
  57. package/dist/browser/watchdogs/crash-watchdog.d.ts +38 -0
  58. package/dist/browser/watchdogs/crash-watchdog.js +296 -0
  59. package/dist/browser/watchdogs/default-action-watchdog.d.ts +49 -0
  60. package/dist/browser/watchdogs/default-action-watchdog.js +212 -0
  61. package/dist/browser/watchdogs/dom-watchdog.d.ts +8 -0
  62. package/dist/browser/watchdogs/dom-watchdog.js +31 -0
  63. package/dist/browser/watchdogs/downloads-watchdog.d.ts +77 -0
  64. package/dist/browser/watchdogs/downloads-watchdog.js +409 -0
  65. package/dist/browser/watchdogs/har-recording-watchdog.d.ts +19 -0
  66. package/dist/browser/watchdogs/har-recording-watchdog.js +317 -0
  67. package/dist/browser/watchdogs/index.d.ts +15 -0
  68. package/dist/browser/watchdogs/index.js +15 -0
  69. package/dist/browser/watchdogs/local-browser-watchdog.d.ts +10 -0
  70. package/dist/browser/watchdogs/local-browser-watchdog.js +32 -0
  71. package/dist/browser/watchdogs/permissions-watchdog.d.ts +8 -0
  72. package/dist/browser/watchdogs/permissions-watchdog.js +73 -0
  73. package/dist/browser/watchdogs/popups-watchdog.d.ts +13 -0
  74. package/dist/browser/watchdogs/popups-watchdog.js +77 -0
  75. package/dist/browser/watchdogs/recording-watchdog.d.ts +27 -0
  76. package/dist/browser/watchdogs/recording-watchdog.js +249 -0
  77. package/dist/browser/watchdogs/screenshot-watchdog.d.ts +6 -0
  78. package/dist/browser/watchdogs/screenshot-watchdog.js +13 -0
  79. package/dist/browser/watchdogs/security-watchdog.d.ts +10 -0
  80. package/dist/browser/watchdogs/security-watchdog.js +84 -0
  81. package/dist/browser/watchdogs/storage-state-watchdog.d.ts +24 -0
  82. package/dist/browser/watchdogs/storage-state-watchdog.js +288 -0
  83. package/dist/cli.d.ts +7 -2
  84. package/dist/cli.js +182 -25
  85. package/dist/code-use/formatting.d.ts +3 -0
  86. package/dist/code-use/formatting.js +18 -0
  87. package/dist/code-use/index.d.ts +6 -0
  88. package/dist/code-use/index.js +6 -0
  89. package/dist/code-use/namespace.d.ts +5 -0
  90. package/dist/code-use/namespace.js +81 -0
  91. package/dist/code-use/notebook-export.d.ts +3 -0
  92. package/dist/code-use/notebook-export.js +56 -0
  93. package/dist/code-use/service.d.ts +24 -0
  94. package/dist/code-use/service.js +104 -0
  95. package/dist/code-use/utils.d.ts +4 -0
  96. package/dist/code-use/utils.js +98 -0
  97. package/dist/code-use/views.d.ts +108 -0
  98. package/dist/code-use/views.js +165 -0
  99. package/dist/config.d.ts +15 -0
  100. package/dist/config.js +109 -7
  101. package/dist/controller/registry/service.d.ts +10 -1
  102. package/dist/controller/registry/service.js +266 -10
  103. package/dist/controller/registry/views.d.ts +4 -1
  104. package/dist/controller/registry/views.js +25 -2
  105. package/dist/controller/service.d.ts +10 -1
  106. package/dist/controller/service.js +1814 -268
  107. package/dist/controller/views.d.ts +78 -155
  108. package/dist/controller/views.js +61 -12
  109. package/dist/dom/history-tree-processor/service.d.ts +5 -0
  110. package/dist/dom/history-tree-processor/service.js +169 -14
  111. package/dist/dom/history-tree-processor/view.d.ts +7 -1
  112. package/dist/dom/history-tree-processor/view.js +10 -1
  113. package/dist/dom/markdown-extractor.d.ts +37 -0
  114. package/dist/dom/markdown-extractor.js +345 -0
  115. package/dist/dom/service.d.ts +3 -1
  116. package/dist/dom/service.js +76 -0
  117. package/dist/dom/views.d.ts +1 -0
  118. package/dist/dom/views.js +45 -0
  119. package/dist/event-bus.d.ts +107 -7
  120. package/dist/event-bus.js +313 -10
  121. package/dist/exceptions.d.ts +0 -3
  122. package/dist/exceptions.js +0 -7
  123. package/dist/filesystem/file-system.d.ts +18 -0
  124. package/dist/filesystem/file-system.js +503 -42
  125. package/dist/index.d.ts +7 -0
  126. package/dist/index.js +6 -0
  127. package/dist/integrations/gmail/actions.d.ts +3 -3
  128. package/dist/integrations/gmail/actions.js +4 -4
  129. package/dist/llm/anthropic/chat.d.ts +18 -1
  130. package/dist/llm/anthropic/chat.js +123 -55
  131. package/dist/llm/anthropic/serializer.d.ts +2 -0
  132. package/dist/llm/anthropic/serializer.js +81 -9
  133. package/dist/llm/aws/chat-anthropic.d.ts +17 -0
  134. package/dist/llm/aws/chat-anthropic.js +126 -26
  135. package/dist/llm/aws/chat-bedrock.d.ts +28 -1
  136. package/dist/llm/aws/chat-bedrock.js +161 -34
  137. package/dist/llm/aws/serializer.d.ts +13 -1
  138. package/dist/llm/aws/serializer.js +56 -17
  139. package/dist/llm/azure/chat.d.ts +53 -2
  140. package/dist/llm/azure/chat.js +366 -54
  141. package/dist/llm/base.d.ts +2 -0
  142. package/dist/llm/browser-use/chat.d.ts +40 -0
  143. package/dist/llm/browser-use/chat.js +305 -0
  144. package/dist/llm/browser-use/index.d.ts +1 -0
  145. package/dist/llm/browser-use/index.js +1 -0
  146. package/dist/llm/cerebras/chat.d.ts +39 -0
  147. package/dist/llm/cerebras/chat.js +178 -0
  148. package/dist/llm/cerebras/index.d.ts +2 -0
  149. package/dist/llm/cerebras/index.js +2 -0
  150. package/dist/llm/cerebras/serializer.d.ts +7 -0
  151. package/dist/llm/cerebras/serializer.js +82 -0
  152. package/dist/llm/deepseek/chat.d.ts +19 -2
  153. package/dist/llm/deepseek/chat.js +138 -25
  154. package/dist/llm/google/chat.d.ts +46 -2
  155. package/dist/llm/google/chat.js +267 -64
  156. package/dist/llm/google/serializer.d.ts +9 -1
  157. package/dist/llm/google/serializer.js +141 -34
  158. package/dist/llm/groq/chat.d.ts +21 -2
  159. package/dist/llm/groq/chat.js +125 -26
  160. package/dist/llm/groq/parser.js +3 -1
  161. package/dist/llm/mistral/chat.d.ts +43 -0
  162. package/dist/llm/mistral/chat.js +154 -0
  163. package/dist/llm/mistral/index.d.ts +2 -0
  164. package/dist/llm/mistral/index.js +2 -0
  165. package/dist/llm/mistral/schema.d.ts +8 -0
  166. package/dist/llm/mistral/schema.js +27 -0
  167. package/dist/llm/models.d.ts +2 -0
  168. package/dist/llm/models.js +317 -0
  169. package/dist/llm/ollama/chat.d.ts +13 -1
  170. package/dist/llm/ollama/chat.js +110 -19
  171. package/dist/llm/ollama/serializer.d.ts +1 -0
  172. package/dist/llm/ollama/serializer.js +34 -12
  173. package/dist/llm/openai/chat.d.ts +16 -0
  174. package/dist/llm/openai/chat.js +94 -44
  175. package/dist/llm/openai/like.d.ts +5 -3
  176. package/dist/llm/openai/like.js +7 -3
  177. package/dist/llm/openai/responses-serializer.d.ts +18 -0
  178. package/dist/llm/openai/responses-serializer.js +72 -0
  179. package/dist/llm/openrouter/chat.d.ts +28 -2
  180. package/dist/llm/openrouter/chat.js +115 -29
  181. package/dist/llm/schema.d.ts +11 -1
  182. package/dist/llm/schema.js +109 -4
  183. package/dist/llm/vercel/chat.d.ts +50 -0
  184. package/dist/llm/vercel/chat.js +276 -0
  185. package/dist/llm/vercel/index.d.ts +1 -0
  186. package/dist/llm/vercel/index.js +1 -0
  187. package/dist/llm/vercel/serializer.d.ts +5 -0
  188. package/dist/llm/vercel/serializer.js +7 -0
  189. package/dist/llm/views.d.ts +2 -1
  190. package/dist/llm/views.js +3 -1
  191. package/dist/logging-config.d.ts +2 -0
  192. package/dist/logging-config.js +82 -29
  193. package/dist/mcp/client.d.ts +10 -5
  194. package/dist/mcp/client.js +14 -9
  195. package/dist/mcp/controller.d.ts +42 -3
  196. package/dist/mcp/controller.js +56 -31
  197. package/dist/mcp/server.d.ts +15 -0
  198. package/dist/mcp/server.js +261 -52
  199. package/dist/observability.js +10 -4
  200. package/dist/sandbox/index.d.ts +2 -0
  201. package/dist/sandbox/index.js +2 -0
  202. package/dist/sandbox/sandbox.d.ts +19 -0
  203. package/dist/sandbox/sandbox.js +140 -0
  204. package/dist/sandbox/views.d.ts +67 -0
  205. package/dist/sandbox/views.js +121 -0
  206. package/dist/skill-cli/index.d.ts +3 -0
  207. package/dist/skill-cli/index.js +3 -0
  208. package/dist/skill-cli/protocol.d.ts +30 -0
  209. package/dist/skill-cli/protocol.js +48 -0
  210. package/dist/skill-cli/server.d.ts +11 -0
  211. package/dist/skill-cli/server.js +85 -0
  212. package/dist/skill-cli/sessions.d.ts +24 -0
  213. package/dist/skill-cli/sessions.js +47 -0
  214. package/dist/skills/index.d.ts +3 -0
  215. package/dist/skills/index.js +3 -0
  216. package/dist/skills/service.d.ts +27 -0
  217. package/dist/skills/service.js +266 -0
  218. package/dist/skills/utils.d.ts +6 -0
  219. package/dist/skills/utils.js +53 -0
  220. package/dist/skills/views.d.ts +40 -0
  221. package/dist/skills/views.js +10 -0
  222. package/dist/sync/auth.js +8 -3
  223. package/dist/sync/service.d.ts +6 -6
  224. package/dist/sync/service.js +54 -89
  225. package/dist/telemetry/views.d.ts +20 -6
  226. package/dist/telemetry/views.js +23 -5
  227. package/dist/tokens/custom-pricing.d.ts +2 -0
  228. package/dist/tokens/custom-pricing.js +22 -0
  229. package/dist/tokens/index.d.ts +2 -0
  230. package/dist/tokens/index.js +2 -0
  231. package/dist/tokens/mappings.d.ts +1 -0
  232. package/dist/tokens/mappings.js +3 -0
  233. package/dist/tokens/service.js +27 -8
  234. package/dist/tools/extraction/index.d.ts +2 -0
  235. package/dist/tools/extraction/index.js +2 -0
  236. package/dist/tools/extraction/schema-utils.d.ts +6 -0
  237. package/dist/tools/extraction/schema-utils.js +237 -0
  238. package/dist/tools/extraction/views.d.ts +7 -0
  239. package/dist/tools/index.d.ts +5 -0
  240. package/dist/tools/index.js +5 -0
  241. package/dist/tools/registry/index.d.ts +2 -0
  242. package/dist/tools/registry/index.js +2 -0
  243. package/dist/tools/registry/service.d.ts +1 -0
  244. package/dist/tools/registry/service.js +1 -0
  245. package/dist/tools/registry/views.d.ts +1 -0
  246. package/dist/tools/registry/views.js +1 -0
  247. package/dist/tools/service.d.ts +2 -0
  248. package/dist/tools/service.js +1 -0
  249. package/dist/tools/utils.d.ts +2 -0
  250. package/dist/tools/utils.js +57 -0
  251. package/dist/tools/views.d.ts +1 -0
  252. package/dist/tools/views.js +1 -0
  253. package/dist/utils.d.ts +10 -1
  254. package/dist/utils.js +70 -3
  255. package/package.json +116 -49
  256. package/dist/dom/playground/process-dom.js +0 -5
  257. package/dist/dom/playground/test-accessibility.d.ts +0 -44
  258. package/dist/dom/playground/test-accessibility.js +0 -111
  259. /package/dist/{dom/playground/process-dom.d.ts → tools/extraction/views.js} +0 -0
@@ -9,10 +9,12 @@ import { BrowserSession } from '../browser/session.js';
9
9
  import { BrowserProfile } from '../browser/profile.js';
10
10
  import type { Browser, BrowserContext, Page } from '../browser/types.js';
11
11
  import type { BaseChatModel } from '../llm/base.js';
12
- import { ActionResult, AgentHistoryList, AgentOutput, AgentSettings, AgentState, AgentStepInfo, ActionModel } from './views.js';
12
+ import { ContentPartImageParam, ContentPartTextParam } from '../llm/messages.js';
13
+ import { ActionResult, AgentHistoryList, AgentOutput, AgentSettings, AgentState, AgentStepInfo, ActionModel, DetectedVariable, MessageCompactionSettings } from './views.js';
13
14
  import type { StructuredOutputParser } from './views.js';
14
15
  import { ScreenshotService } from '../screenshots/service.js';
15
16
  import { ProductTelemetry } from '../telemetry/service.js';
17
+ import { type SkillService } from '../skills/index.js';
16
18
  export declare const log_response: (response: AgentOutput, registry?: Controller<any>, logInstance?: import("../logging-config.js").Logger) => void;
17
19
  type ControllerContext = unknown;
18
20
  type AgentHookFunc<Context, AgentStructuredOutput> = (agent: Agent<Context, AgentStructuredOutput>) => Promise<void> | void;
@@ -20,44 +22,61 @@ interface RerunHistoryOptions {
20
22
  max_retries?: number;
21
23
  skip_failures?: boolean;
22
24
  delay_between_actions?: number;
25
+ max_step_interval?: number;
26
+ wait_for_elements?: boolean;
27
+ summary_llm?: BaseChatModel | null;
28
+ ai_step_llm?: BaseChatModel | null;
23
29
  signal?: AbortSignal | null;
24
30
  }
31
+ interface LoadAndRerunOptions extends RerunHistoryOptions {
32
+ variables?: Record<string, string> | null;
33
+ }
25
34
  interface AgentConstructorParams<Context, AgentStructuredOutput> {
26
35
  task: string;
27
- llm: BaseChatModel;
36
+ llm?: BaseChatModel | null;
28
37
  page?: Page | null;
29
38
  browser?: Browser | BrowserSession | null;
30
39
  browser_context?: BrowserContext | null;
31
40
  browser_profile?: BrowserProfile | null;
32
41
  browser_session?: BrowserSession | null;
42
+ tools?: Controller<Context> | null;
33
43
  controller?: Controller<Context> | null;
34
44
  sensitive_data?: Record<string, string | Record<string, string>> | null;
35
45
  initial_actions?: Array<Record<string, Record<string, unknown>>> | null;
46
+ directly_open_url?: boolean;
36
47
  register_new_step_callback?: ((summary: BrowserStateSummary, output: AgentOutput, step: number) => void | Promise<void>) | null;
37
48
  register_done_callback?: ((history: AgentHistoryList<AgentStructuredOutput>) => void | Promise<void>) | null;
49
+ register_should_stop_callback?: (() => Promise<boolean>) | null;
38
50
  register_external_agent_status_raise_error_callback?: (() => Promise<boolean>) | null;
39
51
  output_model_schema?: StructuredOutputParser<AgentStructuredOutput> | null;
40
- use_vision?: boolean;
41
- use_vision_for_planner?: boolean;
52
+ extraction_schema?: Record<string, unknown> | null;
53
+ use_vision?: boolean | 'auto';
54
+ include_recent_events?: boolean;
55
+ sample_images?: Array<ContentPartTextParam | ContentPartImageParam> | null;
56
+ llm_screenshot_size?: [number, number] | null;
42
57
  save_conversation_path?: string | null;
43
58
  save_conversation_path_encoding?: BufferEncoding | null;
44
59
  max_failures?: number;
45
- retry_delay?: number;
46
60
  override_system_message?: string | null;
47
61
  extend_system_message?: string | null;
48
- validate_output?: boolean;
49
62
  generate_gif?: boolean | string;
50
63
  available_file_paths?: string[] | null;
51
64
  include_attributes?: string[];
52
65
  max_actions_per_step?: number;
53
66
  use_thinking?: boolean;
54
67
  flash_mode?: boolean;
68
+ use_judge?: boolean;
69
+ ground_truth?: string | null;
55
70
  max_history_items?: number | null;
56
71
  page_extraction_llm?: BaseChatModel | null;
57
- planner_llm?: BaseChatModel | null;
58
- planner_interval?: number;
59
- is_planner_reasoning?: boolean;
60
- extend_planner_system_message?: string | null;
72
+ fallback_llm?: BaseChatModel | null;
73
+ judge_llm?: BaseChatModel | null;
74
+ skill_ids?: Array<string | '*'> | null;
75
+ skills?: Array<string | '*'> | null;
76
+ skill_service?: SkillService | null;
77
+ enable_planning?: boolean;
78
+ planning_replan_on_stall?: number;
79
+ planning_exploration_limit?: number;
61
80
  injected_agent_state?: AgentState | null;
62
81
  context?: Context | null;
63
82
  source?: string | null;
@@ -69,19 +88,26 @@ interface AgentConstructorParams<Context, AgentStructuredOutput> {
69
88
  include_tool_call_examples?: boolean;
70
89
  vision_detail_level?: AgentSettings['vision_detail_level'];
71
90
  session_attachment_mode?: AgentSettings['session_attachment_mode'];
72
- allow_insecure_sensitive_data?: boolean;
73
- llm_timeout?: number;
91
+ llm_timeout?: number | null;
74
92
  step_timeout?: number;
93
+ final_response_after_failure?: boolean;
94
+ message_compaction?: MessageCompactionSettings | boolean | null;
95
+ loop_detection_window?: number;
96
+ loop_detection_enabled?: boolean;
97
+ _url_shortening_limit?: number;
75
98
  }
76
99
  export declare class Agent<Context = ControllerContext, AgentStructuredOutput = unknown> {
77
100
  private static _sharedSessionStepLocks;
78
101
  static DEFAULT_AGENT_DATA_DIR: string;
79
102
  browser_session: BrowserSession | null;
80
103
  llm: BaseChatModel;
104
+ judge_llm: BaseChatModel;
81
105
  unfiltered_actions: string;
82
106
  initial_actions: Array<Record<string, Record<string, unknown>>> | null;
107
+ initial_url: string | null;
83
108
  register_new_step_callback: AgentConstructorParams<Context, AgentStructuredOutput>['register_new_step_callback'];
84
109
  register_done_callback: AgentConstructorParams<Context, AgentStructuredOutput>['register_done_callback'];
110
+ register_should_stop_callback: AgentConstructorParams<Context, AgentStructuredOutput>['register_should_stop_callback'];
85
111
  register_external_agent_status_raise_error_callback: AgentConstructorParams<Context, AgentStructuredOutput>['register_external_agent_status_raise_error_callback'];
86
112
  context: Context | null;
87
113
  telemetry: ProductTelemetry;
@@ -102,6 +128,7 @@ export declare class Agent<Context = ControllerContext, AgentStructuredOutput =
102
128
  promise: Promise<void>;
103
129
  };
104
130
  output_model_schema: StructuredOutputParser<AgentStructuredOutput> | null;
131
+ extraction_schema: Record<string, unknown> | null;
105
132
  id: string;
106
133
  task_id: string;
107
134
  session_id: string;
@@ -129,8 +156,16 @@ export declare class Agent<Context = ControllerContext, AgentStructuredOutput =
129
156
  AgentOutput: typeof AgentOutput;
130
157
  DoneActionModel: typeof ActionModel;
131
158
  DoneAgentOutput: typeof AgentOutput;
159
+ private _fallback_llm;
160
+ private _using_fallback_llm;
161
+ private _original_llm;
162
+ private _url_shortening_limit;
163
+ private skill_service;
164
+ private _skills_registered;
132
165
  constructor(params: AgentConstructorParams<Context, AgentStructuredOutput>);
166
+ private _normalizeMessageCompactionSetting;
133
167
  private _createSessionIdWithAgentSuffix;
168
+ private _buildEventBusName;
134
169
  private _copyBrowserProfile;
135
170
  private _getBrowserContextFromPage;
136
171
  private _claim_or_isolate_browser_session;
@@ -142,7 +177,6 @@ export declare class Agent<Context = ControllerContext, AgentStructuredOutput =
142
177
  private _run_with_shared_session_step_lock;
143
178
  private _cleanup_shared_session_step_lock_if_unused;
144
179
  private _init_browser_session;
145
- private _sleep_blocking;
146
180
  /**
147
181
  * Convert dictionary-based actions to ActionModel instances
148
182
  */
@@ -178,10 +212,18 @@ export declare class Agent<Context = ControllerContext, AgentStructuredOutput =
178
212
  * Get the browser profile from the browser session
179
213
  */
180
214
  get browserProfile(): BrowserProfile;
215
+ get is_using_fallback_llm(): boolean;
216
+ get current_llm_model(): string;
181
217
  /**
182
218
  * Add a new task to the agent, keeping the same task_id as tasks are continuous
183
219
  */
184
220
  addNewTask(newTask: string): void;
221
+ private _enhanceTaskWithSchema;
222
+ private _getOutputModelSchemaPayload;
223
+ private _getToolsOutputModelSchema;
224
+ private _getOutputModelSchemaName;
225
+ private _resolveStructuredOutputActionSchema;
226
+ private _extract_start_url;
185
227
  /**
186
228
  * Take a step and return whether the task is done and valid
187
229
  * @returns Tuple of [is_done, is_valid]
@@ -201,15 +243,19 @@ export declare class Agent<Context = ControllerContext, AgentStructuredOutput =
201
243
  * Initially only include actions with no filters
202
244
  */
203
245
  private _setup_action_models;
246
+ private _register_skills_as_actions;
247
+ private _get_unavailable_skills_info;
204
248
  /**
205
249
  * Update action models with page-specific actions
206
250
  * Called during each step to filter actions based on current page context
207
251
  */
208
252
  private _updateActionModelsForPage;
253
+ private _execute_initial_actions;
209
254
  run(max_steps?: number, on_step_start?: AgentHookFunc<Context, AgentStructuredOutput> | null, on_step_end?: AgentHookFunc<Context, AgentStructuredOutput> | null): Promise<AgentHistoryList<AgentStructuredOutput>>;
210
255
  private _executeWithTimeout;
211
256
  _step(step_info?: AgentStepInfo | null, signal?: AbortSignal | null): Promise<void>;
212
257
  private _prepare_context;
258
+ private _maybe_compact_messages;
213
259
  private _storeScreenshotForStep;
214
260
  private _get_next_action;
215
261
  private _execute_actions;
@@ -218,15 +264,32 @@ export declare class Agent<Context = ControllerContext, AgentStructuredOutput =
218
264
  check_for_new_elements?: boolean;
219
265
  signal?: AbortSignal | null;
220
266
  }): Promise<ActionResult[]>;
267
+ private _generate_rerun_summary;
268
+ private _execute_ai_step;
221
269
  rerun_history(history: AgentHistoryList, options?: RerunHistoryOptions): Promise<ActionResult[]>;
222
270
  private _execute_history_step;
271
+ private _historyStepNeedsElementMatching;
272
+ private _countExpectedElementsFromHistory;
273
+ private _waitForMinimumElements;
274
+ private _extractActionIndex;
275
+ private _extractActionType;
276
+ private _sameHistoryElement;
277
+ private _is_redundant_retry_step;
278
+ private _is_menu_opener_step;
279
+ private _is_menu_item_element;
280
+ private _reexecute_menu_opener;
281
+ private _formatHistoryElementForError;
223
282
  private _update_action_indices;
224
- load_and_rerun(history_file?: string | null, options?: RerunHistoryOptions): Promise<ActionResult[]>;
283
+ load_and_rerun(history_file?: string | null, options?: LoadAndRerunOptions): Promise<ActionResult[]>;
284
+ detect_variables(): Record<string, DetectedVariable>;
225
285
  save_history(file_path?: string | null): void;
226
286
  private _coerceHistoryElement;
287
+ private _substitute_variables_in_history;
288
+ private _clone_history_for_substitution;
227
289
  private _createAbortError;
228
290
  private _throwIfAborted;
229
291
  private _relayAbortSignal;
292
+ private _formatDelaySeconds;
230
293
  private _sleep;
231
294
  wait_until_resumed(): Promise<void>;
232
295
  log_completion(): Promise<void>;
@@ -243,46 +306,45 @@ export declare class Agent<Context = ControllerContext, AgentStructuredOutput =
243
306
  trace_details: Record<string, any>;
244
307
  };
245
308
  private _log_agent_run;
309
+ private _createInterruptedError;
246
310
  private _raise_if_stopped_or_paused;
247
311
  private _handle_post_llm_processing;
248
- /**
249
- * Handle all types of errors that can occur during a step
250
- * Implements comprehensive error categorization with:
251
- * - Validation error hints
252
- * - Rate limit auto-retry
253
- * - Parse error guidance
254
- * - Token limit warnings
255
- * - Network error detection
256
- * - Browser error handling
257
- * - LLM-specific errors
258
- */
312
+ /** Handle all types of errors that can occur during a step (python c011 parity). */
259
313
  private _handle_step_error;
260
- /**
261
- * Check if an error is a network error
262
- */
263
- private _isNetworkError;
264
- /**
265
- * Check if an error is a browser/Playwright error
266
- */
267
- private _isBrowserError;
268
- /**
269
- * Check if an error is a timeout error
270
- */
271
- private _isTimeoutError;
272
- /**
273
- * Check if an error is a rate limit error from various LLM providers
274
- */
275
- private _isRateLimitError;
276
314
  private _finalize;
277
315
  private _handle_final_step;
316
+ private _max_total_failures;
317
+ private _handle_failure_limit_recovery;
318
+ private _update_plan_from_model_output;
319
+ private _render_plan_description;
320
+ private _inject_replan_nudge;
321
+ private _inject_exploration_nudge;
322
+ private _inject_loop_detection_nudge;
323
+ private _update_loop_detector_actions;
324
+ private _update_loop_detector_page_state;
325
+ private _inject_budget_warning;
326
+ private _run_simple_judge;
327
+ private _judge_trace;
328
+ private _judge_and_log;
329
+ private _replace_urls_in_text;
330
+ private _process_messages_and_replace_long_urls_shorter_ones;
331
+ private _replace_shortened_urls_in_string;
332
+ private _replace_shortened_urls_in_value;
278
333
  private _parseCompletionPayload;
279
334
  private _isModelActionMissing;
335
+ private _getOutputActionNames;
336
+ private _toStrictActionParamSchema;
337
+ private _buildActionOutputSchema;
338
+ private _buildLlmOutputFormat;
280
339
  private _get_model_output_with_retry;
340
+ private _try_switch_to_fallback_llm;
341
+ private _log_fallback_switch;
281
342
  private _validateAndNormalizeActions;
282
343
  private _update_action_models_for_page;
283
344
  private _check_and_update_downloads;
284
345
  private _update_available_file_paths;
285
346
  private _log_step_context;
347
+ private _log_first_step_startup;
286
348
  private _log_step_completion_summary;
287
349
  private _log_agent_event;
288
350
  private _make_history_item;