28 Commits

Author SHA1 Message Date
Leyang
3510a8c736
feat(web-integration): support unstableLogContent api for agent (#826)
* feat(web-integration): support unstableLogContent api for agent

* fix(web-integration): use sync mehtod

* docs(core): update API doc

* fix(web-integration): playwright

* docs(site): update

---------

Co-authored-by: yutao <yutao.tao@bytedance.com>
2025-06-11 16:50:11 +08:00
Leyang
b76211bd5d
feat: android playground (#542)
* refactor: android api

* refactor: enhance Android agent to accept options for device connection

* fix: type error

* fix: click after clearInput

* fix: click before clearInput

* feat: android playground

* feat: support npx package name

* feat: android playground joint

* fix: git ignore conflicts

* feat: ensure adb server is running before initializing adb client

* fix: deps consistency

* ci: add android playground

* feat: integrate shared constants and improve server configuration in android playground

* feat: android playground style

* feat: style opt

* feat: add @rsbuild/plugin-svgr dependency and improve URI handling in adb

* feat: remove unused water flow scripts and update comments to English

* feat: download report file

* feat: standalone android playground

* feat: use dynamic import

* feat: migrate CSS to LESS and remove unused styles in chrome extension and report

* feat: enhance Android playground with ScrcpyPlayer ref integration and device management improvements

* feat: optimize styles and layout in Android playground and visualizer components

* chore: add bin back

* chore: update build script to exclude documentation generation

* feat: add not ready message to PlaygroundResult for improved user guidance

* feat: add error handling for screenshot capture in Android page

* docs: update readme

* feat: add PNG validation for screenshot buffer in Android page

* feat: enhance UI components with improved styling and tooltips in ScrcpyPlayer and PromptInput

* docs: update uri parameter description in integrate-with-android documentation and improve uri handling in launch function

* style: update primary color to #2B83FF across multiple components and adjust margin in App.less

* refactor: replace userConfig with globalConfig for environment configuration management and update related functions

* feat: integrate server validation logic in App, AdbDevice, and ScrcpyPlayer components for improved connection handling

* style: enhance player component layout with overflow handling and margin adjustments

* style: refine player component layout with flex adjustments and improved spacing

* feat: add midscene model name display and improve layout in EnvConfig component

* feat: integrate ShinyText component for enhanced loading progress display in PlaygroundResult

* test: add test for isValidPNGImageBuffer

* style: remove background color from App.less and adjust AI config override behavior in env.ts

---------

Co-authored-by: yutao <yutao.tao@bytedance.com>
2025-04-17 17:44:11 +08:00
yuyutaotao
c777c139e4
fix: puppeteer export (#569) 2025-04-17 10:50:16 +08:00
Leyang
bc645c3d0c
refactor: android api (#521)
* refactor: android api

* refactor: update the Android agent and device connection logic

* refactor: enhance Android agent to accept options for device connection

* fix: type error

* feat: use first device when no deviceId pass

* fix: import from agent.ts

* fix: click after clearInput

* fix: click before clearInput
2025-04-03 10:28:40 +08:00
Leyang
bf9b4e06e7
feat: migrate android code to @midscene/android (#505) 2025-03-26 18:59:50 +08:00
Leyang
934a1e2b5d
use adb instead of appium (#483)
* feat: enable search area for locate

* fix: update evaluation

* fix: locator

* feat: show searchArea in report

* chore: add yaml support for aiTap

* feat: use adb instead appium

* feat: Adds debugging information and reconstructs input text capabilities

* feat: refactoring Android related functions and adding android modules

* feat: update the image scaling algorithm, adjust the Android page class to support device scaling, and remove test files that are no longer needed

* feat: adjust the Android page class to support device scaling, and remove test files that are no longer needed

* feat: use appium-adb instead of bare command

* fix: update entry for @midscene/android

* feat: optimize the screenshot processing logic, add a backup mechanism when screenshots fail, and update test cases to accommodate new features

* fix: rethrow error

* feat: add Android debug configuration options and update documentation

* chore: fix code style in #483 (#492)

* fix: remove try for error handle by outside

---------

Co-authored-by: yutao <yutao.tao@bytedance.com>
Co-authored-by: linyibing <linyibing@bytedance.com>
Co-authored-by: yuyutaotao <167746126+yuyutaotao@users.noreply.github.com>
2025-03-25 22:45:05 +08:00
Zhou Xiao
d128745e31
fix(esm): resolve cli can't load esm module (#445)
* fix(esm): resolve cli can't load esm module

* chore: resolve deps error

* chore: resolve deps error

* chore: resolve deps error

* chore: resolve deps error

* chore: resolve deps error

* chore: resolve deps error

* chore: resolve deps error

* chore: resolve deps error

* chore: resolve deps error

* chore: resolve deps error

* chore: resolve deps error

* chore: resolve deps error
2025-03-09 21:50:20 +08:00
Zhou Xiao
5d63ef9151
refactor: switch bundle type to bundleless (#437) 2025-03-07 17:20:18 +08:00
Zhou Xiao
881adab4fc
feat(yaml): Add cache support for yaml files, allowing file-level caching to improve execution speed and stability. Cache ID is automatically set to yaml filename. (#430) 2025-02-27 11:33:49 +08:00
yuyutaotao
2a28472fa5
feat: use different color for annotations (#366) 2025-02-10 16:36:12 +08:00
yuyutaotao
9d5f2fbcac
feat(web-extract): extract web content as a tree (#337)
* feat: extract web content as a tree

* chore: update test data

* chore: update test data

* feat: update answer of evaluation

* chore: update test cases

* chore: remove focusing on cases

* fix: ci

* fix: put rect in html tree

* fix: CI

* fix: AI test

* fix: lint

* fix: CI

* fix: static-page compatibility

* fix: CI

* fix: map by markerId

* fix: llm planning prompt

* chore: update hash length

* chore: ignore writing dump file

* fix: lint

* fix: ci snapshot

* chore: snapshot tree in web extractor

* chore: export tree utils in core

* chore: export tree utils in core

* fix: CI

* fix: update test case and evaluation

* chore: remove unused file

* refactor(extract): modify dependencies (#358)

* refactor(extract): modify dependencies

* chore: modify files config

* chore: add indexId as key for map

---------

Co-authored-by: Zhou Xiao <zhouxiao.shaw@bytedance.com>
2025-02-07 14:55:52 +08:00
Zhou xiao
2b18ed55de
feat(ai-model): support vlm (#262)
* feat(ai-model): support plan to target

* chore: modify test

* chore: modify test

* chore: fix env config

* chore: unify the action logic

* chore: optimize type hint

* chore: optimize type hint

* chore: fix type hint

* chore: fix build type error

* chore: support open new tab

* feat: support auto complete element

* chore: add sleep event

* chore: add ai cost time

* chore: optimize prompt

* chore: optimize report prompt

* chore: optimize vlm name

* chore: fix command

* chore: optimize error handle and use check debugger list replace last tab id

* chore: fix chrome debugger attach logic

* chore: fix unit test
2025-01-13 14:32:17 +08:00
yuyutaotao
ae49685348
feat: add bridge mode for extension (#228) 2025-01-07 11:10:28 +08:00
yuyutaotao
cd00680b76
fix: make puppeteer external in web-integration (#208)
* fix: make puppeteer external in web-integration

* fix: import path of yaml player

* fix: import path of yaml player
2024-12-25 23:53:11 +08:00
yuyutaotao
05dad23bfd
chore: print yaml file in chrome extension (#205) 2024-12-25 20:23:12 +08:00
yuyutaotao
537a5c43d0
feat: add a real-time progress indicator for playground (#177) 2024-12-16 15:04:21 +08:00
yuyutaotao
f8507efd50
chore: some minor bug fixes (#146)
* feat: always use latest process.env as fallback

---------

Co-authored-by: zhouxiao.shaw <zhouxiao.shaw@bytedance.com>
2024-11-07 11:29:50 +08:00
yuyutaotao
9e1eef5cfd
feat: Build a chrome extension for playground (#140) 2024-11-05 11:49:21 +08:00
yuyutaotao
c288baa448
feat: make playground working in the browser (#135)
---------

Co-authored-by: zhouxiao.shaw <zhouxiao.shaw@bytedance.com>
2024-10-28 11:04:40 +08:00
yuyutaotao
7d4f9847f5
feat: add a playground page to debug (#131)
* fix: fix the Player style when the locator is failed

* feat: add Playground UI

---------

Co-authored-by: zhouxiao.shaw <zhouxiao.shaw@bytedance.com>
2024-10-21 16:30:07 +08:00
Zhou xiao
eafa5bfa20
feat(cache): The cache is generalized to support puppeteers and mobile terminals (#85)
* feat(cache): The cache is generalized to support Puppeteers and mobile terminals

* chore: update cache test

* chore: update cache test

* chore: update cache test

* docs: update cache doc

* chore: update ai test command

* chore: update ai test command

* chore: update ai test command

* chore: optimize cache logic

* chore: update get dir path logic

* chore: update get dir path logic
2024-09-06 17:19:35 +08:00
Leyang
cfa92b3980
feat(app): supports control of iOS and Android devices through appium (#82)
Co-authored-by: zhouxiao.shaw <zhouxiao.shaw@bytedance.com>
Co-authored-by: linyibing <linyibing@bytedance.com>
2024-09-05 20:05:19 +08:00
Zhou xiao
1c6237ae46
chore: delete unless debug code and fix ci cache logic (#84) 2024-09-02 14:09:56 +08:00
Zhou xiao
be3725647d
fix(web): fix sharp deps (#72)
* fix(web): fix sharp deps

* chore: optimize sharp deps
2024-08-23 19:29:45 +08:00
yuyutaotao
b351dbfb87
feat(web): export puppeteer and playwright separately (#71) 2024-08-23 15:57:39 +08:00
Zhou xiao
e1ae31ac17
workflow(ci): optimize biome lint (#31)
* workflow(ci): format code

* workflow(ci): format code

* workflow(ci): format code

* workflow(ci): format code

* workflow(ci): format code
2024-08-04 08:28:19 +08:00
Zhou xiao
855f7403a3
feat(report): supports playwright test report generation (#15)
* chore: collect playwright test data

* feat: init

* feat(visualizer-report): add visualizer-report project

* feat(visualizer-report): add visualizer-report project

* chore: add report test data

* chore: add report test data

* chore: optimize generate playwright test data

* chore: optimize report logic

* chore: optimize report logic

* chore: optimize report logic

* chore: optimize report logic

* chore: optimize report logic

* chore(cd): ignore unless code

* chore: modify test command

* chore: optimize sidebar content

* chore: optimize report logic
2024-07-28 17:24:09 +08:00
zhouxiao.shaw
fa50c3bdae feat: AI-driven browser and visualization 2024-07-23 16:25:11 +08:00