use-computer 0.0.37__tar.gz → 0.0.39__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.
- {use_computer-0.0.37 → use_computer-0.0.39}/PKG-INFO +1 -1
- {use_computer-0.0.37 → use_computer-0.0.39}/pyproject.toml +1 -1
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/environment/platforms/__init__.py +12 -2
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/environment/platforms/ubuntu.py +26 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/environment/use_computer.py +2 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/.env.example +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/.gitignore +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/.pre-commit-config.yaml +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/README.md +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/scripts/smoke_wheel.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/__init__.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/accessibility.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/__init__.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/base/__init__.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/base/actions.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/base/agent.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/base/artifacts.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/base/desktop.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/base/final_state.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/base/prompts.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/base/recordings.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/base/sandbox.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/base/screenshots.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/base/trajectory.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/core.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/debug/README.md +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/debug/__init__.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/debug/actions.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/debug/agent.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/debug/models.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/ios/__init__.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/ios/agent.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/ios/tools.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/prompts/anthropic.txt +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/prompts/gemini.txt +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/prompts/ios.txt +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/prompts/openai.txt +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/prompts/pyautogui.txt +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/providers/__init__.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/providers/anthropic.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/providers/gemini.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/providers/generic.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/providers/openai.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/agents/types.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/ax_transpile.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/client.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/display.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/errors.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/__init__.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/agents.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/environment/__init__.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/environment/gateway.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/environment/platforms/ios.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/environment/platforms/macos.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/environment/platforms/windows.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/environment/setup_files.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/environment/utils/__init__.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/environment/utils/verifier.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/ios/__init__.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/ios/apps.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/ios/environment.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/ios/input.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/macos/__init__.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/macos/keyboard.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/macos/mouse.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/models.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/parsers.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/py.typed +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/recording.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/resources/__init__.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/resources/accessibility.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/resources/display.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/resources/recording.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/resources/screenshot.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/retry.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/sandbox.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/screenshot.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/simulators.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/__init__.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/pre_command.ps1 +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/pre_command.sh +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/task.toml +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/test_ios.sh +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/test_ios_nograder.sh +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/test_macos.sh +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/test_macos_check.sh +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/test_macos_nograder.sh +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/test_ubuntu.sh +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/test_ubuntu_check.sh +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/test_ubuntu_nograder.sh +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/test_windows.sh +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/test_windows_check.sh +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/test_windows_nograder.sh +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/windows/__init__.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/use_computer/windows/shell.py +0 -0
- {use_computer-0.0.37 → use_computer-0.0.39}/uv.lock +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: use-computer
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.39
|
|
4
4
|
Summary: Python SDK for use.computer sandboxes across macOS, iOS simulators, Windows, and Ubuntu
|
|
5
5
|
Project-URL: Homepage, https://use.computer
|
|
6
6
|
Project-URL: Documentation, https://api.use.computer/docs
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "use-computer"
|
|
7
|
-
version = "0.0.
|
|
7
|
+
version = "0.0.39"
|
|
8
8
|
description = "Python SDK for use.computer sandboxes across macOS, iOS simulators, Windows, and Ubuntu"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10"
|
{use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/environment/platforms/__init__.py
RENAMED
|
@@ -127,7 +127,12 @@ class WindowsAdapter(PlatformAdapter):
|
|
|
127
127
|
is_mounted = True
|
|
128
128
|
|
|
129
129
|
async def create(self, env: Any) -> AsyncSandbox:
|
|
130
|
-
return await env._client.create(
|
|
130
|
+
return await env._client.create(
|
|
131
|
+
type="windows",
|
|
132
|
+
host=env._host,
|
|
133
|
+
version="" if env._snapshot else env._version,
|
|
134
|
+
snapshot=env._snapshot,
|
|
135
|
+
)
|
|
131
136
|
|
|
132
137
|
async def setup(self, env: Any) -> None:
|
|
133
138
|
await asyncio.sleep(5.0)
|
|
@@ -157,7 +162,12 @@ class UbuntuAdapter(PlatformAdapter):
|
|
|
157
162
|
is_mounted = True
|
|
158
163
|
|
|
159
164
|
async def create(self, env: Any) -> AsyncSandbox:
|
|
160
|
-
return await env._client.create(
|
|
165
|
+
return await env._client.create(
|
|
166
|
+
type="ubuntu",
|
|
167
|
+
host=env._host,
|
|
168
|
+
version="" if env._snapshot else env._version,
|
|
169
|
+
snapshot=env._snapshot,
|
|
170
|
+
)
|
|
161
171
|
|
|
162
172
|
async def setup(self, env: Any) -> None:
|
|
163
173
|
await asyncio.sleep(5.0)
|
{use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/environment/platforms/ubuntu.py
RENAMED
|
@@ -109,6 +109,8 @@ async def exec_local(
|
|
|
109
109
|
|
|
110
110
|
|
|
111
111
|
async def run_setup(env: Any) -> None:
|
|
112
|
+
await wake_desktop(env)
|
|
113
|
+
|
|
112
114
|
setup_dir = env._task_dir / "tests" / "setup"
|
|
113
115
|
|
|
114
116
|
for setup_file in read_setup_files(setup_dir):
|
|
@@ -120,6 +122,8 @@ async def run_setup(env: Any) -> None:
|
|
|
120
122
|
if not local.exists():
|
|
121
123
|
env.logger.warning(f"setup file missing on disk: {local}")
|
|
122
124
|
continue
|
|
125
|
+
parent = sh_quote(str(Path(vm_path).parent))
|
|
126
|
+
await env.ubuntu_sandbox.shell.run(f"mkdir -p {parent}", shell="bash", timeout=60)
|
|
123
127
|
env.logger.info(f"uploading {local.name} -> {vm_path} ({local.stat().st_size}B)")
|
|
124
128
|
await env.ubuntu_sandbox.upload(str(local), vm_path)
|
|
125
129
|
|
|
@@ -137,6 +141,28 @@ async def run_setup(env: Any) -> None:
|
|
|
137
141
|
env.logger.info("task setup complete")
|
|
138
142
|
|
|
139
143
|
|
|
144
|
+
async def wake_desktop(env: Any) -> None:
|
|
145
|
+
script = """
|
|
146
|
+
echo 'user:lume' | sudo chpasswd || true
|
|
147
|
+
export DISPLAY=:0
|
|
148
|
+
export XAUTHORITY=/home/user/.Xauthority
|
|
149
|
+
gsettings set org.gnome.desktop.screensaver lock-enabled false || true
|
|
150
|
+
gsettings set org.gnome.desktop.session idle-delay 0 || true
|
|
151
|
+
xset s off -dpms || true
|
|
152
|
+
xset dpms force on || true
|
|
153
|
+
xdotool key Escape || true
|
|
154
|
+
sleep 1
|
|
155
|
+
xdotool key ctrl+a || true
|
|
156
|
+
xdotool type lume || true
|
|
157
|
+
xdotool key Return || true
|
|
158
|
+
sleep 3
|
|
159
|
+
xset dpms force on || true
|
|
160
|
+
"""
|
|
161
|
+
result = await env.ubuntu_sandbox.shell.run(script, shell="bash", timeout=60)
|
|
162
|
+
if result.return_code != 0:
|
|
163
|
+
env.logger.warning(f"ubuntu desktop wake rc={result.return_code}: {result.stderr or ''}")
|
|
164
|
+
|
|
165
|
+
|
|
140
166
|
async def upload_file(env: Any, source: Path | str, target: str) -> None:
|
|
141
167
|
await env.ubuntu_sandbox.upload(str(source), target)
|
|
142
168
|
|
|
@@ -54,6 +54,7 @@ class UseComputerEnvironment(BaseEnvironment):
|
|
|
54
54
|
host: str = "",
|
|
55
55
|
platform: str = "macos",
|
|
56
56
|
version: str = "",
|
|
57
|
+
snapshot: str = "",
|
|
57
58
|
device_type: str = "",
|
|
58
59
|
runtime: str = "",
|
|
59
60
|
**kwargs,
|
|
@@ -64,6 +65,7 @@ class UseComputerEnvironment(BaseEnvironment):
|
|
|
64
65
|
self._platform = platform
|
|
65
66
|
self._platform_adapter = adapter_for(platform)
|
|
66
67
|
self._version = version or os.environ.get("USE_COMPUTER_VERSION", "")
|
|
68
|
+
self._snapshot = snapshot or os.environ.get("USE_COMPUTER_SNAPSHOT", "")
|
|
67
69
|
# YAML-level iOS pin (job-adhoc.yaml `environment.kwargs.device_type` /
|
|
68
70
|
# `.runtime`). Used as a fallback when the task.toml doesn't pin one.
|
|
69
71
|
# Lets the same dataset target different sims by editing one YAML line
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/environment/platforms/ios.py
RENAMED
|
File without changes
|
{use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/environment/platforms/macos.py
RENAMED
|
File without changes
|
{use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/environment/platforms/windows.py
RENAMED
|
File without changes
|
|
File without changes
|
{use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/environment/utils/__init__.py
RENAMED
|
File without changes
|
{use_computer-0.0.37 → use_computer-0.0.39}/use_computer/harbor/environment/utils/verifier.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/test_ios_nograder.sh
RENAMED
|
File without changes
|
|
File without changes
|
{use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/test_macos_check.sh
RENAMED
|
File without changes
|
{use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/test_macos_nograder.sh
RENAMED
|
File without changes
|
|
File without changes
|
{use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/test_ubuntu_check.sh
RENAMED
|
File without changes
|
{use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/test_ubuntu_nograder.sh
RENAMED
|
File without changes
|
|
File without changes
|
{use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/test_windows_check.sh
RENAMED
|
File without changes
|
{use_computer-0.0.37 → use_computer-0.0.39}/use_computer/tasks/templates/test_windows_nograder.sh
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|