cua-agent 0.4.29__tar.gz → 0.4.31__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 (52) hide show
  1. {cua_agent-0.4.29 → cua_agent-0.4.31}/PKG-INFO +1 -1
  2. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/integrations/hud/__init__.py +19 -0
  3. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/integrations/hud/agent.py +5 -4
  4. {cua_agent-0.4.29 → cua_agent-0.4.31}/pyproject.toml +1 -1
  5. {cua_agent-0.4.29 → cua_agent-0.4.31}/README.md +0 -0
  6. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/__init__.py +0 -0
  7. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/__main__.py +0 -0
  8. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/adapters/__init__.py +0 -0
  9. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/adapters/huggingfacelocal_adapter.py +0 -0
  10. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/adapters/human_adapter.py +0 -0
  11. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/adapters/mlxvlm_adapter.py +0 -0
  12. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/agent.py +0 -0
  13. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/callbacks/__init__.py +0 -0
  14. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/callbacks/base.py +0 -0
  15. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/callbacks/budget_manager.py +0 -0
  16. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/callbacks/image_retention.py +0 -0
  17. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/callbacks/logging.py +0 -0
  18. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/callbacks/operator_validator.py +0 -0
  19. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/callbacks/pii_anonymization.py +0 -0
  20. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/callbacks/prompt_instructions.py +0 -0
  21. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/callbacks/telemetry.py +0 -0
  22. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/callbacks/trajectory_saver.py +0 -0
  23. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/cli.py +0 -0
  24. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/computers/__init__.py +0 -0
  25. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/computers/base.py +0 -0
  26. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/computers/cua.py +0 -0
  27. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/computers/custom.py +0 -0
  28. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/decorators.py +0 -0
  29. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/human_tool/__init__.py +0 -0
  30. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/human_tool/__main__.py +0 -0
  31. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/human_tool/server.py +0 -0
  32. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/human_tool/ui.py +0 -0
  33. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/integrations/hud/proxy.py +0 -0
  34. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/loops/__init__.py +0 -0
  35. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/loops/anthropic.py +0 -0
  36. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/loops/base.py +0 -0
  37. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/loops/composed_grounded.py +0 -0
  38. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/loops/glm45v.py +0 -0
  39. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/loops/gta1.py +0 -0
  40. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/loops/model_types.csv +0 -0
  41. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/loops/omniparser.py +0 -0
  42. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/loops/openai.py +0 -0
  43. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/loops/uitars.py +0 -0
  44. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/proxy/examples.py +0 -0
  45. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/proxy/handlers.py +0 -0
  46. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/responses.py +0 -0
  47. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/types.py +0 -0
  48. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/ui/__init__.py +0 -0
  49. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/ui/__main__.py +0 -0
  50. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/ui/gradio/__init__.py +0 -0
  51. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/ui/gradio/app.py +0 -0
  52. {cua_agent-0.4.29 → cua_agent-0.4.31}/agent/ui/gradio/ui_components.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cua-agent
3
- Version: 0.4.29
3
+ Version: 0.4.31
4
4
  Summary: CUA (Computer Use) Agent for AI-driven computer interaction
5
5
  Author-Email: TryCua <gh@trycua.com>
6
6
  Requires-Python: >=3.12
@@ -11,6 +11,7 @@ Exports:
11
11
  import time
12
12
  from typing import Any, Optional
13
13
 
14
+ from agent.computers import is_agent_computer
14
15
  from datasets import load_dataset, Dataset
15
16
  from hud.datasets import Task, run_dataset
16
17
  from hud import trace
@@ -55,6 +56,15 @@ async def run_single_task(
55
56
  sample_task = dataset[task_id] # type: ignore[index]
56
57
  task_prompt = sample_task.get("prompt", f"Task {sample_task.get('id', 0)}") # type: ignore[attr-defined]
57
58
 
59
+ # Filter any existing Computer tools
60
+ # The eval framework will add its own Computer tool per task
61
+ if tools:
62
+ tools = [
63
+ tool
64
+ for tool in tools
65
+ if not is_agent_computer(tool)
66
+ ]
67
+
58
68
  with trace(name=task_prompt):
59
69
  task = Task(**sample_task) # type: ignore[arg-type]
60
70
 
@@ -118,6 +128,15 @@ async def run_full_dataset(
118
128
  dataset_name = "custom"
119
129
  job_name = job_name or f"Evaluation {time.strftime('%H:%M %Y-%m-%d')}"
120
130
 
131
+ # Filter any existing Computer tools
132
+ # The eval framework will add its own Computer tool per task
133
+ if tools:
134
+ tools = [
135
+ tool
136
+ for tool in tools
137
+ if not is_agent_computer(tool)
138
+ ]
139
+
121
140
  # Execute evaluation
122
141
  return await run_dataset(
123
142
  name=job_name,
@@ -128,10 +128,11 @@ class MCPComputerAgent(MCPAgent):
128
128
  }
129
129
  agent_tools: list[Any] = [computer_shim]
130
130
  if tools:
131
- for tool in tools:
132
- if is_agent_computer(tool):
133
- raise ValueError(f"Too many Computer tools: MCPComputerAgent already includes a Computer interface. Received a Computer tool in tools= (e.g., {tool!r}). Remove it and retry.")
134
- agent_tools.extend(tools)
131
+ agent_tools.extend([
132
+ tool
133
+ for tool in tools
134
+ if not is_agent_computer(tool)
135
+ ])
135
136
 
136
137
  agent_kwargs = {
137
138
  "model": self.model,
@@ -6,7 +6,7 @@ build-backend = "pdm.backend"
6
6
 
7
7
  [project]
8
8
  name = "cua-agent"
9
- version = "0.4.29"
9
+ version = "0.4.31"
10
10
  description = "CUA (Computer Use) Agent for AI-driven computer interaction"
11
11
  readme = "README.md"
12
12
  authors = [
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes