Skip to content

Commit aad3621

Browse files
fix: add VisionAgent and AndroidVisionAgent aliases for ComputerAgent and AndroidAgent to ensure backward compatibility
1 parent 93650fa commit aad3621

3 files changed

Lines changed: 26 additions & 3 deletions

File tree

src/askui/__init__.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
os.environ["FASTMCP_EXPERIMENTAL_ENABLE_NEW_OPENAPI_PARSER"] = "true"
99

10-
from .agent import ComputerAgent
10+
from .agent import ComputerAgent, VisionAgent
1111
from .agent_base import Agent
1212
from .agent_settings import AgentSettings
1313
from .locators import Locator
@@ -47,7 +47,7 @@
4747
from .utils.source_utils import InputSource
4848

4949
try:
50-
from .android_agent import AndroidAgent
50+
from .android_agent import AndroidAgent, AndroidVisionAgent
5151

5252
_ANDROID_AGENT_AVAILABLE = True
5353
except ImportError:
@@ -66,6 +66,7 @@
6666
__all__ = [
6767
"Agent",
6868
"ComputerAgent",
69+
"VisionAgent",
6970
"AgentSettings",
7071
"ActSettings",
7172
"Base64ImageSourceParam",
@@ -104,7 +105,7 @@
104105
]
105106

106107
if _ANDROID_AGENT_AVAILABLE:
107-
__all__ += ["AndroidAgent"]
108+
__all__ += ["AndroidAgent", "AndroidVisionAgent"]
108109

109110
if _WEB_AGENTS_AVAILABLE:
110111
__all__ += ["WebVisionAgent", "WebTestingAgent"]

src/askui/agent.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import logging
2+
import warnings
23
from typing import Annotated, Literal, Optional
34

45
from pydantic import ConfigDict, Field, validate_call
@@ -501,3 +502,13 @@ def cli(
501502
"ComputerAgent received instruction to execute '%s' on cli", command
502503
)
503504
self.tools.os.run_command(command)
505+
506+
507+
class VisionAgent(ComputerAgent):
508+
def __init__(self, *args, **kwargs) -> None: # type: ignore
509+
warnings.warn(
510+
"VisionAgent is deprecated, use ComputerAgent instead.",
511+
DeprecationWarning,
512+
stacklevel=2,
513+
)
514+
super().__init__(*args, **kwargs)

src/askui/android_agent.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import logging
2+
import warnings
23
from typing import Annotated, overload
34

45
from pydantic import ConfigDict, Field, validate_call
@@ -352,3 +353,13 @@ def set_device_by_serial_number(
352353
f"set_device_by_serial_number(device_sn='{device_sn}')",
353354
)
354355
self.os.set_device_by_serial_number(device_sn)
356+
357+
358+
class AndroidVisionAgent(AndroidAgent):
359+
def __init__(self, *args, **kwargs) -> None: # type: ignore
360+
warnings.warn(
361+
"AndroidVisionAgent is deprecated, use AndroidAgent instead.",
362+
DeprecationWarning,
363+
stacklevel=2,
364+
)
365+
super().__init__(*args, **kwargs)

0 commit comments

Comments
 (0)