Skip to content

Commit 68e22d8

Browse files
implement review remarks
1 parent f18e657 commit 68e22d8

File tree

11 files changed

+32
-17
lines changed

11 files changed

+32
-17
lines changed
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
from .android_base_tool import AndroidBaseTool
22
from .computer_base_tool import ComputerBaseTool
3+
from .tool_tags import ToolTags
34

45
__all__ = [
56
"AndroidBaseTool",
67
"ComputerBaseTool",
8+
"ToolTags",
79
]
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
from enum import Enum
2+
3+
4+
class ToolTags(str, Enum):
5+
"""Default tool tags."""
6+
7+
ANDROID = "android"
8+
COMPUTER = "computer"
9+
SCALED_AGENT_OS = "scaled_agent_os"

src/askui/tools/agent_os.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
from PIL import Image
55
from pydantic import BaseModel, ConfigDict, Field
66

7+
from askui.models.shared import ToolTags
8+
79
if TYPE_CHECKING:
810
from askui.tools.askui.askui_ui_controller_grpc.generated.AgentOS_Send_Request_2501 import ( # noqa: E501
911
RenderObjectStyle,
@@ -201,7 +203,7 @@ def tags(self) -> list[str]:
201203
list[str]: A list of tags that identify this agent OS type.
202204
"""
203205
if not hasattr(self, "_tags"):
204-
self._tags = ["computer"]
206+
self._tags = [ToolTags.COMPUTER.value]
205207
return self._tags
206208

207209
@tags.setter

src/askui/tools/android/agent_os_facade.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
from PIL import Image
44

5+
from askui.models.shared import ToolTags
56
from askui.tools.android.agent_os import ANDROID_KEY, AndroidAgentOs, AndroidDisplay
67
from askui.utils.image_utils import scale_coordinates, scale_image_to_fit
78

@@ -17,7 +18,7 @@ def __init__(self, agent_os: AndroidAgentOs) -> None:
1718
self._agent_os: AndroidAgentOs = agent_os
1819
self._target_resolution: Tuple[int, int] = (1024, 768)
1920
self._real_screen_resolution: Optional[Tuple[int, int]] = None
20-
self.tags = self._agent_os.tags + ["agent_os_facade"]
21+
self.tags = self._agent_os.tags + [ToolTags.SCALED_AGENT_OS.value]
2122

2223
def connect(self) -> None:
2324
self._agent_os.connect()

src/askui/tools/android/tools.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from PIL import Image
55
from typing_extensions import override
66

7-
from askui.models.shared import AndroidBaseTool
7+
from askui.models.shared import AndroidBaseTool, ToolTags
88
from askui.tools.android.agent_os import ANDROID_KEY
99
from askui.tools.android.agent_os_facade import AndroidAgentOsFacade
1010

@@ -26,7 +26,7 @@ def __init__(self, agent_os_facade: AndroidAgentOsFacade | None = None) -> None:
2626
"""
2727
),
2828
agent_os=agent_os_facade,
29-
required_tags=["agent_os_facade"],
29+
required_tags=[ToolTags.SCALED_AGENT_OS.value],
3030
)
3131

3232
@override
@@ -81,7 +81,7 @@ def __init__(self, agent_os_facade: AndroidAgentOsFacade | None = None) -> None:
8181
"required": ["x", "y", "repeat", "repeat_delay_in_ms"],
8282
},
8383
agent_os=agent_os_facade,
84-
required_tags=["agent_os_facade"],
84+
required_tags=[ToolTags.SCALED_AGENT_OS.value],
8585
)
8686

8787
@override
@@ -189,7 +189,7 @@ def __init__(self, agent_os_facade: AndroidAgentOsFacade | None = None) -> None:
189189
"required": ["x1", "y1", "x2", "y2"],
190190
},
191191
agent_os=agent_os_facade,
192-
required_tags=["agent_os_facade"],
192+
required_tags=[ToolTags.SCALED_AGENT_OS.value],
193193
)
194194

195195
@override
@@ -296,7 +296,7 @@ def __init__(self, agent_os_facade: AndroidAgentOsFacade | None = None) -> None:
296296
"required": ["x1", "y1", "x2", "y2"],
297297
},
298298
agent_os=agent_os_facade,
299-
required_tags=["agent_os_facade"],
299+
required_tags=[ToolTags.SCALED_AGENT_OS.value],
300300
)
301301

302302
@override

src/askui/tools/computer/get_mouse_position_tool.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from askui.models.shared import ComputerBaseTool
1+
from askui.models.shared import ComputerBaseTool, ToolTags
22
from askui.tools.computer_agent_os_facade import ComputerAgentOsFacade
33

44

@@ -10,7 +10,7 @@ def __init__(self, agent_os: ComputerAgentOsFacade | None = None) -> None:
1010
name="computer_get_mouse_position",
1111
description="Get the current mouse position.",
1212
agent_os=agent_os,
13-
required_tags=["agent_os_facade"],
13+
required_tags=[ToolTags.SCALED_AGENT_OS.value],
1414
)
1515

1616
def __call__(self) -> str:

src/askui/tools/computer/mouse_scroll_tool.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from askui.models.shared import ComputerBaseTool
1+
from askui.models.shared import ComputerBaseTool, ToolTags
22
from askui.tools.computer_agent_os_facade import ComputerAgentOsFacade
33

44

@@ -30,7 +30,7 @@ def __init__(self, agent_os: ComputerAgentOsFacade | None = None) -> None:
3030
"required": ["x", "y"],
3131
},
3232
agent_os=agent_os,
33-
required_tags=["agent_os_facade"],
33+
required_tags=[ToolTags.SCALED_AGENT_OS.value],
3434
)
3535

3636
def __call__(self, x: int, y: int) -> str:

src/askui/tools/computer/move_mouse_tool.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from askui.models.shared import ComputerBaseTool
1+
from askui.models.shared import ComputerBaseTool, ToolTags
22
from askui.tools.computer_agent_os_facade import ComputerAgentOsFacade
33

44

@@ -24,7 +24,7 @@ def __init__(self, agent_os: ComputerAgentOsFacade | None = None) -> None:
2424
"required": ["x", "y"],
2525
},
2626
agent_os=agent_os,
27-
required_tags=["agent_os_facade"],
27+
required_tags=[ToolTags.SCALED_AGENT_OS.value],
2828
)
2929

3030
def __call__(self, x: int, y: int) -> str:

src/askui/tools/computer/screenshot_tool.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
from PIL import Image
22

3-
from askui.models.shared import ComputerBaseTool
3+
from askui.models.shared import ComputerBaseTool, ToolTags
44
from askui.tools.computer_agent_os_facade import ComputerAgentOsFacade
55

66

@@ -12,7 +12,7 @@ def __init__(self, agent_os: ComputerAgentOsFacade | None = None) -> None:
1212
name="computer_screenshot",
1313
description="Take a screenshot of the current screen.",
1414
agent_os=agent_os,
15-
required_tags=["agent_os_facade"],
15+
required_tags=[ToolTags.SCALED_AGENT_OS.value],
1616
)
1717

1818
def __call__(self) -> tuple[str, Image.Image]:

src/askui/tools/computer/type_tool.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,5 +34,5 @@ def __call__(self, text: str, typing_speed: int = 50) -> str:
3434
self.agent_os.type(text, typing_speed)
3535
return (
3636
f"Text was typed: {text} with typing speed: "
37-
" {typing_speed} characters per minute."
37+
f" {typing_speed} characters per minute."
3838
)

0 commit comments

Comments
 (0)