genworker-ai 0.1.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.
- genworker_ai-0.1.0/.gitignore +31 -0
- genworker_ai-0.1.0/.python-version +1 -0
- genworker_ai-0.1.0/LICENSE +21 -0
- genworker_ai-0.1.0/PKG-INFO +113 -0
- genworker_ai-0.1.0/README.md +86 -0
- genworker_ai-0.1.0/genworker/__init__.py +3 -0
- genworker_ai-0.1.0/genworker/__main__.py +5 -0
- genworker_ai-0.1.0/genworker/agent.py +1266 -0
- genworker_ai-0.1.0/pyproject.toml +43 -0
- genworker_ai-0.1.0/uv.lock +565 -0
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Python-generated files
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[oc]
|
|
4
|
+
build/
|
|
5
|
+
dist/
|
|
6
|
+
wheels/
|
|
7
|
+
*.egg-info
|
|
8
|
+
|
|
9
|
+
# Virtual environments
|
|
10
|
+
.venv
|
|
11
|
+
|
|
12
|
+
# Environment files
|
|
13
|
+
.env
|
|
14
|
+
.env.*
|
|
15
|
+
.env.local
|
|
16
|
+
.env.*.local
|
|
17
|
+
.envrc
|
|
18
|
+
|
|
19
|
+
# Logs and coverage
|
|
20
|
+
*.log
|
|
21
|
+
.coverage
|
|
22
|
+
|
|
23
|
+
# Editor / OS files
|
|
24
|
+
.vscode/
|
|
25
|
+
.idea/
|
|
26
|
+
.DS_Store
|
|
27
|
+
Thumbs.db
|
|
28
|
+
|
|
29
|
+
# Caches
|
|
30
|
+
.pytest_cache/
|
|
31
|
+
.mypy_cache/
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
3.13
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Fabio Katsumi
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: genworker-ai
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: Desktop AI Agent powered by Claude Computer Use
|
|
5
|
+
Project-URL: Homepage, https://github.com/fabiokatsumi/GENWORKER
|
|
6
|
+
Project-URL: Repository, https://github.com/fabiokatsumi/GENWORKER
|
|
7
|
+
Project-URL: Issues, https://github.com/fabiokatsumi/GENWORKER/issues
|
|
8
|
+
Author-email: Fabio Katsumi <fabio.katsumi@gmail.com>
|
|
9
|
+
License-Expression: MIT
|
|
10
|
+
License-File: LICENSE
|
|
11
|
+
Keywords: agent,ai,automation,claude,desktop
|
|
12
|
+
Classifier: Development Status :: 3 - Alpha
|
|
13
|
+
Classifier: Intended Audience :: Developers
|
|
14
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
15
|
+
Classifier: Programming Language :: Python :: 3
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
17
|
+
Classifier: Topic :: Software Development :: Libraries
|
|
18
|
+
Requires-Python: >=3.13
|
|
19
|
+
Requires-Dist: anthropic>=0.83.0
|
|
20
|
+
Requires-Dist: openai>=2.23.0
|
|
21
|
+
Requires-Dist: pillow>=12.1.1
|
|
22
|
+
Requires-Dist: pyautogui>=0.9.54
|
|
23
|
+
Requires-Dist: pyperclip>=1.11.0
|
|
24
|
+
Requires-Dist: python-dotenv>=1.2.1
|
|
25
|
+
Requires-Dist: screeninfo>=0.8.1
|
|
26
|
+
Description-Content-Type: text/markdown
|
|
27
|
+
|
|
28
|
+
# GenWorker
|
|
29
|
+
|
|
30
|
+
A desktop AI agent powered by Claude Computer Use. GenWorker takes natural-language tasks and executes them on your desktop by controlling the mouse, keyboard, and shell — using Claude's computer, bash, and text editor tools.
|
|
31
|
+
|
|
32
|
+
## Features
|
|
33
|
+
|
|
34
|
+
- **Computer Use** — mouse clicks, keyboard input, and screenshots via Claude's computer tool
|
|
35
|
+
- **Shell Execution** — runs PowerShell/CMD/bash commands
|
|
36
|
+
- **File Editing** — view, create, and edit files with the str_replace_editor tool
|
|
37
|
+
- **Multi-monitor support** — select which display to control
|
|
38
|
+
- **Adaptive screenshots** — fast for CLI, slower for GUI loads, with JPEG compression
|
|
39
|
+
- **Retry & error recovery** — exponential backoff on API errors, automatic recovery hints
|
|
40
|
+
- **Context management** — token tracking, smart compaction, and image pruning
|
|
41
|
+
- **Task timeout** — configurable time limit with graceful termination
|
|
42
|
+
|
|
43
|
+
## Installation
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
pip install genworker-ai
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Requirements
|
|
50
|
+
|
|
51
|
+
- Python 3.13+
|
|
52
|
+
- An [Anthropic API key](https://console.anthropic.com/)
|
|
53
|
+
|
|
54
|
+
## Quick start
|
|
55
|
+
|
|
56
|
+
1. Create a `.env` file (or export the variable):
|
|
57
|
+
|
|
58
|
+
```
|
|
59
|
+
ANTHROPIC_API_KEY=sk-ant-...
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
2. Run a task:
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
genworker "Open Notepad and write Hello World"
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
Or start interactively:
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
genworker
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## Usage
|
|
75
|
+
|
|
76
|
+
```
|
|
77
|
+
genworker [OPTIONS] [TASK]
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
| Option | Description |
|
|
81
|
+
|---|---|
|
|
82
|
+
| `TASK` | Natural-language task to execute (interactive prompt if omitted) |
|
|
83
|
+
| `--monitor`, `-m` | Monitor index to use (default: `0`) |
|
|
84
|
+
| `--list-monitors`, `-l` | List available monitors and exit |
|
|
85
|
+
| `--no-thinking` | Disable Claude's extended thinking |
|
|
86
|
+
| `--timeout`, `-t` | Task timeout in seconds (default: `600`) |
|
|
87
|
+
|
|
88
|
+
You can also run it as a Python module:
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
python -m genworker "Open Chrome and search for Python docs"
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## Configuration
|
|
95
|
+
|
|
96
|
+
All settings can be configured via environment variables or a `.env` file:
|
|
97
|
+
|
|
98
|
+
| Variable | Default | Description |
|
|
99
|
+
|---|---|---|
|
|
100
|
+
| `ANTHROPIC_API_KEY` | — | **Required.** Your Anthropic API key |
|
|
101
|
+
| `MODEL` | `claude-sonnet-4-5-20250929` | Claude model to use |
|
|
102
|
+
| `MAX_STEPS` | `100` | Maximum agent loop iterations |
|
|
103
|
+
| `TASK_TIMEOUT` | `600` | Task timeout in seconds |
|
|
104
|
+
| `THINKING_BUDGET` | `4096` | Token budget for extended thinking |
|
|
105
|
+
| `SCREENSHOT_INTERVAL` | `1.0` | Seconds between screenshots |
|
|
106
|
+
| `SCREENSHOT_QUALITY` | `75` | JPEG compression quality (1-100) |
|
|
107
|
+
| `MAX_CONTEXT_IMAGES` | `15` | Max screenshots kept in context |
|
|
108
|
+
| `BASH_TIMEOUT` | `30` | Shell command timeout in seconds |
|
|
109
|
+
| `MONITOR_INDEX` | `0` | Default monitor index |
|
|
110
|
+
|
|
111
|
+
## License
|
|
112
|
+
|
|
113
|
+
[MIT](LICENSE)
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# GenWorker
|
|
2
|
+
|
|
3
|
+
A desktop AI agent powered by Claude Computer Use. GenWorker takes natural-language tasks and executes them on your desktop by controlling the mouse, keyboard, and shell — using Claude's computer, bash, and text editor tools.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- **Computer Use** — mouse clicks, keyboard input, and screenshots via Claude's computer tool
|
|
8
|
+
- **Shell Execution** — runs PowerShell/CMD/bash commands
|
|
9
|
+
- **File Editing** — view, create, and edit files with the str_replace_editor tool
|
|
10
|
+
- **Multi-monitor support** — select which display to control
|
|
11
|
+
- **Adaptive screenshots** — fast for CLI, slower for GUI loads, with JPEG compression
|
|
12
|
+
- **Retry & error recovery** — exponential backoff on API errors, automatic recovery hints
|
|
13
|
+
- **Context management** — token tracking, smart compaction, and image pruning
|
|
14
|
+
- **Task timeout** — configurable time limit with graceful termination
|
|
15
|
+
|
|
16
|
+
## Installation
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
pip install genworker-ai
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Requirements
|
|
23
|
+
|
|
24
|
+
- Python 3.13+
|
|
25
|
+
- An [Anthropic API key](https://console.anthropic.com/)
|
|
26
|
+
|
|
27
|
+
## Quick start
|
|
28
|
+
|
|
29
|
+
1. Create a `.env` file (or export the variable):
|
|
30
|
+
|
|
31
|
+
```
|
|
32
|
+
ANTHROPIC_API_KEY=sk-ant-...
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
2. Run a task:
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
genworker "Open Notepad and write Hello World"
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
Or start interactively:
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
genworker
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Usage
|
|
48
|
+
|
|
49
|
+
```
|
|
50
|
+
genworker [OPTIONS] [TASK]
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
| Option | Description |
|
|
54
|
+
|---|---|
|
|
55
|
+
| `TASK` | Natural-language task to execute (interactive prompt if omitted) |
|
|
56
|
+
| `--monitor`, `-m` | Monitor index to use (default: `0`) |
|
|
57
|
+
| `--list-monitors`, `-l` | List available monitors and exit |
|
|
58
|
+
| `--no-thinking` | Disable Claude's extended thinking |
|
|
59
|
+
| `--timeout`, `-t` | Task timeout in seconds (default: `600`) |
|
|
60
|
+
|
|
61
|
+
You can also run it as a Python module:
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
python -m genworker "Open Chrome and search for Python docs"
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## Configuration
|
|
68
|
+
|
|
69
|
+
All settings can be configured via environment variables or a `.env` file:
|
|
70
|
+
|
|
71
|
+
| Variable | Default | Description |
|
|
72
|
+
|---|---|---|
|
|
73
|
+
| `ANTHROPIC_API_KEY` | — | **Required.** Your Anthropic API key |
|
|
74
|
+
| `MODEL` | `claude-sonnet-4-5-20250929` | Claude model to use |
|
|
75
|
+
| `MAX_STEPS` | `100` | Maximum agent loop iterations |
|
|
76
|
+
| `TASK_TIMEOUT` | `600` | Task timeout in seconds |
|
|
77
|
+
| `THINKING_BUDGET` | `4096` | Token budget for extended thinking |
|
|
78
|
+
| `SCREENSHOT_INTERVAL` | `1.0` | Seconds between screenshots |
|
|
79
|
+
| `SCREENSHOT_QUALITY` | `75` | JPEG compression quality (1-100) |
|
|
80
|
+
| `MAX_CONTEXT_IMAGES` | `15` | Max screenshots kept in context |
|
|
81
|
+
| `BASH_TIMEOUT` | `30` | Shell command timeout in seconds |
|
|
82
|
+
| `MONITOR_INDEX` | `0` | Default monitor index |
|
|
83
|
+
|
|
84
|
+
## License
|
|
85
|
+
|
|
86
|
+
[MIT](LICENSE)
|