minitap-mobile-use 2.3.0__py3-none-any.whl → 2.5.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of minitap-mobile-use might be problematic. Click here for more details.
- minitap/mobile_use/agents/contextor/contextor.py +2 -2
- minitap/mobile_use/agents/cortex/cortex.md +49 -8
- minitap/mobile_use/agents/cortex/cortex.py +8 -4
- minitap/mobile_use/agents/executor/executor.md +14 -11
- minitap/mobile_use/agents/executor/executor.py +6 -5
- minitap/mobile_use/agents/hopper/hopper.py +6 -3
- minitap/mobile_use/agents/orchestrator/orchestrator.py +26 -11
- minitap/mobile_use/agents/outputter/outputter.py +6 -3
- minitap/mobile_use/agents/planner/planner.md +20 -22
- minitap/mobile_use/agents/planner/planner.py +10 -7
- minitap/mobile_use/agents/planner/types.py +4 -2
- minitap/mobile_use/agents/planner/utils.py +14 -0
- minitap/mobile_use/agents/summarizer/summarizer.py +2 -2
- minitap/mobile_use/config.py +6 -1
- minitap/mobile_use/context.py +13 -3
- minitap/mobile_use/controllers/mobile_command_controller.py +1 -14
- minitap/mobile_use/graph/state.py +7 -3
- minitap/mobile_use/sdk/agent.py +188 -23
- minitap/mobile_use/sdk/examples/README.md +19 -1
- minitap/mobile_use/sdk/examples/platform_manual_task_example.py +65 -0
- minitap/mobile_use/sdk/examples/platform_minimal_example.py +46 -0
- minitap/mobile_use/sdk/services/platform.py +307 -0
- minitap/mobile_use/sdk/types/__init__.py +16 -14
- minitap/mobile_use/sdk/types/exceptions.py +27 -0
- minitap/mobile_use/sdk/types/platform.py +127 -0
- minitap/mobile_use/sdk/types/task.py +78 -17
- minitap/mobile_use/servers/device_hardware_bridge.py +1 -1
- minitap/mobile_use/servers/stop_servers.py +11 -12
- minitap/mobile_use/services/llm.py +89 -5
- minitap/mobile_use/tools/index.py +0 -6
- minitap/mobile_use/tools/mobile/back.py +3 -3
- minitap/mobile_use/tools/mobile/clear_text.py +24 -43
- minitap/mobile_use/tools/mobile/erase_one_char.py +5 -4
- minitap/mobile_use/tools/mobile/glimpse_screen.py +11 -7
- minitap/mobile_use/tools/mobile/input_text.py +21 -51
- minitap/mobile_use/tools/mobile/launch_app.py +54 -22
- minitap/mobile_use/tools/mobile/long_press_on.py +15 -8
- minitap/mobile_use/tools/mobile/open_link.py +15 -8
- minitap/mobile_use/tools/mobile/press_key.py +15 -8
- minitap/mobile_use/tools/mobile/stop_app.py +14 -8
- minitap/mobile_use/tools/mobile/swipe.py +11 -5
- minitap/mobile_use/tools/mobile/tap.py +103 -21
- minitap/mobile_use/tools/mobile/wait_for_animation_to_end.py +3 -3
- minitap/mobile_use/tools/test_utils.py +104 -78
- minitap/mobile_use/tools/types.py +35 -0
- minitap/mobile_use/tools/utils.py +51 -48
- minitap/mobile_use/utils/recorder.py +1 -1
- minitap/mobile_use/utils/ui_hierarchy.py +9 -2
- {minitap_mobile_use-2.3.0.dist-info → minitap_mobile_use-2.5.0.dist-info}/METADATA +3 -1
- minitap_mobile_use-2.5.0.dist-info/RECORD +100 -0
- minitap/mobile_use/tools/mobile/copy_text_from.py +0 -75
- minitap/mobile_use/tools/mobile/find_packages.py +0 -69
- minitap/mobile_use/tools/mobile/paste_text.py +0 -88
- minitap_mobile_use-2.3.0.dist-info/RECORD +0 -98
- {minitap_mobile_use-2.3.0.dist-info → minitap_mobile_use-2.5.0.dist-info}/WHEEL +0 -0
- {minitap_mobile_use-2.3.0.dist-info → minitap_mobile_use-2.5.0.dist-info}/entry_points.txt +0 -0
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
minitap/mobile_use/__init__.py,sha256=e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855,0
|
|
2
|
+
minitap/mobile_use/agents/contextor/contextor.py,sha256=820c32e11fc0a622fffe4170d4d8ec376c6ff44cb5c20dbd8379a031b1961615,1717
|
|
3
|
+
minitap/mobile_use/agents/cortex/cortex.md,sha256=b1390b54d2e350204013daa7cb750eadb5054470d9a125240c892a9db445982e,12192
|
|
4
|
+
minitap/mobile_use/agents/cortex/cortex.py,sha256=15ec2eb1e5636b84db06c928b9854f07352f0e86a50244aec5dc2d0775d84e59,5077
|
|
5
|
+
minitap/mobile_use/agents/cortex/types.py,sha256=c33f2277752644d2185d84add03a493adaa530096d046d73366ab9121d99b946,361
|
|
6
|
+
minitap/mobile_use/agents/executor/executor.md,sha256=1054c84bbc52709325e7ac4bb2f5a400cb439fee164694e1109c0e373d30ed27,3726
|
|
7
|
+
minitap/mobile_use/agents/executor/executor.py,sha256=59fa952f25556dbea70dde656a09b62e1adba011ce7e67f587f373de73d2a5f9,2974
|
|
8
|
+
minitap/mobile_use/agents/executor/tool_node.py,sha256=2ad729ede393882460ae3d180ac1c0e1ab1688f40b2017220aad1b059f6485c5,3900
|
|
9
|
+
minitap/mobile_use/agents/executor/utils.py,sha256=74cf2287053cd4fc763835870e5ae029ca36f6cd0ca7d50678ad05d52ab265b7,368
|
|
10
|
+
minitap/mobile_use/agents/hopper/hopper.md,sha256=2e9333ece8f6b76401ac2cce98ca06a025faa5dba6bacbbc344793ddf42292d0,362
|
|
11
|
+
minitap/mobile_use/agents/hopper/hopper.py,sha256=d3426ebf244633d2216f20ee015616b25d68127674926d36696b91774d84f3ca,1426
|
|
12
|
+
minitap/mobile_use/agents/orchestrator/human.md,sha256=6559026aa921b7ad7dddcf3dfcd5d9930252edd6484d60ea92ff6ca97ed028fc,229
|
|
13
|
+
minitap/mobile_use/agents/orchestrator/orchestrator.md,sha256=cc1a353c577f2eef42d9a528178ccc2c0a4a144a907a29878f9efe57e83b12fa,2546
|
|
14
|
+
minitap/mobile_use/agents/orchestrator/orchestrator.py,sha256=56a06879332284edbf25699fcfbf234cfef03e45ffcf0172acda2a1049852fce,5088
|
|
15
|
+
minitap/mobile_use/agents/orchestrator/types.py,sha256=f53dfdc99e8d50888ac1cde5f7f90ba5c87837a8eee8dd8efa31f2640394433c,335
|
|
16
|
+
minitap/mobile_use/agents/outputter/human.md,sha256=6b9b45c640b163554524b1aec4cd97134c628eeb8557a32e23c8f966d32f642e,771
|
|
17
|
+
minitap/mobile_use/agents/outputter/outputter.py,sha256=cc3db524f0fefb463f1baa07aab13e3dfb4704994f173f8d193b5c45034a518e,2855
|
|
18
|
+
minitap/mobile_use/agents/outputter/test_outputter.py,sha256=907b517c486f82a384a364e0bd202c00e8e8082c138461f6eead0e25c2779ba9,5538
|
|
19
|
+
minitap/mobile_use/agents/planner/human.md,sha256=cb37be2af568918e60238eaa785837178a3ba8f8112de86850d9a62914c18314,222
|
|
20
|
+
minitap/mobile_use/agents/planner/planner.md,sha256=f2089809c01263834f0ff264153993809f4ad3c32088305a5c7d421c1d6f4732,3407
|
|
21
|
+
minitap/mobile_use/agents/planner/planner.py,sha256=ee3aafb1519419e16d0fdf02272e6cd6c31ff51dcd0b17131ec599fa866fcf1b,2931
|
|
22
|
+
minitap/mobile_use/agents/planner/types.py,sha256=e8acf3c2d1505286a138b6f7c3ef36f397d154953311d0875e3ef35152653e7f,1496
|
|
23
|
+
minitap/mobile_use/agents/planner/utils.py,sha256=88b4b039e09cea254615ff3d0bc8951c3717a68702742e913a0176ecfbcaf495,2315
|
|
24
|
+
minitap/mobile_use/agents/summarizer/summarizer.py,sha256=56c2c7d5d48f4ba045b1401538db78b2ddbd43280389ed4cbc58ecd1da0c7610,1083
|
|
25
|
+
minitap/mobile_use/clients/device_hardware_client.py,sha256=9593380a7a3df32f02aa22717678c25e91367df26b1743abde9e57aec5dc2474,857
|
|
26
|
+
minitap/mobile_use/clients/ios_client.py,sha256=332bf47ac01bbd5bf6178a59eea7c7a30fed944f30907caea5388178f312d36b,1452
|
|
27
|
+
minitap/mobile_use/clients/screen_api_client.py,sha256=3615dc65d25c38b4d8dc5512f9adb3bcf69dca7a0298a472a6812f604a275c47,2019
|
|
28
|
+
minitap/mobile_use/config.py,sha256=70a9519f0c4732870ee0bb7cdb1a7adc5dca85e380edce9e8cd5d5572709c7d9,10206
|
|
29
|
+
minitap/mobile_use/constants.py,sha256=3acd9d6ade5bc772e902b3473f3ba12ddd04e7306963ca2bae49d1132d89ba46,95
|
|
30
|
+
minitap/mobile_use/context.py,sha256=2e212588a8a7caf58460fead0cae195c6386b7301026bbb2d78fe56c263ce6c3,2131
|
|
31
|
+
minitap/mobile_use/controllers/__init__.py,sha256=e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855,0
|
|
32
|
+
minitap/mobile_use/controllers/mobile_command_controller.py,sha256=cff7993e91eeae74b0cb063f820b7450344637037467de4c592711961cee77ea,11681
|
|
33
|
+
minitap/mobile_use/controllers/platform_specific_commands_controller.py,sha256=8b4fc30108c242da41fd998751dbfd5e6a69e2957a2dbbe5d6fc43d6b55f727e,2705
|
|
34
|
+
minitap/mobile_use/graph/graph.py,sha256=c7b412e725b096eca8f212d704c3faf91d77eea4131f1fae7af1ee39bc57cdae,4269
|
|
35
|
+
minitap/mobile_use/graph/state.py,sha256=8efeef0f4bb10c933e54fdf17882ae63907ca557e4f1ae56bced8b5ac0f9ed17,3503
|
|
36
|
+
minitap/mobile_use/main.py,sha256=7ac4dc592e3ce72bff602d67ba2f25b9b5e45e07a316e548d7c8e73735abf43d,3725
|
|
37
|
+
minitap/mobile_use/sdk/__init__.py,sha256=4e5555c0597242b9523827194a2500b9c6d7e5c04b1ccd2056c9b1f4d42a31cd,318
|
|
38
|
+
minitap/mobile_use/sdk/agent.py,sha256=ad30436d2de47804bd13c54e40c3c8709ff17765bbd2703e332e0959f885c4d3,27825
|
|
39
|
+
minitap/mobile_use/sdk/builders/__init__.py,sha256=d6c96d39b80900a114698ef205ab5061a541f33bfa99c456d9345e5adb8ff6ff,424
|
|
40
|
+
minitap/mobile_use/sdk/builders/agent_config_builder.py,sha256=c63f452350822daab86d29c44a333909b623fc7ff7bcbf74e5f9104b24630bf5,7582
|
|
41
|
+
minitap/mobile_use/sdk/builders/index.py,sha256=64336ac3b3dea4673a48e95b8c5ac4196ecd5d2196380377d102593d0a1dc138,442
|
|
42
|
+
minitap/mobile_use/sdk/builders/task_request_builder.py,sha256=9e6cf7afb68af986d6a81487179bb79d28f63047a068725d92996dbcbe753376,6857
|
|
43
|
+
minitap/mobile_use/sdk/constants.py,sha256=436ba0700c6cf37ac0c9e3995a5f5a0d54ca87af72686eb9667a2c6a96e30f68,292
|
|
44
|
+
minitap/mobile_use/sdk/examples/README.md,sha256=c92e57d6efc5bce9f3c8668b20d9ce80396aefb7a685636ee84de8c7b9c1403e,3247
|
|
45
|
+
minitap/mobile_use/sdk/examples/__init__.py,sha256=c23868a2ca7e9b76e80d6835fe93c10e13ea8f2287dd6e785511b8ac30354e9b,46
|
|
46
|
+
minitap/mobile_use/sdk/examples/platform_manual_task_example.py,sha256=2c140c040f0389f41ea430f088c40b3f0c211a433fca21ea6e106ddde9699927,1941
|
|
47
|
+
minitap/mobile_use/sdk/examples/platform_minimal_example.py,sha256=58e57771362ef606045e238fe96cdf91313f161f233c5167acef71bb05c065ed,1321
|
|
48
|
+
minitap/mobile_use/sdk/examples/simple_photo_organizer.py,sha256=8ad1cebb5281e3663264560bd15b090add41d2821b1db77e4cbc829860c98df8,2606
|
|
49
|
+
minitap/mobile_use/sdk/examples/smart_notification_assistant.py,sha256=1d00658dc30c7bce5ef68369f982cd2d1932f53e2e2da6ded70cea13dc669c72,6362
|
|
50
|
+
minitap/mobile_use/sdk/services/platform.py,sha256=28636d3d1715b997a44a41e0c4af2756235a04ecd565d011439ae970ac040c88,11973
|
|
51
|
+
minitap/mobile_use/sdk/types/__init__.py,sha256=433aff6b35f84a985633204edbbdaca9f2f61fb2b822630f9723c481b9bb5c10,1078
|
|
52
|
+
minitap/mobile_use/sdk/types/agent.py,sha256=390d5c642b3480f4a2203ddd28ec115c785f2576bec81e82e4db3c129399c020,2260
|
|
53
|
+
minitap/mobile_use/sdk/types/exceptions.py,sha256=684c0049c5af417edf7e46e515be14fd57a0614c81b06ed52f379bc9d0bbebf3,4499
|
|
54
|
+
minitap/mobile_use/sdk/types/platform.py,sha256=df68f9b158542eb4d31c7151abf638a7f46502a27b90e7c5f0afc7c187485c3b,5207
|
|
55
|
+
minitap/mobile_use/sdk/types/task.py,sha256=264e77bce958ee398252c7346dfa7ae896ea6dbbd98576f35d1a766c4926a189,8236
|
|
56
|
+
minitap/mobile_use/sdk/utils.py,sha256=647f1f4a463c3029c3b0eb3c33f7dd778d5f5fd9d293224f5474595a60e1de6f,967
|
|
57
|
+
minitap/mobile_use/servers/config.py,sha256=8a4a6bce23e2093d047a91e135e2f88627f76ac12177d071f25a3ca739b3afeb,575
|
|
58
|
+
minitap/mobile_use/servers/device_hardware_bridge.py,sha256=db5f55ba66bfebf70ea1a655d921d4070ca6c458b1e7e5e08ed58b3bea100d63,7227
|
|
59
|
+
minitap/mobile_use/servers/device_screen_api.py,sha256=63bf866f17cde4ab97631b710080866b8427225d3857b2351ab83db38a9c5107,5064
|
|
60
|
+
minitap/mobile_use/servers/start_servers.py,sha256=1e86dc0fcbdf6e6570ae68c7097145e754f3c3448ca813d415b3e5ebb74db828,5037
|
|
61
|
+
minitap/mobile_use/servers/stop_servers.py,sha256=04a409a17fc0323209301fe28fbb037d71e41e5422eb369640f9f329aae312f5,7064
|
|
62
|
+
minitap/mobile_use/servers/utils.py,sha256=f3cc85da39f8d60cb840001be418562de7db95462370db9b79e96d884abe5c17,294
|
|
63
|
+
minitap/mobile_use/services/accessibility.py,sha256=42bcbe81b427ee6f6e82bcfe420fc40630db950bda354e3e433c2dda2e159628,3404
|
|
64
|
+
minitap/mobile_use/services/llm.py,sha256=e100560940a5d4fc33d2086742369c621e81e6c2fbb98e6d07411856d4df480f,7059
|
|
65
|
+
minitap/mobile_use/tools/index.py,sha256=9eab29d43e66ca397fad3206a302a9a4f423448437ab0a6fdb2b9d8bb227513b,2377
|
|
66
|
+
minitap/mobile_use/tools/mobile/back.py,sha256=8b909e412c8ad382e339b8c89171bf1363398a95a5c96126f79ee2f24e3c2ed1,1816
|
|
67
|
+
minitap/mobile_use/tools/mobile/clear_text.py,sha256=58e0426f042e39d827d3ff2fe3a79bb23e4146cbefd13da938e1a6f397579c4b,9799
|
|
68
|
+
minitap/mobile_use/tools/mobile/erase_one_char.py,sha256=a125933619614b621479c514c8e29a7ec6b504b1e7ab1be13603a744f32322d6,1985
|
|
69
|
+
minitap/mobile_use/tools/mobile/glimpse_screen.py,sha256=c9ee978a1163cea4cd4900ea3fefc0e9fe2685578be47b63a2f925b3598fb51d,2528
|
|
70
|
+
minitap/mobile_use/tools/mobile/input_text.py,sha256=dd83d735bebcc0a0b376cd739a63e1db5c3031525090c262a3274e6f1aa97f7b,5427
|
|
71
|
+
minitap/mobile_use/tools/mobile/launch_app.py,sha256=a794665f9bc7a035ad6029b8153d6e56a0ba49ce36b0ab8a4e342267465d8fef,3237
|
|
72
|
+
minitap/mobile_use/tools/mobile/long_press_on.py,sha256=0a0263a1429207c36f5be5f3a6ae35be3e8c56897737ed9536ae83ffbdca43e6,2299
|
|
73
|
+
minitap/mobile_use/tools/mobile/open_link.py,sha256=3017b94a921ced032f18526101eeba8caa907ebee40b82bed0baa4f35477e6c8,1980
|
|
74
|
+
minitap/mobile_use/tools/mobile/press_key.py,sha256=0133b1f1eb3b67c94aeaa70ac3ff822dc1e1f70624a0727f6e8c3cbcef1a80ab,2044
|
|
75
|
+
minitap/mobile_use/tools/mobile/stop_app.py,sha256=74f93c60cdf039455897b0bb2d74e5702cc8429abc606b6069c7be6399b7fbdf,2166
|
|
76
|
+
minitap/mobile_use/tools/mobile/swipe.py,sha256=6436db271564ea211af3c6fd699b22f3205409533819a68d7193768321999a7d,5862
|
|
77
|
+
minitap/mobile_use/tools/mobile/tap.py,sha256=826fbc6471d641e145427f5963ca2c3a5bc46dceb9ed4d56053cc849825a54c1,5946
|
|
78
|
+
minitap/mobile_use/tools/mobile/wait_for_animation_to_end.py,sha256=26b422556a31700ca98e769e7142c02248980f2ce01b712440269a072d2c0efc,2517
|
|
79
|
+
minitap/mobile_use/tools/test_utils.py,sha256=42dd0ff789c92254bc4452ab339a53f0d597a9bfddd2a6554d37f54ff52920ef,13888
|
|
80
|
+
minitap/mobile_use/tools/tool_wrapper.py,sha256=f0f27beaae25a1bcfd9b72bf994de84b2e5fba9e242d8ad18a8d1a97cd7619e4,454
|
|
81
|
+
minitap/mobile_use/tools/types.py,sha256=4f73939260509269416f5ad515a34569f7fa3467e1f920b9e8a991d1adbc761a,1298
|
|
82
|
+
minitap/mobile_use/tools/utils.py,sha256=7a80b9f82447a718ecc1fd2163f13f35f4f0b4e2859abd85f3c014ded10bccf2,6926
|
|
83
|
+
minitap/mobile_use/utils/cli_helpers.py,sha256=1c53b6ea6cd2ba861302b182944c6a3a31dac27e316bca2c65cd6a3ca3256e81,1720
|
|
84
|
+
minitap/mobile_use/utils/cli_selection.py,sha256=62e949bf075e984b5d23b4a9880ff2bccf8f9e0f7ccb48120030a6a82075352b,4788
|
|
85
|
+
minitap/mobile_use/utils/conversations.py,sha256=8f1d924300ec3f6f7c71510c21e3011b75caca5b1fff06fdaccb377c3cde24ec,914
|
|
86
|
+
minitap/mobile_use/utils/decorators.py,sha256=0bb30fb4f5d5cef0aef45643e68e199d39910f1d771eb4086f3e083d566c16a5,3591
|
|
87
|
+
minitap/mobile_use/utils/errors.py,sha256=6c5566484cff48ce1eb168c3cbe93d6e5365457828f59616a15147598feef769,156
|
|
88
|
+
minitap/mobile_use/utils/file.py,sha256=1ca968613452a273b23e4f58460ab39f87255b02cdb6fb8ca04f4e628b346070,315
|
|
89
|
+
minitap/mobile_use/utils/logger.py,sha256=011fe08c39b111997ec685b9f0b378761607e35ac049234b5e86c2b58f29bbe3,5633
|
|
90
|
+
minitap/mobile_use/utils/media.py,sha256=29fa7f009a0f2bd60de2a9eba4a90e6eecc91cc67c2736b753506d48ab2bf5eb,2228
|
|
91
|
+
minitap/mobile_use/utils/recorder.py,sha256=a5f3e2da3b4326bd1285537b7cfd4c84eda3dc47cda2f3c873026d0720896823,1726
|
|
92
|
+
minitap/mobile_use/utils/requests_utils.py,sha256=5c3a2e2aff7c521cd6a43b74c084e2244e1ff55065a5b722e6e251c6419861fd,1168
|
|
93
|
+
minitap/mobile_use/utils/shell_utils.py,sha256=b35ae7f863379adb86c9ba0f9b3b9d4954118d12aef1ffed0bc260b32d73d857,650
|
|
94
|
+
minitap/mobile_use/utils/test_ui_hierarchy.py,sha256=96c1549c05b4f7254a22d57dbd40aea860756f1e0b9d8cc24319383643448422,5911
|
|
95
|
+
minitap/mobile_use/utils/time.py,sha256=41bfaabb3751de11443ccb4a3f1f53d5ebacc7744c72e32695fdcc3d23f17d49,160
|
|
96
|
+
minitap/mobile_use/utils/ui_hierarchy.py,sha256=f3370518035d9daf02c08042a9e28ad564f4fc81a2b268103b9a7f8bc5c61d11,3797
|
|
97
|
+
minitap_mobile_use-2.5.0.dist-info/WHEEL,sha256=ab6157bc637547491fb4567cd7ddf26b04d63382916ca16c29a5c8e94c9c9ef7,79
|
|
98
|
+
minitap_mobile_use-2.5.0.dist-info/entry_points.txt,sha256=663a29cfd551a4eaa0f27335f0bd7e4a732a4e39c76b68ef5c8dc444d4a285fa,60
|
|
99
|
+
minitap_mobile_use-2.5.0.dist-info/METADATA,sha256=3319e5797aab4b31ed4bc8ad9a499e09fdaa3f685d60ad3f958993bc55a961b0,11995
|
|
100
|
+
minitap_mobile_use-2.5.0.dist-info/RECORD,,
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
from typing import Annotated
|
|
2
|
-
|
|
3
|
-
from langchain_core.messages import ToolMessage
|
|
4
|
-
from langchain_core.tools import tool
|
|
5
|
-
from langchain_core.tools.base import InjectedToolCallId
|
|
6
|
-
from langgraph.prebuilt import InjectedState
|
|
7
|
-
from langgraph.types import Command
|
|
8
|
-
from pydantic import Field
|
|
9
|
-
|
|
10
|
-
from minitap.mobile_use.constants import EXECUTOR_MESSAGES_KEY
|
|
11
|
-
from minitap.mobile_use.context import MobileUseContext
|
|
12
|
-
from minitap.mobile_use.controllers.mobile_command_controller import SelectorRequest
|
|
13
|
-
from minitap.mobile_use.controllers.mobile_command_controller import (
|
|
14
|
-
copy_text_from as copy_text_from_controller,
|
|
15
|
-
)
|
|
16
|
-
from minitap.mobile_use.graph.state import State
|
|
17
|
-
from minitap.mobile_use.tools.tool_wrapper import ToolWrapper
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
def get_copy_text_from_tool(ctx: MobileUseContext):
|
|
21
|
-
@tool
|
|
22
|
-
def copy_text_from(
|
|
23
|
-
tool_call_id: Annotated[str, InjectedToolCallId],
|
|
24
|
-
state: Annotated[State, InjectedState],
|
|
25
|
-
agent_thought: str,
|
|
26
|
-
selector_request: SelectorRequest = Field(
|
|
27
|
-
..., description="The selector to copy text from"
|
|
28
|
-
),
|
|
29
|
-
):
|
|
30
|
-
"""
|
|
31
|
-
Copies text from a UI element identified by the given selector and stores it in memory.
|
|
32
|
-
|
|
33
|
-
The copied text can be:
|
|
34
|
-
- Pasted later using `pasteText`
|
|
35
|
-
- Accessed in JavaScript via `maestro.copiedText`
|
|
36
|
-
|
|
37
|
-
Example Usage:
|
|
38
|
-
- launchApp
|
|
39
|
-
- copyTextFrom: { id: "someId" }
|
|
40
|
-
- tapOn: { id: "searchFieldId" }
|
|
41
|
-
- pasteText
|
|
42
|
-
|
|
43
|
-
See the Selectors documentation for supported selector types.
|
|
44
|
-
"""
|
|
45
|
-
output = copy_text_from_controller(ctx=ctx, selector_request=selector_request)
|
|
46
|
-
has_failed = output is not None
|
|
47
|
-
tool_message = ToolMessage(
|
|
48
|
-
tool_call_id=tool_call_id,
|
|
49
|
-
content=copy_text_from_wrapper.on_failure_fn(selector_request)
|
|
50
|
-
if has_failed
|
|
51
|
-
else copy_text_from_wrapper.on_success_fn(selector_request),
|
|
52
|
-
additional_kwargs={"error": output} if has_failed else {},
|
|
53
|
-
status="error" if has_failed else "success",
|
|
54
|
-
)
|
|
55
|
-
return Command(
|
|
56
|
-
update=state.sanitize_update(
|
|
57
|
-
ctx=ctx,
|
|
58
|
-
update={
|
|
59
|
-
"agents_thoughts": [agent_thought],
|
|
60
|
-
EXECUTOR_MESSAGES_KEY: [tool_message],
|
|
61
|
-
},
|
|
62
|
-
agent="executor",
|
|
63
|
-
),
|
|
64
|
-
)
|
|
65
|
-
|
|
66
|
-
return copy_text_from
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
copy_text_from_wrapper = ToolWrapper(
|
|
70
|
-
tool_fn_getter=get_copy_text_from_tool,
|
|
71
|
-
on_success_fn=lambda selector_request: (
|
|
72
|
-
f'Text copied successfully from selector "{selector_request}".'
|
|
73
|
-
),
|
|
74
|
-
on_failure_fn=lambda selector_request: f"Failed to copy text from selector {selector_request}.",
|
|
75
|
-
)
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
from langchain_core.messages import ToolMessage
|
|
2
|
-
from langchain_core.tools import tool
|
|
3
|
-
from langchain_core.tools.base import InjectedToolCallId
|
|
4
|
-
from langgraph.prebuilt import InjectedState
|
|
5
|
-
from langgraph.types import Command
|
|
6
|
-
from minitap.mobile_use.agents.hopper.hopper import HopperOutput, hopper
|
|
7
|
-
from minitap.mobile_use.constants import EXECUTOR_MESSAGES_KEY
|
|
8
|
-
from minitap.mobile_use.context import MobileUseContext
|
|
9
|
-
from minitap.mobile_use.controllers.platform_specific_commands_controller import list_packages
|
|
10
|
-
from minitap.mobile_use.graph.state import State
|
|
11
|
-
from minitap.mobile_use.tools.tool_wrapper import ToolWrapper
|
|
12
|
-
from typing import Annotated
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
def get_find_packages_tool(ctx: MobileUseContext):
|
|
16
|
-
@tool
|
|
17
|
-
async def find_packages(
|
|
18
|
-
tool_call_id: Annotated[str, InjectedToolCallId],
|
|
19
|
-
state: Annotated[State, InjectedState],
|
|
20
|
-
appNames: list[str],
|
|
21
|
-
agent_thought: str,
|
|
22
|
-
) -> Command:
|
|
23
|
-
"""
|
|
24
|
-
Finds relevant applications.
|
|
25
|
-
Outputs the full package names list (android) or bundle ids list (IOS).
|
|
26
|
-
"""
|
|
27
|
-
output: str = list_packages(ctx=ctx)
|
|
28
|
-
|
|
29
|
-
try:
|
|
30
|
-
hopper_output: HopperOutput = await hopper(
|
|
31
|
-
ctx=ctx,
|
|
32
|
-
request=f"I'm looking for the package names of the following apps: {appNames}",
|
|
33
|
-
data=output,
|
|
34
|
-
)
|
|
35
|
-
tool_message = ToolMessage(
|
|
36
|
-
tool_call_id=tool_call_id,
|
|
37
|
-
content=find_packages_wrapper.on_success_fn(
|
|
38
|
-
hopper_output.step, hopper_output.output
|
|
39
|
-
),
|
|
40
|
-
status="success",
|
|
41
|
-
)
|
|
42
|
-
except Exception as e:
|
|
43
|
-
print("Failed to extract insights from data: " + str(e))
|
|
44
|
-
tool_message = ToolMessage(
|
|
45
|
-
tool_call_id=tool_call_id,
|
|
46
|
-
content=find_packages_wrapper.on_failure_fn(),
|
|
47
|
-
additional_kwargs={"output": output},
|
|
48
|
-
status="error",
|
|
49
|
-
)
|
|
50
|
-
|
|
51
|
-
return Command(
|
|
52
|
-
update=state.sanitize_update(
|
|
53
|
-
ctx=ctx,
|
|
54
|
-
update={
|
|
55
|
-
"agents_thoughts": [agent_thought, tool_message.content],
|
|
56
|
-
EXECUTOR_MESSAGES_KEY: [tool_message],
|
|
57
|
-
},
|
|
58
|
-
agent="executor",
|
|
59
|
-
),
|
|
60
|
-
)
|
|
61
|
-
|
|
62
|
-
return find_packages
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
find_packages_wrapper = ToolWrapper(
|
|
66
|
-
tool_fn_getter=get_find_packages_tool,
|
|
67
|
-
on_success_fn=lambda thought, output: f"Packages found successfully ({thought}): {output}",
|
|
68
|
-
on_failure_fn=lambda: "Failed to find packages.",
|
|
69
|
-
)
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
from typing import Annotated
|
|
2
|
-
|
|
3
|
-
from langchain_core.messages import ToolMessage
|
|
4
|
-
from langchain_core.tools import tool
|
|
5
|
-
from langchain_core.tools.base import InjectedToolCallId
|
|
6
|
-
from langgraph.prebuilt import InjectedState
|
|
7
|
-
from langgraph.types import Command
|
|
8
|
-
|
|
9
|
-
from minitap.mobile_use.constants import EXECUTOR_MESSAGES_KEY
|
|
10
|
-
from minitap.mobile_use.context import MobileUseContext
|
|
11
|
-
from minitap.mobile_use.controllers.mobile_command_controller import (
|
|
12
|
-
get_screen_data,
|
|
13
|
-
)
|
|
14
|
-
from minitap.mobile_use.controllers.mobile_command_controller import (
|
|
15
|
-
paste_text as paste_text_controller,
|
|
16
|
-
)
|
|
17
|
-
from minitap.mobile_use.graph.state import State
|
|
18
|
-
from minitap.mobile_use.tools.tool_wrapper import ToolWrapper
|
|
19
|
-
from minitap.mobile_use.utils.ui_hierarchy import find_element_by_resource_id, get_element_text
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
def get_paste_text_tool(ctx: MobileUseContext):
|
|
23
|
-
@tool
|
|
24
|
-
def paste_text(
|
|
25
|
-
tool_call_id: Annotated[str, InjectedToolCallId],
|
|
26
|
-
state: Annotated[State, InjectedState],
|
|
27
|
-
agent_thought: str,
|
|
28
|
-
focused_element_resource_id: str,
|
|
29
|
-
):
|
|
30
|
-
"""
|
|
31
|
-
Pastes text previously copied via `copyTextFrom` into the currently focused field.
|
|
32
|
-
|
|
33
|
-
Note:
|
|
34
|
-
The text field must be focused before using this command.
|
|
35
|
-
|
|
36
|
-
Example:
|
|
37
|
-
- copyTextFrom: { id: "someId" }
|
|
38
|
-
- tapOn: { id: "searchFieldId" }
|
|
39
|
-
- pasteText
|
|
40
|
-
"""
|
|
41
|
-
output = paste_text_controller(ctx=ctx)
|
|
42
|
-
|
|
43
|
-
text_input_content = ""
|
|
44
|
-
screen_data = get_screen_data(screen_api_client=ctx.screen_api_client)
|
|
45
|
-
state.latest_ui_hierarchy = screen_data.elements
|
|
46
|
-
|
|
47
|
-
element = find_element_by_resource_id(
|
|
48
|
-
ui_hierarchy=state.latest_ui_hierarchy, resource_id=focused_element_resource_id
|
|
49
|
-
)
|
|
50
|
-
|
|
51
|
-
if element:
|
|
52
|
-
text_input_content = get_element_text(element)
|
|
53
|
-
|
|
54
|
-
has_failed = output is not None
|
|
55
|
-
|
|
56
|
-
agent_outcome = (
|
|
57
|
-
paste_text_wrapper.on_success_fn(text_input_content)
|
|
58
|
-
if not has_failed
|
|
59
|
-
else paste_text_wrapper.on_failure_fn(text_input_content)
|
|
60
|
-
)
|
|
61
|
-
|
|
62
|
-
tool_message = ToolMessage(
|
|
63
|
-
tool_call_id=tool_call_id,
|
|
64
|
-
content=agent_outcome,
|
|
65
|
-
additional_kwargs={"error": output} if has_failed else {},
|
|
66
|
-
status="error" if has_failed else "success",
|
|
67
|
-
)
|
|
68
|
-
return Command(
|
|
69
|
-
update=state.sanitize_update(
|
|
70
|
-
ctx=ctx,
|
|
71
|
-
update={
|
|
72
|
-
"agents_thoughts": [agent_thought, agent_outcome],
|
|
73
|
-
EXECUTOR_MESSAGES_KEY: [tool_message],
|
|
74
|
-
},
|
|
75
|
-
agent="executor",
|
|
76
|
-
),
|
|
77
|
-
)
|
|
78
|
-
|
|
79
|
-
return paste_text
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
paste_text_wrapper = ToolWrapper(
|
|
83
|
-
tool_fn_getter=get_paste_text_tool,
|
|
84
|
-
on_success_fn=lambda input_content: "Text pasted successfully. Here is the actual"
|
|
85
|
-
+ f"content of the text field : {repr(input_content)}",
|
|
86
|
-
on_failure_fn=lambda input_content: "Failed to paste text."
|
|
87
|
-
+ f"Here is the actual content of the text field : {repr(input_content)}",
|
|
88
|
-
)
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
minitap/mobile_use/__init__.py,sha256=e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855,0
|
|
2
|
-
minitap/mobile_use/agents/contextor/contextor.py,sha256=17f285db6fb21ab414ce7197fff62ca54a94c6359f570e9100a02578f559c714,1704
|
|
3
|
-
minitap/mobile_use/agents/cortex/cortex.md,sha256=6457d09b31e2e36db7a2921a8455e33fa47b6c748a86b6bf0490de95ef5dab08,9878
|
|
4
|
-
minitap/mobile_use/agents/cortex/cortex.py,sha256=de4fa731ab41090529e19e8868cee97c994cecd45e71f140cccf67dc7fefce7d,4858
|
|
5
|
-
minitap/mobile_use/agents/cortex/types.py,sha256=c33f2277752644d2185d84add03a493adaa530096d046d73366ab9121d99b946,361
|
|
6
|
-
minitap/mobile_use/agents/executor/executor.md,sha256=1a813a0b8fcb402c14ce505f3c070aca275599e39d845c4cce151a46f606e879,3124
|
|
7
|
-
minitap/mobile_use/agents/executor/executor.py,sha256=e740b76c9d2dfa832afbca60ac533f691963ae068c64dd97a96b2c58c80c925d,2850
|
|
8
|
-
minitap/mobile_use/agents/executor/tool_node.py,sha256=2ad729ede393882460ae3d180ac1c0e1ab1688f40b2017220aad1b059f6485c5,3900
|
|
9
|
-
minitap/mobile_use/agents/executor/utils.py,sha256=74cf2287053cd4fc763835870e5ae029ca36f6cd0ca7d50678ad05d52ab265b7,368
|
|
10
|
-
minitap/mobile_use/agents/hopper/hopper.md,sha256=2e9333ece8f6b76401ac2cce98ca06a025faa5dba6bacbbc344793ddf42292d0,362
|
|
11
|
-
minitap/mobile_use/agents/hopper/hopper.py,sha256=1c015cc911f225c9cb26415e0852d5905ded8e715fb928ad2595143870a781e3,1324
|
|
12
|
-
minitap/mobile_use/agents/orchestrator/human.md,sha256=6559026aa921b7ad7dddcf3dfcd5d9930252edd6484d60ea92ff6ca97ed028fc,229
|
|
13
|
-
minitap/mobile_use/agents/orchestrator/orchestrator.md,sha256=cc1a353c577f2eef42d9a528178ccc2c0a4a144a907a29878f9efe57e83b12fa,2546
|
|
14
|
-
minitap/mobile_use/agents/orchestrator/orchestrator.py,sha256=83524eefe8fc1d9639a2ffeb270dfed9e2a2b15af93e6e1d3d41d8e7c5b74951,4656
|
|
15
|
-
minitap/mobile_use/agents/orchestrator/types.py,sha256=f53dfdc99e8d50888ac1cde5f7f90ba5c87837a8eee8dd8efa31f2640394433c,335
|
|
16
|
-
minitap/mobile_use/agents/outputter/human.md,sha256=6b9b45c640b163554524b1aec4cd97134c628eeb8557a32e23c8f966d32f642e,771
|
|
17
|
-
minitap/mobile_use/agents/outputter/outputter.py,sha256=0539cd1bfa307c6e24136488a0481128da17c37f20128e63388b5c4aea5aae50,2750
|
|
18
|
-
minitap/mobile_use/agents/outputter/test_outputter.py,sha256=907b517c486f82a384a364e0bd202c00e8e8082c138461f6eead0e25c2779ba9,5538
|
|
19
|
-
minitap/mobile_use/agents/planner/human.md,sha256=cb37be2af568918e60238eaa785837178a3ba8f8112de86850d9a62914c18314,222
|
|
20
|
-
minitap/mobile_use/agents/planner/planner.md,sha256=dc13218df28b38fd2139803c9d013f0ba50899b2ae58545a3b8f3d2fd2aad734,3333
|
|
21
|
-
minitap/mobile_use/agents/planner/planner.py,sha256=cb7fa02cf5ae9e6f95646afc1c41642e5f9e58113dc17d51839f5236a33e67b7,2722
|
|
22
|
-
minitap/mobile_use/agents/planner/types.py,sha256=da551df70ae4ae574670bd8d79c4da1a82be88c24216034d6841a83d85c0c43c,1392
|
|
23
|
-
minitap/mobile_use/agents/planner/utils.py,sha256=11731d0382bf88ef77b38aaf75873486f293343cdd048372c57e626c652b4a22,1839
|
|
24
|
-
minitap/mobile_use/agents/summarizer/summarizer.py,sha256=3e1e92f9259c040487992636786f972dffe0a38d309a8c3758c9ff1aeff2f62c,1070
|
|
25
|
-
minitap/mobile_use/clients/device_hardware_client.py,sha256=9593380a7a3df32f02aa22717678c25e91367df26b1743abde9e57aec5dc2474,857
|
|
26
|
-
minitap/mobile_use/clients/ios_client.py,sha256=332bf47ac01bbd5bf6178a59eea7c7a30fed944f30907caea5388178f312d36b,1452
|
|
27
|
-
minitap/mobile_use/clients/screen_api_client.py,sha256=3615dc65d25c38b4d8dc5512f9adb3bcf69dca7a0298a472a6812f604a275c47,2019
|
|
28
|
-
minitap/mobile_use/config.py,sha256=9a2435a69c4453275439555d6af721a0c38bf7ca7ef1916598011c54c198c812,9931
|
|
29
|
-
minitap/mobile_use/constants.py,sha256=3acd9d6ade5bc772e902b3473f3ba12ddd04e7306963ca2bae49d1132d89ba46,95
|
|
30
|
-
minitap/mobile_use/context.py,sha256=fa4e43fb580db86c2ed707b1464d8363ead57332b40ea5688e0731ad57a40558,1747
|
|
31
|
-
minitap/mobile_use/controllers/__init__.py,sha256=e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855,0
|
|
32
|
-
minitap/mobile_use/controllers/mobile_command_controller.py,sha256=eb5f31cc6f2a711cbe3908f2561e841abe2214805475f77eeed3bc45731baddc,12217
|
|
33
|
-
minitap/mobile_use/controllers/platform_specific_commands_controller.py,sha256=8b4fc30108c242da41fd998751dbfd5e6a69e2957a2dbbe5d6fc43d6b55f727e,2705
|
|
34
|
-
minitap/mobile_use/graph/graph.py,sha256=c7b412e725b096eca8f212d704c3faf91d77eea4131f1fae7af1ee39bc57cdae,4269
|
|
35
|
-
minitap/mobile_use/graph/state.py,sha256=cfe67d15833efa18b28a86293bc5c713ff8c777778b0552bb6e25fa7070534aa,3371
|
|
36
|
-
minitap/mobile_use/main.py,sha256=7ac4dc592e3ce72bff602d67ba2f25b9b5e45e07a316e548d7c8e73735abf43d,3725
|
|
37
|
-
minitap/mobile_use/sdk/__init__.py,sha256=4e5555c0597242b9523827194a2500b9c6d7e5c04b1ccd2056c9b1f4d42a31cd,318
|
|
38
|
-
minitap/mobile_use/sdk/agent.py,sha256=1993dfb3b1db7c65ff5d9545090a56c5cd11b2b92092b7cdeba52cb020a4ff44,21384
|
|
39
|
-
minitap/mobile_use/sdk/builders/__init__.py,sha256=d6c96d39b80900a114698ef205ab5061a541f33bfa99c456d9345e5adb8ff6ff,424
|
|
40
|
-
minitap/mobile_use/sdk/builders/agent_config_builder.py,sha256=c63f452350822daab86d29c44a333909b623fc7ff7bcbf74e5f9104b24630bf5,7582
|
|
41
|
-
minitap/mobile_use/sdk/builders/index.py,sha256=64336ac3b3dea4673a48e95b8c5ac4196ecd5d2196380377d102593d0a1dc138,442
|
|
42
|
-
minitap/mobile_use/sdk/builders/task_request_builder.py,sha256=9e6cf7afb68af986d6a81487179bb79d28f63047a068725d92996dbcbe753376,6857
|
|
43
|
-
minitap/mobile_use/sdk/constants.py,sha256=436ba0700c6cf37ac0c9e3995a5f5a0d54ca87af72686eb9667a2c6a96e30f68,292
|
|
44
|
-
minitap/mobile_use/sdk/examples/README.md,sha256=b6780de3025b1897ad2ef42fa968f2a69b82f929465807f9590c4e9321dab6e6,2306
|
|
45
|
-
minitap/mobile_use/sdk/examples/__init__.py,sha256=c23868a2ca7e9b76e80d6835fe93c10e13ea8f2287dd6e785511b8ac30354e9b,46
|
|
46
|
-
minitap/mobile_use/sdk/examples/simple_photo_organizer.py,sha256=8ad1cebb5281e3663264560bd15b090add41d2821b1db77e4cbc829860c98df8,2606
|
|
47
|
-
minitap/mobile_use/sdk/examples/smart_notification_assistant.py,sha256=1d00658dc30c7bce5ef68369f982cd2d1932f53e2e2da6ded70cea13dc669c72,6362
|
|
48
|
-
minitap/mobile_use/sdk/types/__init__.py,sha256=5dd148d83bf6261ac8ac60c994e2496b5bf535591d0835807d5fe394fd85a954,1014
|
|
49
|
-
minitap/mobile_use/sdk/types/agent.py,sha256=390d5c642b3480f4a2203ddd28ec115c785f2576bec81e82e4db3c129399c020,2260
|
|
50
|
-
minitap/mobile_use/sdk/types/exceptions.py,sha256=bc710e6c1a3c8886c4358fd6d2fedd61edc8e70ef1bbde35e6e52c0eda73a7e0,3651
|
|
51
|
-
minitap/mobile_use/sdk/types/task.py,sha256=74743a398b63af62383528d5906824ae8aaba1e1885c75414b347623d7931f12,5837
|
|
52
|
-
minitap/mobile_use/sdk/utils.py,sha256=647f1f4a463c3029c3b0eb3c33f7dd778d5f5fd9d293224f5474595a60e1de6f,967
|
|
53
|
-
minitap/mobile_use/servers/config.py,sha256=8a4a6bce23e2093d047a91e135e2f88627f76ac12177d071f25a3ca739b3afeb,575
|
|
54
|
-
minitap/mobile_use/servers/device_hardware_bridge.py,sha256=52839ea009bb303a695a2af1ef8e7bbb6d90788229f3160dffebc8098923f6cb,7180
|
|
55
|
-
minitap/mobile_use/servers/device_screen_api.py,sha256=63bf866f17cde4ab97631b710080866b8427225d3857b2351ab83db38a9c5107,5064
|
|
56
|
-
minitap/mobile_use/servers/start_servers.py,sha256=1e86dc0fcbdf6e6570ae68c7097145e754f3c3448ca813d415b3e5ebb74db828,5037
|
|
57
|
-
minitap/mobile_use/servers/stop_servers.py,sha256=9a3dc2eafb3c13e420248b1844694c80112be32f0d336f54ecc1015cb6f27be9,7127
|
|
58
|
-
minitap/mobile_use/servers/utils.py,sha256=f3cc85da39f8d60cb840001be418562de7db95462370db9b79e96d884abe5c17,294
|
|
59
|
-
minitap/mobile_use/services/accessibility.py,sha256=42bcbe81b427ee6f6e82bcfe420fc40630db950bda354e3e433c2dda2e159628,3404
|
|
60
|
-
minitap/mobile_use/services/llm.py,sha256=3706edcb2132709c5cb931fac86ea31908a209347b341ec7b0f1cfbb27959c66,4260
|
|
61
|
-
minitap/mobile_use/tools/index.py,sha256=dbf9cfac4f319718c6f50b19d86a7d3aef0886caeb60db17c34ff4f18e640dc3,2692
|
|
62
|
-
minitap/mobile_use/tools/mobile/back.py,sha256=cf1053b22c4fbeb1c219578563d6d857425dcdff08af690149c6e52a0e29c195,1792
|
|
63
|
-
minitap/mobile_use/tools/mobile/clear_text.py,sha256=32de8458e0eb34a10ab239d4925120794e78b24118069a65c08fc9f8daf6b63a,10803
|
|
64
|
-
minitap/mobile_use/tools/mobile/copy_text_from.py,sha256=e58f2812fd2baeec91038eabb817d322fbecc6e9b079b4da725bc6c79ca9b02c,2718
|
|
65
|
-
minitap/mobile_use/tools/mobile/erase_one_char.py,sha256=e8c0a519a235271fa1cb785fe711e63e9ca14f4d33a61fbb39af04ec9bf18211,1960
|
|
66
|
-
minitap/mobile_use/tools/mobile/find_packages.py,sha256=78f3051f40307ba75655fbffe6fe3fc3954f158eb8ceb0d270cb81a5e807d81d,2554
|
|
67
|
-
minitap/mobile_use/tools/mobile/glimpse_screen.py,sha256=cd41702461f6a0aa5cd3f166af5395bb15e2305edfe60908da134595a35c10bf,2426
|
|
68
|
-
minitap/mobile_use/tools/mobile/input_text.py,sha256=e2d36bcdcc7f07e4d81e6d86a18740d703087e1865e1e1a2fcaa90a0061feed6,6367
|
|
69
|
-
minitap/mobile_use/tools/mobile/launch_app.py,sha256=e1879333c0eae92b22ec3c147edd26dfe41252bf8049e5954a0b72d5a8b8f650,2027
|
|
70
|
-
minitap/mobile_use/tools/mobile/long_press_on.py,sha256=b59bf885a10e7468069e5523eb7d23bfa6d41efc7d0521f7622e4dd2260fe879,2194
|
|
71
|
-
minitap/mobile_use/tools/mobile/open_link.py,sha256=ad363f83b254a8e3e5969b4d8b90ef4e1fc4eceacc9c976e02a3e110e80ad23f,1875
|
|
72
|
-
minitap/mobile_use/tools/mobile/paste_text.py,sha256=76a21937395730bd2a6cba9aa0f4aa96463cd320bac8281517c878a9096748d3,3038
|
|
73
|
-
minitap/mobile_use/tools/mobile/press_key.py,sha256=a22d416279c33f2e843aaf28e4466a7eeae59aa690312c8866b62a3f84b57d5b,1939
|
|
74
|
-
minitap/mobile_use/tools/mobile/stop_app.py,sha256=8fc1cf5682232d670270a7e909f365a795150643eac5310f042d792b79e7c0c0,2062
|
|
75
|
-
minitap/mobile_use/tools/mobile/swipe.py,sha256=23c31022bef827afbfe90c7f6a7d195e5bef57eb3972cd32b0d2aa054b4c6d26,5754
|
|
76
|
-
minitap/mobile_use/tools/mobile/tap.py,sha256=d7a3de2ddb78b051b22d7886553d75bab13562abfc8562957c15fb16dd484a0a,2297
|
|
77
|
-
minitap/mobile_use/tools/mobile/wait_for_animation_to_end.py,sha256=967d0df11dfb073dde6308761e9795e02c93ee2b0cbe17caf6edbe4a8beea28a,2493
|
|
78
|
-
minitap/mobile_use/tools/test_utils.py,sha256=efd16bd82030d782b7fa0227ed211a2a8ad616a1819252edbb64c58c340adb63,13241
|
|
79
|
-
minitap/mobile_use/tools/tool_wrapper.py,sha256=f0f27beaae25a1bcfd9b72bf994de84b2e5fba9e242d8ad18a8d1a97cd7619e4,454
|
|
80
|
-
minitap/mobile_use/tools/utils.py,sha256=d056e5baf268e19e9463bf0c1e923ed81eb0f699ed071d904a3585fb16924a7d,6717
|
|
81
|
-
minitap/mobile_use/utils/cli_helpers.py,sha256=1c53b6ea6cd2ba861302b182944c6a3a31dac27e316bca2c65cd6a3ca3256e81,1720
|
|
82
|
-
minitap/mobile_use/utils/cli_selection.py,sha256=62e949bf075e984b5d23b4a9880ff2bccf8f9e0f7ccb48120030a6a82075352b,4788
|
|
83
|
-
minitap/mobile_use/utils/conversations.py,sha256=8f1d924300ec3f6f7c71510c21e3011b75caca5b1fff06fdaccb377c3cde24ec,914
|
|
84
|
-
minitap/mobile_use/utils/decorators.py,sha256=0bb30fb4f5d5cef0aef45643e68e199d39910f1d771eb4086f3e083d566c16a5,3591
|
|
85
|
-
minitap/mobile_use/utils/errors.py,sha256=6c5566484cff48ce1eb168c3cbe93d6e5365457828f59616a15147598feef769,156
|
|
86
|
-
minitap/mobile_use/utils/file.py,sha256=1ca968613452a273b23e4f58460ab39f87255b02cdb6fb8ca04f4e628b346070,315
|
|
87
|
-
minitap/mobile_use/utils/logger.py,sha256=011fe08c39b111997ec685b9f0b378761607e35ac049234b5e86c2b58f29bbe3,5633
|
|
88
|
-
minitap/mobile_use/utils/media.py,sha256=29fa7f009a0f2bd60de2a9eba4a90e6eecc91cc67c2736b753506d48ab2bf5eb,2228
|
|
89
|
-
minitap/mobile_use/utils/recorder.py,sha256=f90c511a182553684fc4c51195dec6859c7867b83b66bd56dd13f0cdcab2b3ae,1724
|
|
90
|
-
minitap/mobile_use/utils/requests_utils.py,sha256=5c3a2e2aff7c521cd6a43b74c084e2244e1ff55065a5b722e6e251c6419861fd,1168
|
|
91
|
-
minitap/mobile_use/utils/shell_utils.py,sha256=b35ae7f863379adb86c9ba0f9b3b9d4954118d12aef1ffed0bc260b32d73d857,650
|
|
92
|
-
minitap/mobile_use/utils/test_ui_hierarchy.py,sha256=96c1549c05b4f7254a22d57dbd40aea860756f1e0b9d8cc24319383643448422,5911
|
|
93
|
-
minitap/mobile_use/utils/time.py,sha256=41bfaabb3751de11443ccb4a3f1f53d5ebacc7744c72e32695fdcc3d23f17d49,160
|
|
94
|
-
minitap/mobile_use/utils/ui_hierarchy.py,sha256=69bff27bcb29087ebab4946f52c72d833414bd7e8819d3610beb61cc39c9023d,3626
|
|
95
|
-
minitap_mobile_use-2.3.0.dist-info/WHEEL,sha256=ab6157bc637547491fb4567cd7ddf26b04d63382916ca16c29a5c8e94c9c9ef7,79
|
|
96
|
-
minitap_mobile_use-2.3.0.dist-info/entry_points.txt,sha256=663a29cfd551a4eaa0f27335f0bd7e4a732a4e39c76b68ef5c8dc444d4a285fa,60
|
|
97
|
-
minitap_mobile_use-2.3.0.dist-info/METADATA,sha256=0fc22ec4cc7d885577bf44a33f469ce7229b43045a8fa8be45fdfd54495e6be9,11917
|
|
98
|
-
minitap_mobile_use-2.3.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|