64 Commits

Author SHA1 Message Date
Leyang
7596da2ab7
feat: support tap in prompt (#584) 2025-04-18 10:27:56 +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
Zhou Xiao
2c3c540cb1
fix(playwright): make test.describe work correctly with ai fixtures (#537)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-04-04 16:14:04 +08:00
yuyutaotao
0171b5e2de
fix: ci testing (#529)
* fix: ci

* fix: ci
2025-04-03 10:51:50 +08:00
yuyutaotao
0c0675ba4b
feat: update deepThink interface (#517)
* feat: update deepThink interface

* fix: CI

* chore: update error message

* feat: update search area config

* fix: deepthink ui

---------

Co-authored-by: Zhou Xiao <zhouxiao.shaw@bytedance.com>
2025-04-02 19:26:56 +08:00
yuyutaotao
adc3fd9e0d
feat: use aiTap(prompt, opt) style interface (#512) 2025-04-01 10:41:31 +08:00
yuyutaotao
010ee92d62
fix: playwright integration (#497)
* fix: playwright integration

* chore: fix types

---------

Co-authored-by: zhouxiao.shaw <zhouxiao.shaw@bytedance.com>
2025-03-25 17:22:25 +08:00
Zhou Xiao
36d47e4aef
feat(playwright): add aiTap/aiInput and other AI actions for Playwright integration (#489)
* feat(playwright): add aiTap/aiInput and other AI actions for Playwright integration

* chore: update doc

---------

Co-authored-by: yutao <yutao.tao@bytedance.com>
2025-03-24 19:30:53 +08:00
yuyutaotao
649aeceb43
feat: enable search area for locate (#473)
* feat: enable search area for locate

* fix: update evaluation

* fix: build error

* fix: ci

* fix: locator

* feat: show searchArea in report

* chore: add yaml support for aiTap

* feat: update status tip

* fix: #473 (#484)

* chore: optimize unit test list

---------

Co-authored-by: zhouxiao.shaw <zhouxiao.shaw@bytedance.com>
2025-03-24 09:50:27 +08:00
yuyutaotao
8e1ba565d0
feat: optimize locator (#456)
---------

Co-authored-by: zhouxiao.shaw <zhouxiao.shaw@bytedance.com>
2025-03-17 19:19:54 +08:00
yuyutaotao
2c5ea87131
fix: ai test (#460)
* fix: ai test

* fix: ci test

* fix: evaluation test

* fix: test

* fix: test

* fix: ai test

* fix: ai test
2025-03-12 13:49:50 +08:00
yuyutaotao
d0a3d86e22
docs: update instruction for bridge mode (#428)
* docs: update instruction for bridge mode

* fix: ai test
2025-02-26 17:06:14 +08:00
Zhou Xiao
1eefad4422
docs: optimize agent api doc (#415)
* docs: optimize agent api doc

* docs: optimize runyaml link

* docs: optimize prompt
2025-02-24 14:29:17 +08:00
yuyutaotao
3f438f6c0c
fix: ci of qwen model (#410) 2025-02-21 16:15:51 +08:00
yuyutaotao
59ce2d0140
feat: locate by coord (#383)
---------

Co-authored-by: zhouxiao.shaw <zhouxiao.shaw@bytedance.com>
2025-02-21 09:56:09 +08:00
Zhou Xiao
edf0871fea
feat(browser): Add the forceSameTabNavigation configuration to prevent AI from opening new pages during operations, thus avoiding task interruptions. (#389)
* feat(tab-control): enhance the configuration to limit AI from opening new tabs during operations, preventing failures.

* chore: optimize evaluate error

* chore: resolve navigation error

* fix(browser): add forceSameTabNavigation config toe limit open new tab

* chore: upgrade vitest version

* fix: typo (#390)

---------

Co-authored-by: yuyutaotao <167746126+yuyutaotao@users.noreply.github.com>
2025-02-14 21:54:47 +08:00
Zhou Xiao
8e69f8d151
fix(keybord): resolve selectAll/Copy/Paste event (#384)
* fix(keybord): resolve selectAll/Copy/Paste event

* chore: fix e2e test

* chore: upgrade deps

* chore: add keybord commands  ref
2025-02-13 15:53:53 +08:00
yuyutaotao
efa4263b06
feat: export yaml runner in javascipt (#368)
---------

Co-authored-by: zhouxiao.shaw <zhouxiao.shaw@bytedance.com>
2025-02-10 20:00:14 +08:00
yuyutaotao
2a28472fa5
feat: use different color for annotations (#366) 2025-02-10 16:36:12 +08:00
Zhou Xiao
195eaad903
feat(cache): supports ui-tars model caching capability (#361) 2025-02-08 13:05:17 +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
f8744e441a
fix(prompt): resolve the llm-planning format error (#341) 2025-01-30 14:14:14 +08:00
Zhou Xiao
e8a3ea4464
workflow(ci): optimize ai test workflow (#336) 2025-01-27 17:17:02 +08:00
Zhou Xiao
b4a6b6f44d
chore: change default model name (#333) 2025-01-27 14:05:42 +08:00
Zhou Xiao
02ad84cf6f
chore: fix ai test (#332) 2025-01-27 10:22:56 +08:00
Zhou Xiao
9c88186540
feat(ui-tars): enhance the UI-TARS keyboard event handling and optimize parser logic (#330) 2025-01-26 20:34:56 +08:00
yuyutaotao
6d924e267f
feat(puppeteer): allow tracking new tab in puppeteer agent (#310) 2025-01-26 16:49:32 +08:00
Zhou xiao
2811f15da0
chore: refine AI test for failures (#323) 2025-01-25 11:14:15 +08:00
Zhou xiao
4c82eff526
chore: fix e2e test (#316)
* chore: fix e2e test

* chore: ignore todo test

* chore: fix e2e test

* chore: upgrade gpt api version

* chore: fix e2e test

* chore: fix e2e test

* chore: fix direction

* chore: fix direction

* chore: split test

* chore: split test

* chore: modify input info

* fix: scroll param in ci

* fix: lint

* fix: ai test

* fix: ai test

---------

Co-authored-by: yutao <yutao.tao@bytedance.com>
2025-01-24 15:02:50 +08:00
yuyutaotao
57f6786628
feat(extract-data): extract data from same-origin iframe (#258)
* feat: extract data from same-origin iframe

* fix: ci snapshot

* fix: extracting timeout error

* fix: ci timeout

* fix: update assets

* feat: set default size of yaml as 1920x1080

* chore: update default viewport size

---------

Co-authored-by: zhouxiao.shaw <zhouxiao.shaw@bytedance.com>
2025-01-22 20:52:11 +08:00
Zhou xiao
6c188d09e8
fix(e2e): optimize e2e error (#307)
* fix(e2e): optimize e2e error

* chore: ignore unless e2e
2025-01-22 13:51:40 +08:00
yuyutaotao
ed45cfab6c
fix(action): keyboard and div extracting (#304)
* fix: clearInput in browser

* fix: input issue on mac

* fix: playwright input

* fix: issue when collecting fixed item
---------

Co-authored-by: zhouxiao.shaw <zhouxiao.shaw@bytedance.com>

* fix: extract fixed style content

* fix: extract fixed style content

* fix: customize window size in yaml
2025-01-21 19:21:09 +08:00
Zhou xiao
56845b75ba
chore: fix planning typo (#269) 2025-01-13 14:52:15 +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
8479bcb652
feat: bridge mode - phase 2 (#257)
* feat: allow auto reconnect in bridge mode after disconnect

* feat: show agent progress in extension

* feat: allow using bridge mode in yaml

* doc: add doc for bridge mode

* doc: add doc for bridge mode

* docs: update screenshot
2025-01-10 10:55:41 +08:00
yuyutaotao
ae49685348
feat: add bridge mode for extension (#228) 2025-01-07 11:10:28 +08:00
Zhou xiao
691eb6ef0a
feat(ai-model): support Image positioning and integrate langchain (#230)
* feat: add point img logic

* feat: migrate prompt to langchain

* chore: delete unless log

* chore: optimize test case

* chore: fix lint error

* chore: delete httpAgent logic

* chore: delete unless fn

* chore: fix some comment

* chore: fix ci error

* chore: delete unless fn

* chore: update prompt

* chore: delete unless language
2025-01-02 21:23:30 +08:00
yuyutaotao
4a82e9bda9
feat: let max_tokens configurable (#212)
* feat: let max_tokens configurable

* fix: update ci test case
2024-12-26 13:24:21 +08:00
yuyutaotao
523adab12f
feat: support the if-statement in planning prompt (#184) 2024-12-19 10:44:08 +08:00
yuyutaotao
537a5c43d0
feat: add a real-time progress indicator for playground (#177) 2024-12-16 15:04:21 +08:00
yuyutaotao
863e5a54d0
fix: sandbox issue of puppeteer in Ubuntu (#176)
* fix: disable setuid sandbox in cli

* fix: disable setuid sandbox in cli
2024-12-10 09:24:43 +08:00
yuyutaotao
082e347da9
feat: replanning before locating (#167) 2024-12-08 20:12:17 +08:00
yuyutaotao
e7a58b3b24
faet: support yaml style scripts (#165) 2024-11-25 16:05:01 +08:00
yuyutaotao
4282e7bf07
feat: lower the cost of page description (#159) 2024-11-20 16:00:34 +08:00
yuyutaotao
48fa92f037
workflow(ci): AI test cases (#154)
* fix: AI test

* chore: add more links in README
2024-11-13 15:01:21 +08:00
Zhou xiao
08d46becf1
feat(cache): optimize cache logic id and export overrideAIConfig (#148)
* chore(cache): optimize cache logic id and export overrideAIConfig

* chore: use cache logic
2024-11-07 21:06:01 +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
Zhou xiao
1eb4c8de9f
workflow(ci): fix ci error (#142) 2024-11-04 17:14:14 +08:00
Zhou xiao
adb9b58879
feat(ai-model): add claude computer ablity (#136)
* Add new changes

* Add computer test results and update AI evaluation tests

* chore: Update build outputs and configurations

* feat(ai-model): support claude computer ability use position replace element id

* feat: generate add and commit

* feat: implement computer ability test for Claude

* chore: fix build Lose

* chore: Add and commit changes

* chore: optimize ai position

* chore: optimize ai position

* Add AI evaluation results and update tests

* chore: optimize ai test

* chore: add and commit changes

* chore: optimize ai test content

* chore: fix test case

* chore: fix e2e test
2024-10-31 18:18:31 +08:00