hyperbrowser 0.64.0__tar.gz → 0.66.0__tar.gz

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 hyperbrowser might be problematic. Click here for more details.

Files changed (60) hide show
  1. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/PKG-INFO +1 -1
  2. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/async_manager/computer_action.py +40 -4
  3. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/sync_manager/computer_action.py +40 -4
  4. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/models/__init__.py +8 -0
  5. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/models/computer_action.py +49 -6
  6. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/pyproject.toml +1 -1
  7. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/LICENSE +0 -0
  8. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/README.md +0 -0
  9. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/__init__.py +0 -0
  10. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/async_client.py +0 -0
  11. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/base.py +0 -0
  12. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/async_manager/agents/__init__.py +0 -0
  13. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/async_manager/agents/browser_use.py +0 -0
  14. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/async_manager/agents/claude_computer_use.py +0 -0
  15. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/async_manager/agents/cua.py +0 -0
  16. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/async_manager/agents/gemini_computer_use.py +0 -0
  17. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/async_manager/agents/hyper_agent.py +0 -0
  18. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/async_manager/crawl.py +0 -0
  19. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/async_manager/extension.py +0 -0
  20. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/async_manager/extract.py +0 -0
  21. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/async_manager/profile.py +0 -0
  22. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/async_manager/scrape.py +0 -0
  23. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/async_manager/session.py +0 -0
  24. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/async_manager/team.py +0 -0
  25. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/sync_manager/agents/__init__.py +0 -0
  26. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/sync_manager/agents/browser_use.py +0 -0
  27. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/sync_manager/agents/claude_computer_use.py +0 -0
  28. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/sync_manager/agents/cua.py +0 -0
  29. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/sync_manager/agents/gemini_computer_use.py +0 -0
  30. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/sync_manager/agents/hyper_agent.py +0 -0
  31. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/sync_manager/crawl.py +0 -0
  32. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/sync_manager/extension.py +0 -0
  33. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/sync_manager/extract.py +0 -0
  34. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/sync_manager/profile.py +0 -0
  35. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/sync_manager/scrape.py +0 -0
  36. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/sync_manager/session.py +0 -0
  37. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/managers/sync_manager/team.py +0 -0
  38. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/client/sync.py +0 -0
  39. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/config.py +0 -0
  40. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/exceptions.py +0 -0
  41. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/models/agents/browser_use.py +0 -0
  42. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/models/agents/claude_computer_use.py +0 -0
  43. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/models/agents/cua.py +0 -0
  44. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/models/agents/gemini_computer_use.py +0 -0
  45. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/models/agents/hyper_agent.py +0 -0
  46. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/models/consts.py +0 -0
  47. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/models/crawl.py +0 -0
  48. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/models/extension.py +0 -0
  49. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/models/extract.py +0 -0
  50. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/models/profile.py +0 -0
  51. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/models/scrape.py +0 -0
  52. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/models/session.py +0 -0
  53. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/models/team.py +0 -0
  54. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/tools/__init__.py +0 -0
  55. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/tools/anthropic.py +0 -0
  56. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/tools/openai.py +0 -0
  57. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/tools/schema.py +0 -0
  58. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/transport/async_transport.py +0 -0
  59. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/transport/base.py +0 -0
  60. {hyperbrowser-0.64.0 → hyperbrowser-0.66.0}/hyperbrowser/transport/sync.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hyperbrowser
3
- Version: 0.64.0
3
+ Version: 0.66.0
4
4
  Summary: Python SDK for hyperbrowser
5
5
  License: MIT
6
6
  License-File: LICENSE
@@ -1,5 +1,5 @@
1
1
  from pydantic import BaseModel
2
- from typing import Union, List
2
+ from typing import Union, List, Optional
3
3
  from hyperbrowser.models import (
4
4
  SessionDetail,
5
5
  ComputerActionParams,
@@ -12,6 +12,10 @@ from hyperbrowser.models import (
12
12
  ScrollActionParams,
13
13
  TypeTextActionParams,
14
14
  Coordinate,
15
+ HoldKeyActionParams,
16
+ MouseDownActionParams,
17
+ MouseUpActionParams,
18
+ ComputerActionMouseButton,
15
19
  )
16
20
 
17
21
 
@@ -42,9 +46,9 @@ class ComputerActionManager:
42
46
  async def click(
43
47
  self,
44
48
  session: Union[SessionDetail, str],
45
- x: int,
46
- y: int,
47
- button: str = "left",
49
+ x: Optional[int] = None,
50
+ y: Optional[int] = None,
51
+ button: ComputerActionMouseButton = "left",
48
52
  num_clicks: int = 1,
49
53
  return_screenshot: bool = False,
50
54
  ) -> ComputerActionResponse:
@@ -82,6 +86,38 @@ class ComputerActionManager:
82
86
  params = PressKeysActionParams(keys=keys, return_screenshot=return_screenshot)
83
87
  return await self._execute_request(session, params)
84
88
 
89
+ async def hold_key(
90
+ self,
91
+ session: Union[SessionDetail, str],
92
+ key: str,
93
+ duration: int,
94
+ return_screenshot: bool = False,
95
+ ) -> ComputerActionResponse:
96
+ params = HoldKeyActionParams(
97
+ key=key, duration=duration, return_screenshot=return_screenshot
98
+ )
99
+ return await self._execute_request(session, params)
100
+
101
+ async def mouse_down(
102
+ self,
103
+ session: Union[SessionDetail, str],
104
+ button: ComputerActionMouseButton = "left",
105
+ return_screenshot: bool = False,
106
+ ) -> ComputerActionResponse:
107
+ params = MouseDownActionParams(
108
+ button=button, return_screenshot=return_screenshot
109
+ )
110
+ return await self._execute_request(session, params)
111
+
112
+ async def mouse_up(
113
+ self,
114
+ session: Union[SessionDetail, str],
115
+ button: ComputerActionMouseButton = "left",
116
+ return_screenshot: bool = False,
117
+ ) -> ComputerActionResponse:
118
+ params = MouseUpActionParams(button=button, return_screenshot=return_screenshot)
119
+ return await self._execute_request(session, params)
120
+
85
121
  async def drag(
86
122
  self,
87
123
  session: Union[SessionDetail, str],
@@ -1,5 +1,5 @@
1
1
  from pydantic import BaseModel
2
- from typing import Union, List
2
+ from typing import Union, List, Optional
3
3
  from hyperbrowser.models import (
4
4
  SessionDetail,
5
5
  ComputerActionParams,
@@ -12,6 +12,10 @@ from hyperbrowser.models import (
12
12
  ScrollActionParams,
13
13
  TypeTextActionParams,
14
14
  Coordinate,
15
+ HoldKeyActionParams,
16
+ MouseDownActionParams,
17
+ MouseUpActionParams,
18
+ ComputerActionMouseButton,
15
19
  )
16
20
 
17
21
 
@@ -42,9 +46,9 @@ class ComputerActionManager:
42
46
  def click(
43
47
  self,
44
48
  session: Union[SessionDetail, str],
45
- x: int,
46
- y: int,
47
- button: str = "left",
49
+ x: Optional[int] = None,
50
+ y: Optional[int] = None,
51
+ button: ComputerActionMouseButton = "left",
48
52
  num_clicks: int = 1,
49
53
  return_screenshot: bool = False,
50
54
  ) -> ComputerActionResponse:
@@ -82,6 +86,38 @@ class ComputerActionManager:
82
86
  params = PressKeysActionParams(keys=keys, return_screenshot=return_screenshot)
83
87
  return self._execute_request(session, params)
84
88
 
89
+ def hold_key(
90
+ self,
91
+ session: Union[SessionDetail, str],
92
+ key: str,
93
+ duration: int,
94
+ return_screenshot: bool = False,
95
+ ) -> ComputerActionResponse:
96
+ params = HoldKeyActionParams(
97
+ key=key, duration=duration, return_screenshot=return_screenshot
98
+ )
99
+ return self._execute_request(session, params)
100
+
101
+ def mouse_down(
102
+ self,
103
+ session: Union[SessionDetail, str],
104
+ button: ComputerActionMouseButton = "left",
105
+ return_screenshot: bool = False,
106
+ ) -> ComputerActionResponse:
107
+ params = MouseDownActionParams(
108
+ button=button, return_screenshot=return_screenshot
109
+ )
110
+ return self._execute_request(session, params)
111
+
112
+ def mouse_up(
113
+ self,
114
+ session: Union[SessionDetail, str],
115
+ button: ComputerActionMouseButton = "left",
116
+ return_screenshot: bool = False,
117
+ ) -> ComputerActionResponse:
118
+ params = MouseUpActionParams(button=button, return_screenshot=return_screenshot)
119
+ return self._execute_request(session, params)
120
+
85
121
  def drag(
86
122
  self,
87
123
  session: Union[SessionDetail, str],
@@ -113,11 +113,15 @@ from .computer_action import (
113
113
  ComputerActionResponse,
114
114
  Coordinate,
115
115
  DragActionParams,
116
+ HoldKeyActionParams,
117
+ MouseDownActionParams,
118
+ MouseUpActionParams,
116
119
  MoveMouseActionParams,
117
120
  PressKeysActionParams,
118
121
  ScreenshotActionParams,
119
122
  ScrollActionParams,
120
123
  TypeTextActionParams,
124
+ ComputerActionMouseButton,
121
125
  )
122
126
  from .session import (
123
127
  BasicResponse,
@@ -272,9 +276,13 @@ __all__ = [
272
276
  "ComputerActionResponse",
273
277
  "Coordinate",
274
278
  "DragActionParams",
279
+ "HoldKeyActionParams",
280
+ "MouseDownActionParams",
281
+ "MouseUpActionParams",
275
282
  "MoveMouseActionParams",
276
283
  "PressKeysActionParams",
277
284
  "ScreenshotActionParams",
278
285
  "ScrollActionParams",
279
286
  "TypeTextActionParams",
287
+ "ComputerActionMouseButton",
280
288
  ]
@@ -8,13 +8,21 @@ class ComputerAction(str, Enum):
8
8
 
9
9
  CLICK = "click"
10
10
  DRAG = "drag"
11
- PRESS_KEYS = "press_keys"
11
+ HOLD_KEY = "hold_key"
12
+ MOUSE_DOWN = "mouse_down"
13
+ MOUSE_UP = "mouse_up"
12
14
  MOVE_MOUSE = "move_mouse"
15
+ PRESS_KEYS = "press_keys"
13
16
  SCREENSHOT = "screenshot"
14
17
  SCROLL = "scroll"
15
18
  TYPE_TEXT = "type_text"
16
19
 
17
20
 
21
+ ComputerActionMouseButton = Literal[
22
+ "left", "right", "middle", "back", "forward", "wheel"
23
+ ]
24
+
25
+
18
26
  class Coordinate(BaseModel):
19
27
  """Coordinate model for drag actions."""
20
28
 
@@ -28,11 +36,9 @@ class ClickActionParams(BaseModel):
28
36
  model_config = ConfigDict(use_enum_values=True)
29
37
 
30
38
  action: Literal[ComputerAction.CLICK] = ComputerAction.CLICK
31
- x: int
32
- y: int
33
- button: Literal["left", "right", "middle", "back", "forward", "wheel"] = Field(
34
- default="left"
35
- )
39
+ x: Optional[int] = Field(default=None)
40
+ y: Optional[int] = Field(default=None)
41
+ button: ComputerActionMouseButton = Field(default="left")
36
42
  num_clicks: int = Field(serialization_alias="numClicks", default=1)
37
43
  return_screenshot: bool = Field(
38
44
  serialization_alias="returnScreenshot", default=False
@@ -63,6 +69,43 @@ class PressKeysActionParams(BaseModel):
63
69
  )
64
70
 
65
71
 
72
+ class HoldKeyActionParams(BaseModel):
73
+ """Parameters for hold key action."""
74
+
75
+ model_config = ConfigDict(use_enum_values=True)
76
+
77
+ action: Literal[ComputerAction.HOLD_KEY] = ComputerAction.HOLD_KEY
78
+ key: str
79
+ duration: int
80
+ return_screenshot: bool = Field(
81
+ serialization_alias="returnScreenshot", default=False
82
+ )
83
+
84
+
85
+ class MouseDownActionParams(BaseModel):
86
+ """Parameters for mouse down action."""
87
+
88
+ model_config = ConfigDict(use_enum_values=True)
89
+
90
+ action: Literal[ComputerAction.MOUSE_DOWN] = ComputerAction.MOUSE_DOWN
91
+ button: ComputerActionMouseButton = Field(default="left")
92
+ return_screenshot: bool = Field(
93
+ serialization_alias="returnScreenshot", default=False
94
+ )
95
+
96
+
97
+ class MouseUpActionParams(BaseModel):
98
+ """Parameters for mouse up action."""
99
+
100
+ model_config = ConfigDict(use_enum_values=True)
101
+
102
+ action: Literal[ComputerAction.MOUSE_UP] = ComputerAction.MOUSE_UP
103
+ button: ComputerActionMouseButton = Field(default="left")
104
+ return_screenshot: bool = Field(
105
+ serialization_alias="returnScreenshot", default=False
106
+ )
107
+
108
+
66
109
  class MoveMouseActionParams(BaseModel):
67
110
  """Parameters for move mouse action."""
68
111
 
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "hyperbrowser"
3
- version = "0.64.0"
3
+ version = "0.66.0"
4
4
  description = "Python SDK for hyperbrowser"
5
5
  authors = ["Nikhil Shahi <nshahi1998@gmail.com>"]
6
6
  license = "MIT"
File without changes
File without changes