Commit Graph

7475 Commits

Author SHA1 Message Date
ShawnPana
24ec8e6696 address cubic 2025-10-30 20:05:32 -07:00
ShawnPana
c5a31c5ed4 Fix type errors: add Any import, INIT_TEMPLATES export, and update return types 2025-10-30 19:53:27 -07:00
shawn pana
69a3331af1 Merge branch 'main' into clean-template-system 2025-10-30 19:40:52 -07:00
ShawnPana
fd67e3b4dd Replace hardcoded template logic with manifest-driven system from template-library 2025-10-30 19:36:54 -07:00
ShawnPana
2431180fb5 Remove FALLBACK_TEMPLATES and make template system fully GitHub-dependent with graceful offline error handling 2025-10-30 19:27:03 -07:00
ShawnPana
944905554e Implement GitHub-based template system
- Remove local template files (advanced, default, tools)
- Fetch templates dynamically from template-library repo
- Add templates.json for dynamic template discovery
- Fetch both template list and content at runtime from GitHub
- Fall back to hardcoded FALLBACK_TEMPLATES for offline use
- Add binary file fetching support for PDFs and assets
- Enable instant template updates without code changes

Templates now managed in: https://github.com/browser-use/template-library

Benefits:
- Add new templates by editing template-library only
- Users get instant access without PyPI releases
- Cleaner separation of concerns
- No template files in main codebase
2025-10-30 19:15:51 -07:00
Magnus Müller
9ef0992f45 gitignore (#3485)
Auto-generated PR for: gitignore

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> <sup>[Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) is
generating a summary for commit
5b67d4b8e1. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
2025-10-30 15:50:48 -07:00
Magnus Müller
5b67d4b8e1 gitignore 2025-10-30 15:50:33 -07:00
Magnus Müller
1a25f5741f fix-scroll (#3481)
Auto-generated PR for branch: fix-scroll

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> Refines scrollable element interactivity to avoid conflicting
descendants and adds robust datepicker format metadata (including
AngularJS), plus minor write_file docs tweak.
> 
> - **DOM Serialization (serializer.py)**:
> - Refines interactive indexing: only mark scrollable containers as
interactive when they have no interactive descendants
(`_has_interactive_descendants` + new logic in
`_assign_interactive_indices_and_mark_new_nodes`).
> - Enhances date/time input metadata: detects AngularJS
`uib-datepicker-popup` and adds `expected_format` and `format`; expands
jQuery/Bootstrap detection; preserves key attributes by protecting them
from deduplication.
> - **DOM Views (views.py)**:
> - Exposes new synthetic attributes in `DEFAULT_INCLUDE_ATTRIBUTES`:
`format`, `expected_format`.
> - **Tools (service.py)**:
> - Clarifies `write_file` action description with allowed
filename/extension formats.
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
ea784626e6. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
2025-10-30 12:04:04 -07:00
Magnus Müller
ea784626e6 Merge branch 'fix-scroll' of https://github.com/browser-use/browser-use into fix-scroll 2025-10-30 11:56:07 -07:00
Magnus Müller
5a4ebf7fe4 Date fix 2025-10-30 11:56:04 -07:00
Magnus Müller
bece4707d2 alphanumeric file names 2025-10-30 11:51:13 -07:00
Magnus Müller
fddd1d83d3 Merge branch 'main' into fix-scroll 2025-10-30 11:32:58 -07:00
Magnus Müller
4f9ba966cb Expected date format + scroll container 2025-10-30 11:32:27 -07:00
Magnus Müller
89633783e2 fix-required (#3471)
Auto-generated PR for branch: fix-required

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> Captures auto-closed JS dialogs in browser_state, strengthens CDP
session resolution and form input (date/time, contenteditable), enriches
DOM serialization/attributes and tool UX, and switches CI eval to v8.
> 
> - **Browser/Runtime**:
> - Capture and surface auto-closed JavaScript dialog messages in
`browser_state` (`_closed_popup_messages`, wired via PopupsWatchdog and
DOMWatchdog).
> - More reliable CDP session selection for nodes (`cdp_client_for_node`
trusts `session_id`/`frame_id`/`target_id`), minor navigation wait and
logging tweaks.
> - **Actions/Interactions**:
> - Click/input handlers return structured `validation_error` instead of
raising for `<select>`/file inputs; improved focus/occlusion handling.
> - Text input: robust clear for `contenteditable`, direct value
assignment for date/time/month/week/color/range; better framework event
dispatch; dropdown selection event order refined.
> - **DOM Serialization/Attributes**:
> - Show file input selected filename; suppress misleading compound
parts for date/time; add explicit `format`/placeholders; keep
hidden-but-functional file inputs; improve select options preview and
value sourcing from AX.
> - Expanded default attributes (e.g., `accept`, `multiple`, input
masks, `contenteditable`).
> - **Agent/Errors/Logging**:
> - Clearer LLM output-format errors; toned-down/error-to-info logging
in several paths; success-only completion log.
> - **Tools API**:
> - Clearer action descriptions; screenshot uses `NoParamsAction`; click
handles `validation_error`; `select_dropdown` description updated.
> - **LLM (Google)**:
>   - Add 503 to retryable status codes (default and examples).
> - **CI**:
>   - Update eval workflow default `TEST_CASE` to `InteractionTasks_v8`.
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
4951002ae3. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
2025-10-30 11:20:04 -07:00
Magnus Müller
4951002ae3 Linter 2025-10-30 11:10:56 -07:00
Magnus Müller
7468ca2e3f Remove old method 2025-10-30 11:08:49 -07:00
Magnus Müller
66c2d7dd97 Output structure msg 2025-10-30 10:54:33 -07:00
Magnus Müller
0604bda9cf Write file desc 2025-10-30 10:37:31 -07:00
Magnus Müller
1467f35ac1 Improve file text 2025-10-30 10:36:51 -07:00
Magnus Müller
6a0b39c8f1 Fix date serilizer 2025-10-30 10:26:41 -07:00
Magnus Müller
cc89c37669 Include index desc for click 2025-10-30 10:13:49 -07:00
Magnus Müller
356183b4c5 Dropdown mesage 2025-10-30 10:11:32 -07:00
Magnus Müller
e5fb13d2ca Wait 1 s after navigation 2025-10-30 10:05:13 -07:00
Magnus Müller
22b0da2394 Serilizer fix 2025-10-30 10:01:44 -07:00
Magnus Müller
cfeef1d031 Update browser_use/dom/serializer/serializer.py
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2025-10-30 00:55:32 -07:00
Magnus Müller
438379aa7b Small fix 2025-10-30 00:47:24 -07:00
Magnus Müller
78beda65fb Revert "Set vision to true by default"
This reverts commit 62ad269975.
2025-10-30 00:44:53 -07:00
Magnus Müller
49cf6cd459 Session fix input breaks 2025-10-30 00:44:44 -07:00
Magnus Müller
fc0fa6f773 Logs 2025-10-30 00:35:05 -07:00
Magnus Müller
d93106fef6 Fix dropdown error 2025-10-30 00:29:43 -07:00
Magnus Müller
59c32a2585 File desc 2025-10-30 00:18:40 -07:00
Magnus Müller
f0c7e9787c Linter 2025-10-30 00:12:28 -07:00
Magnus Müller
79bdbb2e35 Logs 2025-10-30 00:10:45 -07:00
Magnus Müller
3d892612c5 Always get ax value 2025-10-30 00:10:36 -07:00
Magnus Müller
7a571f507f Logs 2025-10-30 00:09:57 -07:00
Magnus Müller
acac902a87 data-date-forma 2025-10-30 00:02:33 -07:00
Magnus Müller
a403116905 Logs 2025-10-29 23:53:41 -07:00
Magnus Müller
f8ca1ab3b4 Logs 2025-10-29 23:53:12 -07:00
Magnus Müller
6bfd8bb23c Clear input for other elements 2025-10-29 23:53:05 -07:00
Magnus Müller
ff9c300b49 Include '' if attr none 2025-10-29 23:41:37 -07:00
Magnus Müller
c4e69c2235 Add special handling for form elements in DOMTreeSerializer to prioritize current values from AX tree properties for inputs, textareas, and selects. 2025-10-29 23:36:28 -07:00
Magnus Müller
99dad56141 Run v8 2025-10-29 23:07:09 -07:00
Magnus Müller
af649d357a Retry 503 errors 2025-10-29 23:04:58 -07:00
Magnus Müller
b27d7fe9d2 Retry 503 errors 2025-10-29 23:02:06 -07:00
Magnus Müller
9cdd42f915 Improve dropdown 2025-10-29 22:55:05 -07:00
Magnus Müller
62ad269975 Set vision to true by default 2025-10-29 22:46:46 -07:00
Magnus Müller
07b41da192 Scroll to text 2025-10-29 22:43:34 -07:00
Magnus Müller
0badc5d4cc Date setting update 2025-10-29 21:49:03 -07:00
Magnus Müller
ec7bdbf802 Dropdown fix 2025-10-29 21:34:40 -07:00