cua-agent 0.1.3__tar.gz → 0.1.4__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 cua-agent might be problematic. Click here for more details.

Files changed (69) hide show
  1. cua_agent-0.1.4/PKG-INFO +120 -0
  2. {cua_agent-0.1.3 → cua_agent-0.1.4}/README.md +4 -56
  3. cua_agent-0.1.4/agent/__init__.py +56 -0
  4. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/core/agent.py +0 -7
  5. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/core/telemetry.py +1 -9
  6. {cua_agent-0.1.3 → cua_agent-0.1.4}/pyproject.toml +4 -3
  7. cua_agent-0.1.3/PKG-INFO +0 -45
  8. cua_agent-0.1.3/agent/__init__.py +0 -22
  9. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/README.md +0 -0
  10. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/core/README.md +0 -0
  11. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/core/__init__.py +0 -0
  12. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/core/base_agent.py +0 -0
  13. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/core/callbacks.py +0 -0
  14. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/core/computer_agent.py +0 -0
  15. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/core/experiment.py +0 -0
  16. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/core/factory.py +0 -0
  17. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/core/loop.py +0 -0
  18. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/core/messages.py +0 -0
  19. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/core/tools/__init__.py +0 -0
  20. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/core/tools/base.py +0 -0
  21. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/core/tools/bash.py +0 -0
  22. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/core/tools/collection.py +0 -0
  23. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/core/tools/computer.py +0 -0
  24. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/core/tools/edit.py +0 -0
  25. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/core/tools/manager.py +0 -0
  26. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/__init__.py +0 -0
  27. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/anthropic/__init__.py +0 -0
  28. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/anthropic/api/client.py +0 -0
  29. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/anthropic/api/logging.py +0 -0
  30. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/anthropic/callbacks/manager.py +0 -0
  31. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/anthropic/loop.py +0 -0
  32. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/anthropic/messages/manager.py +0 -0
  33. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/anthropic/prompts.py +0 -0
  34. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/anthropic/tools/__init__.py +0 -0
  35. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/anthropic/tools/base.py +0 -0
  36. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/anthropic/tools/bash.py +0 -0
  37. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/anthropic/tools/collection.py +0 -0
  38. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/anthropic/tools/computer.py +0 -0
  39. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/anthropic/tools/edit.py +0 -0
  40. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/anthropic/tools/manager.py +0 -0
  41. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/anthropic/tools/run.py +0 -0
  42. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/anthropic/types.py +0 -0
  43. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/__init__.py +0 -0
  44. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/callbacks.py +0 -0
  45. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/clients/anthropic.py +0 -0
  46. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/clients/base.py +0 -0
  47. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/clients/groq.py +0 -0
  48. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/clients/openai.py +0 -0
  49. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/clients/utils.py +0 -0
  50. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/experiment.py +0 -0
  51. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/image_utils.py +0 -0
  52. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/loop.py +0 -0
  53. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/messages.py +0 -0
  54. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/parser.py +0 -0
  55. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/prompts.py +0 -0
  56. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/tool_manager.py +0 -0
  57. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/tools/__init__.py +0 -0
  58. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/tools/bash.py +0 -0
  59. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/tools/computer.py +0 -0
  60. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/tools/manager.py +0 -0
  61. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/types.py +0 -0
  62. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/utils.py +0 -0
  63. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/providers/omni/visualization.py +0 -0
  64. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/telemetry.py +0 -0
  65. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/types/__init__.py +0 -0
  66. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/types/base.py +0 -0
  67. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/types/messages.py +0 -0
  68. {cua_agent-0.1.3 → cua_agent-0.1.4}/agent/types/tools.py +0 -0
  69. {cua_agent-0.1.3 → cua_agent-0.1.4}/tests/test_agent.py +0 -0
@@ -0,0 +1,120 @@
1
+ Metadata-Version: 2.1
2
+ Name: cua-agent
3
+ Version: 0.1.4
4
+ Summary: CUA (Computer Use) Agent for AI-driven computer interaction
5
+ Author-Email: TryCua <gh@trycua.com>
6
+ Requires-Python: <3.13,>=3.10
7
+ Requires-Dist: httpx<0.29.0,>=0.27.0
8
+ Requires-Dist: aiohttp<4.0.0,>=3.9.3
9
+ Requires-Dist: asyncio
10
+ Requires-Dist: anyio<5.0.0,>=4.4.1
11
+ Requires-Dist: typing-extensions<5.0.0,>=4.12.2
12
+ Requires-Dist: pydantic<3.0.0,>=2.6.4
13
+ Requires-Dist: rich<14.0.0,>=13.7.1
14
+ Requires-Dist: python-dotenv<2.0.0,>=1.0.1
15
+ Requires-Dist: cua-computer<0.2.0,>=0.1.0
16
+ Requires-Dist: cua-core<0.2.0,>=0.1.0
17
+ Requires-Dist: certifi>=2024.2.2
18
+ Provides-Extra: anthropic
19
+ Requires-Dist: anthropic>=0.49.0; extra == "anthropic"
20
+ Requires-Dist: boto3<2.0.0,>=1.35.81; extra == "anthropic"
21
+ Provides-Extra: som
22
+ Requires-Dist: torch>=2.2.1; extra == "som"
23
+ Requires-Dist: torchvision>=0.17.1; extra == "som"
24
+ Requires-Dist: ultralytics>=8.0.0; extra == "som"
25
+ Requires-Dist: transformers>=4.38.2; extra == "som"
26
+ Requires-Dist: cua-som<0.2.0,>=0.1.0; extra == "som"
27
+ Requires-Dist: anthropic<0.47.0,>=0.46.0; extra == "som"
28
+ Requires-Dist: boto3<2.0.0,>=1.35.81; extra == "som"
29
+ Requires-Dist: openai<2.0.0,>=1.14.0; extra == "som"
30
+ Requires-Dist: groq<0.5.0,>=0.4.0; extra == "som"
31
+ Requires-Dist: dashscope<2.0.0,>=1.13.0; extra == "som"
32
+ Requires-Dist: requests<3.0.0,>=2.31.0; extra == "som"
33
+ Provides-Extra: all
34
+ Requires-Dist: torch>=2.2.1; extra == "all"
35
+ Requires-Dist: torchvision>=0.17.1; extra == "all"
36
+ Requires-Dist: ultralytics>=8.0.0; extra == "all"
37
+ Requires-Dist: transformers>=4.38.2; extra == "all"
38
+ Requires-Dist: cua-som<0.2.0,>=0.1.0; extra == "all"
39
+ Requires-Dist: anthropic<0.47.0,>=0.46.0; extra == "all"
40
+ Requires-Dist: boto3<2.0.0,>=1.35.81; extra == "all"
41
+ Requires-Dist: openai<2.0.0,>=1.14.0; extra == "all"
42
+ Requires-Dist: groq<0.5.0,>=0.4.0; extra == "all"
43
+ Requires-Dist: dashscope<2.0.0,>=1.13.0; extra == "all"
44
+ Requires-Dist: requests<3.0.0,>=2.31.0; extra == "all"
45
+ Description-Content-Type: text/markdown
46
+
47
+ <div align="center">
48
+ <h1>
49
+ <div class="image-wrapper" style="display: inline-block;">
50
+ <picture>
51
+ <source media="(prefers-color-scheme: dark)" alt="logo" height="150" srcset="../../img/logo_white.png" style="display: block; margin: auto;">
52
+ <source media="(prefers-color-scheme: light)" alt="logo" height="150" srcset="../../img/logo_black.png" style="display: block; margin: auto;">
53
+ <img alt="Shows my svg">
54
+ </picture>
55
+ </div>
56
+
57
+ [![Python](https://img.shields.io/badge/Python-333333?logo=python&logoColor=white&labelColor=333333)](#)
58
+ [![macOS](https://img.shields.io/badge/macOS-000000?logo=apple&logoColor=F0F0F0)](#)
59
+ [![Discord](https://img.shields.io/badge/Discord-%235865F2.svg?&logo=discord&logoColor=white)](https://discord.com/invite/mVnXXpdE85)
60
+ [![PyPI](https://img.shields.io/pypi/v/cua-computer?color=333333)](https://pypi.org/project/cua-computer/)
61
+ </h1>
62
+ </div>
63
+
64
+ **Agent** is a Computer Use (CUA) framework for running multi-app agentic workflows targeting macOS and Linux sandbox, supporting local (Ollama) and cloud model providers (OpenAI, Anthropic, Groq, DeepSeek, Qwen). The framework integrates with Microsoft's OmniParser for enhanced UI understanding and interaction.
65
+
66
+ ### Get started with Agent
67
+
68
+ ```python
69
+ from agent import ComputerAgent, AgentLoop, LLMProvider
70
+ from computer import Computer
71
+
72
+ computer = Computer(verbosity=logging.INFO)
73
+
74
+ agent = ComputerAgent(
75
+ computer=computer,
76
+ loop=AgentLoop.ANTHROPIC,
77
+ # loop=AgentLoop.OMNI,
78
+ model=LLM(provider=LLMProvider.ANTHROPIC, name="claude-3-7-sonnet-20250219"),
79
+ # model=LLM(provider=LLMProvider.OPENAI, name="gpt-4.5-preview"),
80
+ save_trajectory=True,
81
+ trajectory_dir=str(Path("trajectories")),
82
+ only_n_most_recent_images=3,
83
+ verbosity=logging.INFO,
84
+ )
85
+
86
+ tasks = [
87
+ """
88
+ Please help me with the following task:
89
+ 1. Open Safari browser
90
+ 2. Go to Wikipedia.org
91
+ 3. Search for "Claude AI"
92
+ 4. Summarize the main points you find about Claude AI
93
+ """
94
+ ]
95
+
96
+ async with agent:
97
+ for i, task in enumerate(tasks, 1):
98
+ print(f"\nExecuting task {i}/{len(tasks)}: {task}")
99
+ async for result in agent.run(task):
100
+ print(result)
101
+ print(f"Task {i} completed")
102
+ ```
103
+
104
+ ## Install
105
+
106
+ ### cua-agent
107
+
108
+ ```bash
109
+ pip install "cua-agent[all]"
110
+
111
+ # or install specific loop providers
112
+ pip install "cua-agent[anthropic]"
113
+ pip install "cua-agent[omni]"
114
+ ```
115
+
116
+ ## Run
117
+
118
+ Refer to these notebooks for step-by-step guides on how to use the Computer-Use Agent (CUA):
119
+
120
+ - [Agent Notebook](../../notebooks/agent_nb.ipynb) - Complete examples and workflows
@@ -60,67 +60,15 @@ async with agent:
60
60
  ### cua-agent
61
61
 
62
62
  ```bash
63
-
64
- pip install cua-agent[all]
63
+ pip install "cua-agent[all]"
65
64
 
66
65
  # or install specific loop providers
67
- pip install cua-agent[anthropic]
68
- pip install cua-agent[omni]
69
-
70
-
66
+ pip install "cua-agent[anthropic]"
67
+ pip install "cua-agent[omni]"
71
68
  ```
72
69
 
73
- ## Features
74
-
75
- ### OmniParser Integration
76
- - Enhanced UI understanding with element detection
77
- - Automatic bounding box detection for UI elements
78
- - Improved accuracy for complex UI interactions
79
- - Support for icon and text element recognition
80
-
81
- ### Basic Computer Control
82
- - Direct keyboard and mouse control
83
- - Window and application management
84
- - Screenshot capabilities
85
- - Basic UI element detection
86
-
87
- ### Provider Support
88
- - OpenAI (GPT-4V) - Recommended for OmniParser integration
89
- - Anthropic (Claude) - Strong general performance
90
- - Groq - Fast inference with Llama models
91
- - DeepSeek - Alternative model provider
92
- - Qwen - Alibaba's multimodal model
93
-
94
70
  ## Run
95
71
 
96
72
  Refer to these notebooks for step-by-step guides on how to use the Computer-Use Agent (CUA):
97
73
 
98
- - [Agent Notebook](../../notebooks/agent_nb.ipynb) - Complete examples and workflows
99
-
100
- ## Components
101
-
102
- The library consists of several components:
103
-
104
- - **Core**
105
- - `ComputerAgent`: Unified agent class supporting multiple loop types
106
- - `BaseComputerAgent`: Abstract base class for computer agents
107
-
108
- - **Providers**
109
- - `Anthropic`: Implementation for Anthropic Claude models
110
- - `Omni`: Implementation for multiple providers (OpenAI, Groq, etc.)
111
-
112
- - **Loops**
113
- - `AnthropicLoop`: Loop implementation for Anthropic
114
- - `OmniLoop`: Generic loop supporting multiple providers
115
-
116
- ## Configuration
117
-
118
- The agent can be configured with various parameters:
119
-
120
- - **loop_type**: The type of loop to use (ANTHROPIC or OMNI)
121
- - **provider**: AI provider to use with the loop
122
- - **model**: The AI model to use
123
- - **save_trajectory**: Whether to save screenshots and logs
124
- - **only_n_most_recent_images**: Only keep a specific number of recent images
125
-
126
- See the [Core README](./agent/core/README.md) for more details on the unified agent.
74
+ - [Agent Notebook](../../notebooks/agent_nb.ipynb) - Complete examples and workflows
@@ -0,0 +1,56 @@
1
+ """CUA (Computer Use) Agent for AI-driven computer interaction."""
2
+
3
+ import sys
4
+ import logging
5
+
6
+ __version__ = "0.1.0"
7
+
8
+ # Initialize logging
9
+ logger = logging.getLogger("cua.agent")
10
+
11
+ # Initialize telemetry when the package is imported
12
+ try:
13
+ # Import from core telemetry for basic functions
14
+ from core.telemetry import (
15
+ is_telemetry_enabled,
16
+ flush,
17
+ record_event,
18
+ )
19
+
20
+ # Import set_dimension from our own telemetry module
21
+ from .core.telemetry import set_dimension
22
+
23
+ # Check if telemetry is enabled
24
+ if is_telemetry_enabled():
25
+ logger.info("Telemetry is enabled")
26
+
27
+ # Record package initialization
28
+ record_event(
29
+ "module_init",
30
+ {
31
+ "module": "agent",
32
+ "version": __version__,
33
+ "python_version": sys.version,
34
+ },
35
+ )
36
+
37
+ # Set the package version as a dimension
38
+ set_dimension("agent_version", __version__)
39
+
40
+ # Flush events to ensure they're sent
41
+ flush()
42
+ else:
43
+ logger.info("Telemetry is disabled")
44
+ except ImportError as e:
45
+ # Telemetry not available
46
+ logger.warning(f"Telemetry not available: {e}")
47
+ except Exception as e:
48
+ # Other issues with telemetry
49
+ logger.warning(f"Error initializing telemetry: {e}")
50
+
51
+ from .core.factory import AgentFactory
52
+ from .core.agent import ComputerAgent
53
+ from .providers.omni.types import LLMProvider, LLM
54
+ from .types.base import Provider, AgentLoop
55
+
56
+ __all__ = ["AgentFactory", "Provider", "ComputerAgent", "AgentLoop", "LLMProvider", "LLM"]
@@ -83,13 +83,6 @@ class ComputerAgent(BaseComputerAgent):
83
83
  # Store telemetry preference
84
84
  self.telemetry_enabled = telemetry_enabled
85
85
 
86
- # Pass telemetry preference to computer if available
87
- if hasattr(computer, "telemetry_enabled"):
88
- # Computer doesn't have a setter for telemetry_enabled
89
- # Use disable_telemetry() method if telemetry is disabled
90
- if not telemetry_enabled and hasattr(computer, "disable_telemetry"):
91
- computer.disable_telemetry()
92
-
93
86
  # Process the model configuration
94
87
  self.model = self._process_model_config(model, loop)
95
88
  self.loop_type = loop
@@ -4,8 +4,7 @@ import logging
4
4
  import os
5
5
  import platform
6
6
  import sys
7
- import time
8
- from typing import Dict, Any, Optional
7
+ from typing import Dict, Any
9
8
 
10
9
  # Import the core telemetry module
11
10
  TELEMETRY_AVAILABLE = False
@@ -106,13 +105,6 @@ def enable_telemetry() -> bool:
106
105
  return False
107
106
 
108
107
 
109
- def disable_telemetry() -> None:
110
- """Disable telemetry for this session."""
111
- global TELEMETRY_AVAILABLE
112
- TELEMETRY_AVAILABLE = False
113
- logger.info("Telemetry disabled for this session")
114
-
115
-
116
108
  def is_telemetry_enabled() -> bool:
117
109
  """Check if telemetry is enabled.
118
110
 
@@ -6,8 +6,9 @@ build-backend = "pdm.backend"
6
6
 
7
7
  [project]
8
8
  name = "cua-agent"
9
- version = "0.1.3"
9
+ version = "0.1.4"
10
10
  description = "CUA (Computer Use) Agent for AI-driven computer interaction"
11
+ readme = "README.md"
11
12
  authors = [
12
13
  { name = "TryCua", email = "gh@trycua.com" },
13
14
  ]
@@ -79,7 +80,7 @@ target-version = [
79
80
 
80
81
  [tool.ruff]
81
82
  line-length = 100
82
- target-version = "0.1.3"
83
+ target-version = "0.1.4"
83
84
  select = [
84
85
  "E",
85
86
  "F",
@@ -93,7 +94,7 @@ docstring-code-format = true
93
94
 
94
95
  [tool.mypy]
95
96
  strict = true
96
- python_version = "0.1.3"
97
+ python_version = "0.1.4"
97
98
  ignore_missing_imports = true
98
99
  disallow_untyped_defs = true
99
100
  check_untyped_defs = true
cua_agent-0.1.3/PKG-INFO DELETED
@@ -1,45 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: cua-agent
3
- Version: 0.1.3
4
- Summary: CUA (Computer Use) Agent for AI-driven computer interaction
5
- Author-Email: TryCua <gh@trycua.com>
6
- Requires-Python: <3.13,>=3.10
7
- Requires-Dist: httpx<0.29.0,>=0.27.0
8
- Requires-Dist: aiohttp<4.0.0,>=3.9.3
9
- Requires-Dist: asyncio
10
- Requires-Dist: anyio<5.0.0,>=4.4.1
11
- Requires-Dist: typing-extensions<5.0.0,>=4.12.2
12
- Requires-Dist: pydantic<3.0.0,>=2.6.4
13
- Requires-Dist: rich<14.0.0,>=13.7.1
14
- Requires-Dist: python-dotenv<2.0.0,>=1.0.1
15
- Requires-Dist: cua-computer<0.2.0,>=0.1.0
16
- Requires-Dist: cua-core<0.2.0,>=0.1.0
17
- Requires-Dist: certifi>=2024.2.2
18
- Provides-Extra: anthropic
19
- Requires-Dist: anthropic>=0.49.0; extra == "anthropic"
20
- Requires-Dist: boto3<2.0.0,>=1.35.81; extra == "anthropic"
21
- Provides-Extra: som
22
- Requires-Dist: torch>=2.2.1; extra == "som"
23
- Requires-Dist: torchvision>=0.17.1; extra == "som"
24
- Requires-Dist: ultralytics>=8.0.0; extra == "som"
25
- Requires-Dist: transformers>=4.38.2; extra == "som"
26
- Requires-Dist: cua-som<0.2.0,>=0.1.0; extra == "som"
27
- Requires-Dist: anthropic<0.47.0,>=0.46.0; extra == "som"
28
- Requires-Dist: boto3<2.0.0,>=1.35.81; extra == "som"
29
- Requires-Dist: openai<2.0.0,>=1.14.0; extra == "som"
30
- Requires-Dist: groq<0.5.0,>=0.4.0; extra == "som"
31
- Requires-Dist: dashscope<2.0.0,>=1.13.0; extra == "som"
32
- Requires-Dist: requests<3.0.0,>=2.31.0; extra == "som"
33
- Provides-Extra: all
34
- Requires-Dist: torch>=2.2.1; extra == "all"
35
- Requires-Dist: torchvision>=0.17.1; extra == "all"
36
- Requires-Dist: ultralytics>=8.0.0; extra == "all"
37
- Requires-Dist: transformers>=4.38.2; extra == "all"
38
- Requires-Dist: cua-som<0.2.0,>=0.1.0; extra == "all"
39
- Requires-Dist: anthropic<0.47.0,>=0.46.0; extra == "all"
40
- Requires-Dist: boto3<2.0.0,>=1.35.81; extra == "all"
41
- Requires-Dist: openai<2.0.0,>=1.14.0; extra == "all"
42
- Requires-Dist: groq<0.5.0,>=0.4.0; extra == "all"
43
- Requires-Dist: dashscope<2.0.0,>=1.13.0; extra == "all"
44
- Requires-Dist: requests<3.0.0,>=2.31.0; extra == "all"
45
-
@@ -1,22 +0,0 @@
1
- """CUA (Computer Use) Agent for AI-driven computer interaction."""
2
-
3
- __version__ = "0.1.0"
4
-
5
- # Initialize telemetry when the package is imported
6
- try:
7
- from core.telemetry import enable_telemetry, set_dimension
8
-
9
- # Enable telemetry by default
10
- enable_telemetry()
11
- # Set the package version as a dimension
12
- set_dimension("agent_version", __version__)
13
- except ImportError:
14
- # Core telemetry not available
15
- pass
16
-
17
- from .core.factory import AgentFactory
18
- from .core.agent import ComputerAgent
19
- from .providers.omni.types import LLMProvider, LLM
20
- from .types.base import Provider, AgentLoop
21
-
22
- __all__ = ["AgentFactory", "Provider", "ComputerAgent", "AgentLoop", "LLMProvider", "LLM"]
File without changes
File without changes
File without changes
File without changes
File without changes