Commit Graph

331 Commits

Author SHA1 Message Date
Daniel T.
539274a7d4 Updates scroll functionality to use page units
Replaces pixel-based scrolling with page unit determination, allowing for more intuitive scroll actions by specifying the number of pages. Adjusts related documentation, examples, and tests to reflect this change for improved code consistency and user experience.
2025-07-07 18:21:37 +02:00
Daniel T.
b5d0d6577c Handles params conflict in action model creation
Removes special parameters from params to avoid
double keyword argument conflicts by utilizing
a separate special_context mechanism. This ensures
only essential parameters are validated in the Pydantic
action model, enhancing robustness and readability.
2025-07-07 18:00:04 +02:00
Daniel T.
a6dc763f82 Removes redundant whitespace in action result
Streamlines code by eliminating unnecessary line
breaks in action result construction for clarity.
2025-07-07 17:39:06 +02:00
Daniel T.
eb7c7fa2bc Enhances scroll action testing
Removes unnecessary Field description in ScrollAction to streamline code.

Implements additional test cases for varying scroll amounts, improving test coverage and validation of scrolling behavior in the integration tests.
2025-07-07 17:34:57 +02:00
Daniel T.
610419c9d7 Enhances scroll functionality with pixel control
Introduces ability to scroll by a specific number of pixels
via a new 'amount' parameter, defaulting to one page height
if unspecified. Updates relevant documentation and examples
to reflect these changes, enhancing navigation precision.

Improves user experience by allowing finer control over page
scrolling actions.

Relates to user feedback on scroll improvements.
2025-07-07 17:19:59 +02:00
mertunsall
daf1754d58 move tests 2025-07-07 13:43:03 +02:00
AI Christianson
a5e3634900 Fix linter errors. 2025-07-06 17:32:04 -04:00
AI Christianson
8430f21cf6 Fix linter errors. 2025-07-06 17:28:41 -04:00
AI Christianson
051054decd Fix bug where schema optimizer was stripping the title field from our output schema. 2025-07-06 17:28:41 -04:00
Magnus Müller
d4576bb128 Update browser_use/controller/service.py
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2025-07-06 21:18:46 +02:00
Magnus Müller
78be7f9a8e update extract_structured_data description 2025-07-06 21:14:45 +02:00
mertunsall
550a2a2552 feat: enhance file handling capabilities with JSON and CSV support
- Added new file types: JsonFile and CsvFile to the file system.
- Updated read_file method to handle external files with .json and .csv extensions.
- Modified write_file action to allow .json and .csv file extensions in addition to .md and .txt.
- Introduced pypdf dependency for PDF file handling.

This update improves the flexibility of file operations within the application.
2025-07-05 01:36:04 +02:00
Cursor Agent
ee2c1d2ad0 Remove optional xpath from ClickElementAction model
Co-authored-by: mailmertunsal <mailmertunsal@gmail.com>
2025-07-02 07:43:21 +00:00
Cursor Agent
c24d5b4320 Remove optional xpath parameter from InputTextAction model
Co-authored-by: mamagnus00 <mamagnus00@gmail.com>
2025-07-01 21:51:05 +00:00
mertunsall
ef30980fe9 add extract_links to structured data 2025-07-01 10:34:23 +02:00
mertunsall
649b2d5277 Refactor URL navigation and scrolling actions
- Updated GoToUrlAction to include a new_tab parameter for opening URLs in a new tab or navigating in the current tab.
- Removed the OpenTabAction as its functionality is now integrated into GoToUrlAction.
- Enhanced scroll action to allow scrolling up or down based on a boolean parameter.
- Cleaned up commented-out code related to accessibility tree retrieval for better readability.
2025-06-29 22:48:40 +02:00
mertunsall
dd0f65b956 Merge branch 'main' into mert/remove_save_pdf 2025-06-29 21:57:41 +02:00
mertunsall
e9b8cfb9f7 remove the default save_pdf option 2025-06-29 21:51:56 +02:00
mertunsall
640d1a15fe Add upload file action 2025-06-29 21:36:15 +02:00
Gregor Žunič
184fa8efb7 tests for schema generator 2025-06-29 18:09:25 +02:00
Gregor Žunič
48ae2d19cf much better structured output + utils for generating pydantic schema 2025-06-29 17:42:19 +02:00
Gregor Žunič
0691500c6a wip 2025-06-29 16:22:19 +02:00
Magnus Müller
37cdaa0fee Clarify purpose of model_rebuild() in ExtendedOutputModel for eval service 2025-06-28 22:45:18 +02:00
Cursor Agent
bf9ca5baad Fix ExtendedOutputModel schema validation by adding model_rebuild()
Co-authored-by: mamagnus00 <mamagnus00@gmail.com>
2025-06-28 19:52:57 +00:00
Gregor Žunič
5d9fca7c4b optimized schema for all models 2025-06-28 09:28:54 +02:00
Gregor Žunič
8635ccbdec implemented proper functions for reducing token count in json schema 2025-06-27 23:40:59 +02:00
Gregor Žunič
ea00a9ebee removed drag and drop from default controller, moved to example 2025-06-27 23:20:34 +02:00
Gregor Žunič
11cef6eb1c wip 2025-06-27 23:02:21 +02:00
mertunsall
7f8d935000 Files are displayed by default in done text 2025-06-27 14:01:33 +02:00
Magnus Müller
03893b8adf Update comment to 40000 in service.py 2025-06-26 17:16:43 +02:00
Magnus Müller
4844bd048f Set default parameter - no memory, actions per step 10, and extraction input size 2025-06-26 17:08:15 +02:00
Magnus Müller
54736224eb Remove unused controller telemetry functionality
- Remove ControllerRegisteredFunctionsTelemetryEvent and RegisteredFunction classes
- Remove telemetry capture call from controller registry service
- Clean up unused imports in telemetry module
- Simplify telemetry __all__ exports

This removes dead code that was capturing registered function telemetry
data but wasn't being used anywhere in the application.
2025-06-26 15:06:17 +02:00
mertunsall
47b2b7f2fa fix more 2025-06-26 01:02:50 +02:00
mertunsall
6b4953e922 rewrite file system 2025-06-26 00:41:56 +02:00
Gregor Žunič
1e93ca5a9f fixed UnionType type error 2025-06-25 11:13:42 +02:00
Gregor Žunič
cda43e9573 fixed types 2025-06-25 11:06:38 +02:00
Gregor Žunič
5d55435491 fixed controller registry types 2025-06-25 10:52:38 +02:00
Magnus Müller
7cf9667127 Enhance ActionModelUnion to maintain interface and delegate methods
Refactors the ActionModelUnion class to ensure it properly maintains the ActionModel interface by delegating methods like get_index, set_index, and model_dump to the underlying action model. This improves the usability and consistency of the union type in handling action models.
2025-06-24 23:21:18 +02:00
Magnus Müller
f138b522cc Fix output model for openai 2025-06-24 23:08:06 +02:00
Mert Unsal
92ec19de0d Merge branch 'main' into fix/input-detection-logic 2025-06-24 20:00:00 +02:00
Daniel T.
72fe90377f Enhances null handling in file input check
Prevents NoneType error by adding a null check before assessing
if an element is a file input, ensuring robust functionality in
file upload checks.
2025-06-24 19:28:34 +02:00
Daniel Tremer
9bb69bd3d4 Update browser_use/controller/service.py
Co-authored-by: Mert Unsal <mertunsal1905@gmail.com>
2025-06-24 14:46:41 +02:00
Daniel T.
18452798f8 Improves file input detection logic
Refines the conditional check for identifying file input elements
to enhance accuracy by reorganizing the code logic for better
readability and maintainability.
2025-06-24 13:11:22 +02:00
Daniel T.
bf4887bb26 Refines file input detection logic
Enhances logic to accurately identify file input elements by
checking element's tag and type attributes, reducing false
positives in file upload detection.
2025-06-24 13:06:19 +02:00
Gregor Žunič
1a807d1d5d Merge branch 'main' into feature/squashed-langchain-to-native 2025-06-24 12:35:06 +02:00
Gregor Žunič
7a10ae0c96 Squashed commit langchain to native 2025-06-24 12:26:55 +02:00
mertunsall
4158611b2b fix 2025-06-24 11:12:58 +02:00
mertunsall
3ff2443c9a update emoji in extracted_content 2025-06-24 10:59:07 +02:00
Mert Unsal
6e1a2172db Merge branch 'main' into mert/click_download 2025-06-24 10:49:03 +02:00
mertunsall
d92a960983 fix download memory in clicking 2025-06-24 10:42:41 +02:00