This description was created by Ellipsis for commit eaea7eb88c9ff8866f263f4bd6caa43b58166c63
Summary:
Enhanced custom selection functionality with incremental DOM scraping and LLM-based element matching across multiple files.
Key points:
Configuration Updates: Added OPTION_LOADING_TIMEOUT_MS and SECONDARY_LLM_KEY in skyvern/config.py.
New Exceptions: Introduced NoIncrementalElementFoundForCustomSelection, NoLabelOrValueForCustomSelection, NoElementMatchedForTargetOption, and NoElementBoudingBox in skyvern/exceptions.py.
LLM Handler: Added SECONDARY_LLM_API_HANDLER in skyvern/forge/app.py.
Prompts: Added custom-select.j2 and opened-dropdown-confirm.j2 templates for LLM prompts.
Action Handlers: Enhanced handle_select_option_action in skyvern/webeye/actions/handler.py to support custom selection using incremental DOM scraping and LLM-based element matching.
DOM Utilities: Updated isInteractable and added isScrollable in skyvern/webeye/scraper/domUtils.js.
Scraper Enhancements: Introduced IncrementalScrapePage class for incremental DOM scraping in skyvern/webeye/scraper/scraper.py.
Element Interaction: Added methods for incremental element creation and interaction in skyvern/webeye/utils/dom.py.
Scrolling Utilities: Added methods for scrolling within elements in skyvern/webeye/utils/page.py.
Summary:
Enhanced custom selection functionality with incremental DOM scraping and LLM-based element matching across multiple files.
Key points:
OPTION_LOADING_TIMEOUT_MS
andSECONDARY_LLM_KEY
inskyvern/config.py
.NoIncrementalElementFoundForCustomSelection
,NoLabelOrValueForCustomSelection
,NoElementMatchedForTargetOption
, andNoElementBoudingBox
inskyvern/exceptions.py
.SECONDARY_LLM_API_HANDLER
inskyvern/forge/app.py
.custom-select.j2
andopened-dropdown-confirm.j2
templates for LLM prompts.handle_select_option_action
inskyvern/webeye/actions/handler.py
to support custom selection using incremental DOM scraping and LLM-based element matching.isInteractable
and addedisScrollable
inskyvern/webeye/scraper/domUtils.js
.IncrementalScrapePage
class for incremental DOM scraping inskyvern/webeye/scraper/scraper.py
.skyvern/webeye/utils/dom.py
.skyvern/webeye/utils/page.py
.Generated with :heart: by ellipsis.dev