* feat(web-integration): support user expected xpath option for locate methods
* docs(site): xpath option for api
* fix(ci): nx config
* docs(site): update docs
* feat(cli): support dotenv-override argv for cli
* feat(cli): support dotenv-debug argv for cli
* docs(core): update doc of dotenv
---------
Co-authored-by: yutao <yutao.tao@bytedance.com>
* feat(web-integration): support logScreenshot api for agent
* docs(core): update api description
* docs(site): fix error
* feat(web-integration): title is also optional
* docs(site): fix
---------
Co-authored-by: yutao <yutao.tao@bytedance.com>
* fix(android): modify automatically closing the keyboard after typed text (#793)
* fix(android): modify automatically closing the keyboard after typed text
* fix(android): rename to autoDismissKeyboard
* feat(android): support autoDismissKeyboard option for aiInput
* docs(core): update doc
* refactor(android): agent no need support autoDismissKeyboard parameter
* refactor(android): build parameter in build plan
* chore(core): update android docs
---------
Co-authored-by: welkang <welkang@qq.com>
Co-authored-by: yutao <yutao.tao@bytedance.com>
* feat(android): support custom host and port of adb
* feat(android): add options for custom ADB path, host, and port in AndroidDevice constructor
* docs(android): custom remote host and port for adb
* fix(core): fix planning test
* fix(report): report insight view
* chore(core): rename workflow
* fix(core): report replay scripts
* fix(core): test case
* docs(core): update api doc for ui-tars
* chore(core): fix test case
* feat(web-integration): support full xpath for cache
* refactor(web-integration): simplify getElementXPath to improve clarity and performance
* feat(web-integration): add support for 'A' node type and related extraction logic
* feat(web-integration): merge children rects of button
* feat(web-integration): enhance caching documentation and tests
* test(web-integration): update snapshot
* docs(core): update caching
---------
Co-authored-by: yutao <yutao.tao@bytedance.com>
* feat(web-integration): support disable cache for a single api call
* feat(workflow): version mismatch
* feat(web-integration): cache rename to cacheable
* feat(web-integration): add cacheable option to multiple API methods and update caching documentation
* docs(site): update cacheable option descriptions to reference caching feature documentation
* docs(core): update caching doc
---------
Co-authored-by: yutao <yutao.tao@bytedance.com>
* docs(llm): add doubao-1.5-vl-pro model
* docs(site): move model comparison to choose a model doc
* docs(core): update doubao model
---------
Co-authored-by: yutao <yutao.tao@bytedance.com>
* feat(web-integration): use xpath for cache instead of id
* feat(web-integration): enhance TaskCache to support xpaths for cache matching and add new test cases
* feat(web-integration): add debug log for unknown page types in TaskCache
* feat(web-integration): update caching logic and cache hit conditions for Plan and Locate tasks
* chore(core): update debug log
* feat(web-integration): update rspress.config and enhance TaskCache structure with new properties
* feat(web-integration): recalculate id when hit cache
* fix(web-integration): update mock implementation in task-cache test to use evaluate method
* feat(web-integration): enhance element caching by adding XPath support and improving cache hit logic
* chore(core): lint
* feat(web-integration): improve XPath handling in web-extractor
* test(web-integration): fix tests
* feat(core, web-integration): add attributes to LocateResultElement and enhance element handling
* fix(core): lint
* feat(web-integration): add midsceneVersion to TaskCache and update cache validation logic
* fix(core): test
* fix(web-integration): update cache validation logic to prevent reading outdated midscene cache files
* feat(web-integration): enhance TaskCache to track used cache items and improve cache retrieval logic
* fix(core): xpath logic (#710)
* feat(core): resue context for locate
* feat(core): build yamlFlow from aiAction
* feat(core): refine task-cache
* feat(core): update cache
* feat(core): refine task-cache
* feat(core): refine task-cache
* feat(core): remove unused checkElementExistsByXPath
* feat(core): use yaml file as cache
* chore(core): fix lint
* chore(core): print warning for previous cache
* refactor(core): remove quickAnswer references and improve element matching logic
* fix(core): update import path for buildYamlFlowFromPlans
* chore(web-integration): update output image and skip task error test
* fix(web-integration): update test snapshots to handle beta versions
* fix(web-integration): adjust test snapshots for version consistency
* fix(web-integration): track original cache length and adjust matching logic in tests
* fix(web-integration): update test URLs to reflect new target site and enable previously skipped test
* chore(core): update cache docs
* fix(core): test
* feat(core): try to match element from plan
* fix(web-integration): cache id stable when retry in palywright
* fix(web-integration): typo
* style(web-integration): lint
* fix(web-integration): stable cacheid in tests
* fix(web-integration): cache id
---------
Co-authored-by: quanruzhuoxiu <quanruzhuoxiu@gmail.com>
* docs(site): blog: Key to Automation Stability: Programming Practices Using Structured API
* docs(core): update blog
* docs(site): add blog post on optimizing automation code with structured API
---------
Co-authored-by: zhouxiao.shaw <zhouxiao.shaw@bytedance.com>
Co-authored-by: yutao <yutao.tao@bytedance.com>
* docs(site): update timeout parameters in API to include options for disabling timeouts
* docs(core): update docs for timeout
---------
Co-authored-by: yutao <yutao.tao@bytedance.com>
* feat(web-integration): add support for new agent method(aiBoolean, aiString, aiNumber, aiLocate)
* fix(core, web-integration): update data extraction logic and refine return types for agent methods
* feat(site): add detailed descriptions and examples
* fix(web-integration): remove unused properties from aiLocate return type and update UI titles
* fix(core): enhance agent methods for better extraction and querying
* fix(core): update test scripts and refine data extraction prompts
* fix(core): refine return type in ExecutionTaskApply and remove unused import in inspect
* fix(core): update data extraction logic and enhance type handling in Insight class
* fix(web-integration): update import path for puppeteerAgentForTarget in player test file
* fix(core): tests fix
* fix(core): fix tests
* fix(shared): enhance imageInfo tests by validating individual properties and updating snapshots
* fix(site): remove waitForNavigationTimeout from Playwright integration examples
* fix(site): update timeout configuration examples in FAQ for clarity
* test(web-integration): remove unused client-extractor test and related snapshots
* chore(core): fix query implementation
* fix(report): improve data handling in DetailSide component and enhance output display
* fix(core): refine data extraction prompts and improve error handling in PageTaskExecutor
* fix(core): update data extraction prompt for clarity and type validation
---------
Co-authored-by: yutao <yutao.tao@bytedance.com>
* feat(core): support custom midscene_run dir
* feat(report): add search functionality to PlaywrightCaseSelector component
* refactor(shared): simplify base directory resolution and remove unused environment variable
* feat(shared): integrate shared environment variables across multiple packages
* refactor(shared): update base directory resolution to use dynamic midscene_run directory
* fix(puppeteer): increase screenshot timeout from 3s to 10s for improved reliability
* feat(playwright): enhance report filename generation with unique identifiers and support split mode
* fix(playwright): update reporter type from "single" to "merged" and adjust related configurations
* chore(playwright): improve filename sanitization in reporter
* feat(web-integration): add function to replace illegal path characters
* feat(web-integration): update path sanitization function to replace spaces and illegal characters