You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
|`{computer-use-model}`| A single model to perform all computer-use tasks |
206
202
|`{grounding-model}+{any-vlm-with-tools}`|[Composed](https://cua.ai/docs/agent-sdk/supported-agents/composed-agents) with VLM for captioning and grounding LLM for element detection |
207
203
|`moondream3+{any-llm-with-tools}`|[Composed](https://cua.ai/docs/agent-sdk/supported-agents/composed-agents) with Moondream3 for captioning and UI element detection |
208
204
|`human/human`| A [human-in-the-loop](https://cua.ai/docs/agent-sdk/supported-agents/human-in-the-loop) in place of a model |
@@ -372,32 +368,38 @@ Learn more in the [SOM documentation](./libs/python/som/README.md).
372
368
## 2025
373
369
374
370
### September 2025
371
+
375
372
-**Hack the North Competition**: First benchmark-driven hackathon track with guaranteed YC interview prize. Winner achieved 68.3% on OSWorld-Tiny ([Blog Post](https://www.cua.ai/blog/hack-the-north))
376
373
-**Global Hackathon Launch**: Ollama × Cua global online competition for creative local/hybrid agents
-**Trajectory Viewer**: Visual debugging tool for agent actions ([Blog Post](https://www.cua.ai/blog/trajectory-viewer))
392
392
-**Training Data Collection**: Tools for creating computer-use training datasets ([Blog Post](https://www.cua.ai/blog/training-computer-use-models-trajectories-1))
393
393
-**App-Use Framework**: Mobile and desktop app automation capabilities
394
394
395
395
### April 2025
396
+
396
397
-**Agent Framework v0.4**: Unified API for 100+ model configurations
397
398
-**UI-TARS Integration**: Local inference support for ByteDance's desktop-optimized model
398
399
-**Blog Series**: "Build Your Own Operator" tutorials ([Part 1](https://www.cua.ai/blog/build-your-own-operator-on-macos-1) | [Part 2](https://www.cua.ai/blog/build-your-own-operator-on-macos-2))
399
400
400
401
### March 2025
402
+
401
403
-**Initial Public Release**: Core Agent SDK and Computer SDK
402
404
-**Lume VM Manager**: macOS VM management tool for local development
description: This document explains how telemetry works in CUA libraries and how you can control it.
4
-
icon: RadioTower
3
+
description: How telemetry works in Cua and how to control it
5
4
---
6
5
7
-
# Telemetry in CUA
6
+
# Telemetry
8
7
9
-
CUA tracks anonymized usage and error report statistics; we ascribe to Posthog's approach as detailed [here](https://posthog.com/blog/open-source-telemetry-ethical). If you would like to opt out of sending anonymized info, you can set `telemetry_enabled` to false.
8
+
Cua collects anonymized usage and error statistics. We follow [Posthog's ethical telemetry approach](https://posthog.com/blog/open-source-telemetry-ethical). To opt out, set `telemetry_enabled` to false.
10
9
11
-
## What telemetry data we collect
10
+
## What we collect
12
11
13
-
CUA libraries collect usage data to help improve our software. We have two categories of telemetry:
12
+
### Enabled by default (opt-out)
14
13
15
-
### Opt-Out Telemetry (Enabled by Default)
14
+
- System info: OS, OS version, Python version
15
+
- Module initialization: When modules are imported and their versions
16
+
- Performance: Agent run durations, step counts, token usage, API costs
17
+
- Session tracking: Anonymous session IDs and run IDs
16
18
17
-
Basic performance metrics and system information that help us understand usage patterns:
18
-
19
-
-**System Information**: Operating system, OS version, Python version
20
-
-**Module Initialization**: When modules are imported and their versions
21
-
-**Performance Metrics**: Agent run durations, step counts, token usage, and API costs
22
-
-**Session Tracking**: Anonymous session IDs and run IDs for performance analysis
23
-
24
-
### Opt-In Telemetry (Disabled by Default)
25
-
26
-
**Conversation Trajectory Logging**: Full conversation history including:
19
+
### Disabled by default (opt-in)
27
20
21
+
**Trajectory logging** captures full conversation history:
28
22
- User messages and agent responses
29
-
- Computer actions and their outputs
30
-
-Reasoning traces from the agent
23
+
- Computer actions and outputs
24
+
-Agent reasoning traces
31
25
32
-
**Important**: Trajectory logging is **opt-in only** and must be explicitly enabled.
26
+
Must be explicitly enabled.
33
27
34
-
### We do NOT collect:
28
+
### We don't collect
35
29
36
30
- Personal information or user identifiers
37
31
- API keys or credentials
38
32
- File contents or application data
39
-
- Information about files being accessed
40
-
- Actual screenshots or screen contents (unless trajectory logging is enabled)
41
-
- Specific text being typed, including user inputs, model outputs, computer outputs, or tool call outputs (unless trajectory logging is enabled)
42
-
43
-
## Controlling Telemetry
33
+
- Files being accessed
34
+
- Screenshots or screen contents (unless trajectory logging is enabled)
35
+
- Text being typed, user inputs, model outputs, computer outputs, or tool call outputs (unless trajectory logging is enabled)
44
36
45
-
We are committed to transparency and user control over telemetry. There are two ways to control telemetry:
37
+
## How to disable
46
38
47
-
### 1. Environment Variable (Global Control)
39
+
### Environment variable (global)
48
40
49
-
Telemetry is enabled by default. To disable telemetry, set the `CUA_TELEMETRY_ENABLED` environment variable to a falsy value (`0`, `false`, `no`, or `off`):
41
+
Set `CUA_TELEMETRY_ENABLED` to a falsy value (`0`, `false`, `no`, or `off`):
50
42
51
43
```bash
52
-
# Disable telemetry before running your script
53
44
export CUA_TELEMETRY_ENABLED=false
54
-
55
-
# Or as part of the command
56
-
CUA_TELEMETRY_ENABLED=1 python your_script.py
57
-
58
45
```
59
46
60
-
Or from Python:
47
+
Or in Python:
61
48
62
49
```python
63
50
import os
64
51
os.environ["CUA_TELEMETRY_ENABLED"] ="false"
65
52
```
66
53
67
-
### 2. Instance-Level Control
54
+
### Per instance
68
55
69
-
#### Computer SDK
56
+
**Computer SDK:**
70
57
71
58
```python
72
59
from computer import Computer
73
60
74
-
# Enable telemetry (default)
75
-
computer = Computer(telemetry_enabled=True)
76
-
77
-
# Disable telemetry
78
61
computer = Computer(telemetry_enabled=False)
79
62
```
80
63
81
-
#### Agent SDK
64
+
**Agent SDK:**
82
65
83
66
```python
84
67
from agent import ComputerAgent
85
68
import os
86
69
87
70
# Basic telemetry - performance metrics only (opt-out, enabled by default)
88
71
agent = ComputerAgent(
89
-
model="claude-3-5-sonnet-20241022",
72
+
model="claude-sonnet-4-5-20250929",
90
73
telemetry_enabled=True# Default is True
91
74
)
92
75
93
76
# Enable telemetry with full conversation trajectory logging (opt-in)
94
77
agent = ComputerAgent(
95
-
model="claude-3-5-sonnet-20241022",
78
+
model="claude-sonnet-4-5-20250929",
96
79
telemetry_enabled={
97
80
"log_trajectory": True# Logs full conversation items
98
81
}
99
82
)
100
83
101
-
# Disable telemetry completely
84
+
# Disable completely
102
85
agent = ComputerAgent(
103
-
model="claude-3-5-sonnet-20241022",
86
+
model="claude-sonnet-4-5-20250929",
104
87
telemetry_enabled=False
105
88
)
106
89
107
-
# Disable telemetry completely using environment variables
108
-
os.environ["CUA_TELEMETRY_ENABLED"] ="false"
90
+
# Enable trajectory logging (opt-in)
109
91
agent = ComputerAgent(
110
-
model="claude-3-5-sonnet-20241022"
92
+
model="claude-sonnet-4-5-20250929",
93
+
telemetry_enabled={"log_trajectory": True}
111
94
)
112
95
```
113
96
114
-
You can check if telemetry is enabled for an instance:
97
+
Check status:
115
98
116
99
```python
117
-
print(computer.telemetry_enabled) #Will print True or False
118
-
print(agent.telemetry_enabled) #Will print True, False, or dict
100
+
print(computer.telemetry_enabled) # True or False
101
+
print(agent.telemetry_enabled) # True, False, or dict
119
102
```
120
103
121
-
Note that telemetry settings must be configured during initialization and cannot be changed after the object is created.
104
+
Telemetry settings are configured at initialization and can't be changed afterward.
|**computer_initialized**| • `os`: Operating system (e.g., 'windows', 'darwin', 'linux')<br />• `os_version`: OS version<br />• `python_version`: Python version | Triggered when a Computer instance is created |
130
113
|**module_init**| • `module`: "computer"<br />• `version`: Package version<br />• `python_version`: Full Python version string | Triggered once when the computer package is imported for the first time |
@@ -140,6 +123,6 @@ Note that telemetry settings must be configured during initialization and cannot
140
123
|**agent_step**| • `session_id`: Agent session UUID<br />• `run_id`: Run UUID<br />• `step`: Step number (incremental)<br />• `timestamp`: Unix timestamp<br />• `duration_seconds`: Duration of previous step | Triggered on each agent response/step during a run |
141
124
|**agent_usage**| • `session_id`: Agent session UUID<br />• `run_id`: Run UUID<br />• `step`: Current step number<br />• `prompt_tokens`: Tokens in prompt<br />• `completion_tokens`: Tokens in response<br />• `total_tokens`: Total tokens used<br />• `response_cost`: Cost of this API call | Triggered whenever usage information is received from LLM API |
142
125
143
-
## Transparency
126
+
## Questions
144
127
145
-
We believe in being transparent about the data we collect. If you have any questions about our telemetry practices, please open an issue on our GitHub repository.
128
+
Questions about telemetry? Open an issue on our [GitHub repository](https://github.com/trycua/cua).
0 commit comments