wcgw 1.5.0__tar.gz → 1.5.2__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 wcgw might be problematic. Click here for more details.
- {wcgw-1.5.0 → wcgw-1.5.2}/PKG-INFO +6 -3
- {wcgw-1.5.0 → wcgw-1.5.2}/README.md +4 -1
- {wcgw-1.5.0 → wcgw-1.5.2}/pyproject.toml +5 -2
- {wcgw-1.5.0 → wcgw-1.5.2}/src/wcgw/client/anthropic_client.py +7 -10
- {wcgw-1.5.0 → wcgw-1.5.2}/src/wcgw/client/computer_use.py +8 -2
- {wcgw-1.5.0 → wcgw-1.5.2}/src/wcgw/client/mcp_server/Readme.md +17 -25
- {wcgw-1.5.0 → wcgw-1.5.2}/src/wcgw/client/mcp_server/server.py +12 -12
- {wcgw-1.5.0 → wcgw-1.5.2}/src/wcgw/client/sys_utils.py +2 -1
- {wcgw-1.5.0 → wcgw-1.5.2}/src/wcgw/client/tools.py +12 -11
- {wcgw-1.5.0 → wcgw-1.5.2}/src/wcgw/types_.py +1 -1
- {wcgw-1.5.0 → wcgw-1.5.2}/uv.lock +36 -159
- {wcgw-1.5.0 → wcgw-1.5.2}/.github/workflows/python-publish.yml +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/.github/workflows/python-tests.yml +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/.gitignore +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/.python-version +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/.vscode/settings.json +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/add.py +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/claude_desktop_config.json +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/gpt_action_json_schema.json +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/gpt_instructions.txt +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/src/__init__.py +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/src/wcgw/__init__.py +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/src/wcgw/client/__init__.py +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/src/wcgw/client/__main__.py +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/src/wcgw/client/cli.py +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/src/wcgw/client/common.py +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/src/wcgw/client/diff-instructions.txt +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/src/wcgw/client/mcp_server/__init__.py +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/src/wcgw/client/openai_client.py +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/src/wcgw/client/openai_utils.py +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/src/wcgw/relay/serve.py +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/src/wcgw/relay/static/privacy.txt +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/static/claude-ss.jpg +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/static/computer-use.jpg +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/static/example.jpg +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/static/rocket-icon.png +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/static/ss1.png +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/tests/test_basic.py +0 -0
- {wcgw-1.5.0 → wcgw-1.5.2}/tests/test_tools.py +0 -0
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: wcgw
|
|
3
|
-
Version: 1.5.
|
|
3
|
+
Version: 1.5.2
|
|
4
4
|
Summary: What could go wrong giving full shell access to chatgpt?
|
|
5
5
|
Project-URL: Homepage, https://github.com/rusiaaman/wcgw
|
|
6
6
|
Author-email: Aman Rusia <gapypi@arcfu.com>
|
|
7
7
|
Requires-Python: <3.13,>=3.11
|
|
8
8
|
Requires-Dist: anthropic>=0.39.0
|
|
9
9
|
Requires-Dist: fastapi>=0.115.0
|
|
10
|
-
Requires-Dist: mcp
|
|
10
|
+
Requires-Dist: mcp
|
|
11
11
|
Requires-Dist: mypy>=1.11.2
|
|
12
12
|
Requires-Dist: nltk>=3.9.1
|
|
13
13
|
Requires-Dist: openai>=1.46.0
|
|
@@ -29,7 +29,9 @@ Description-Content-Type: text/markdown
|
|
|
29
29
|
|
|
30
30
|
# Shell and Coding agent on Chatgpt and Claude desktop apps
|
|
31
31
|
|
|
32
|
-
|
|
32
|
+
- An MCP server on claude desktop for autonomous shell, coding and desktop control agent.
|
|
33
|
+
- A custom gpt on chatgpt web/desktop apps to interact with your local shell, edit files, run code, etc.
|
|
34
|
+
|
|
33
35
|
|
|
34
36
|
[](https://github.com/rusiaaman/wcgw/actions/workflows/python-tests.yml)
|
|
35
37
|
[](https://github.com/rusiaaman/wcgw/actions/workflows/python-publish.yml)
|
|
@@ -40,6 +42,7 @@ A custom gpt on chatgpt web/desktop apps to interact with your local shell, edit
|
|
|
40
42
|
### 🚀 Highlights
|
|
41
43
|
|
|
42
44
|
- ⚡ **Full Shell Access**: No restrictions, complete control.
|
|
45
|
+
- ⚡ **Desktop control on Claude**: Screen capture, mouse control, keyboard control on claude desktop (on mac with docker linux)
|
|
43
46
|
- ⚡ **Create, Execute, Iterate**: Ask the gpt to keep running compiler checks till all errors are fixed, or ask it to keep checking for the status of a long running command till it's done.
|
|
44
47
|
- ⚡ **Interactive Command Handling**: Supports interactive commands using arrow keys, interrupt, and ansi escape sequences.
|
|
45
48
|
- ⚡ **REPL support**: [beta] Supports python/node and other REPL execution.
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# Shell and Coding agent on Chatgpt and Claude desktop apps
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
- An MCP server on claude desktop for autonomous shell, coding and desktop control agent.
|
|
4
|
+
- A custom gpt on chatgpt web/desktop apps to interact with your local shell, edit files, run code, etc.
|
|
5
|
+
|
|
4
6
|
|
|
5
7
|
[](https://github.com/rusiaaman/wcgw/actions/workflows/python-tests.yml)
|
|
6
8
|
[](https://github.com/rusiaaman/wcgw/actions/workflows/python-publish.yml)
|
|
@@ -11,6 +13,7 @@ A custom gpt on chatgpt web/desktop apps to interact with your local shell, edit
|
|
|
11
13
|
### 🚀 Highlights
|
|
12
14
|
|
|
13
15
|
- ⚡ **Full Shell Access**: No restrictions, complete control.
|
|
16
|
+
- ⚡ **Desktop control on Claude**: Screen capture, mouse control, keyboard control on claude desktop (on mac with docker linux)
|
|
14
17
|
- ⚡ **Create, Execute, Iterate**: Ask the gpt to keep running compiler checks till all errors are fixed, or ask it to keep checking for the status of a long running command till it's done.
|
|
15
18
|
- ⚡ **Interactive Command Handling**: Supports interactive commands using arrow keys, interrupt, and ansi escape sequences.
|
|
16
19
|
- ⚡ **REPL support**: [beta] Supports python/node and other REPL execution.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
authors = [{ name = "Aman Rusia", email = "gapypi@arcfu.com" }]
|
|
3
3
|
name = "wcgw"
|
|
4
|
-
version = "1.5.
|
|
4
|
+
version = "1.5.2"
|
|
5
5
|
description = "What could go wrong giving full shell access to chatgpt?"
|
|
6
6
|
readme = "README.md"
|
|
7
7
|
requires-python = ">=3.11, <3.13"
|
|
@@ -25,7 +25,7 @@ dependencies = [
|
|
|
25
25
|
"semantic-version>=2.10.0",
|
|
26
26
|
"nltk>=3.9.1",
|
|
27
27
|
"anthropic>=0.39.0",
|
|
28
|
-
"mcp
|
|
28
|
+
"mcp",
|
|
29
29
|
]
|
|
30
30
|
|
|
31
31
|
[project.urls]
|
|
@@ -49,3 +49,6 @@ dev-dependencies = [
|
|
|
49
49
|
"ipython>=8.12.3",
|
|
50
50
|
"gunicorn>=23.0.0",
|
|
51
51
|
]
|
|
52
|
+
|
|
53
|
+
[tool.uv.sources]
|
|
54
|
+
mcp = { git = "https://github.com/rusiaaman/python-sdk", rev = "53b69f397eae6ac81a51b84b34ff52b3119f11cb" }
|
|
@@ -223,9 +223,10 @@ def loop(
|
|
|
223
223
|
input_schema=GetScreenInfo.model_json_schema(),
|
|
224
224
|
name="GetScreenInfo",
|
|
225
225
|
description="""
|
|
226
|
-
- Get display information of an OS running on docker using image "ghcr.io/anthropics/anthropic-quickstarts:computer-use-demo-latest"
|
|
227
|
-
- If user hasn't provided docker image id, check using `docker ps` and provide the id.
|
|
228
226
|
- Important: call this first in the conversation before ScreenShot, Mouse, and Keyboard tools.
|
|
227
|
+
- Get display information of a linux os running on docker using image "ghcr.io/anthropics/anthropic-quickstarts:computer-use-demo-latest"
|
|
228
|
+
- If user hasn't provided docker image id, check using `docker ps` and provide the id.
|
|
229
|
+
- If the docker is not running, run using `docker run -d -p 6080:6080 ghcr.io/anthropics/anthropic-quickstarts:computer-use-demo-latest`
|
|
229
230
|
- Connects shell to the docker environment.
|
|
230
231
|
- Note: once this is called, the shell enters the docker environment. All bash commands will run over there.
|
|
231
232
|
""",
|
|
@@ -234,26 +235,22 @@ def loop(
|
|
|
234
235
|
input_schema=ScreenShot.model_json_schema(),
|
|
235
236
|
name="ScreenShot",
|
|
236
237
|
description="""
|
|
237
|
-
- Capture screenshot of
|
|
238
|
-
- If user hasn't provided docker image id, check using `docker ps` and provide the id.
|
|
239
|
-
- Capture ScreenShot of the current screen for automation.
|
|
238
|
+
- Capture screenshot of the linux os on docker.
|
|
240
239
|
""",
|
|
241
240
|
),
|
|
242
241
|
ToolParam(
|
|
243
242
|
input_schema=Mouse.model_json_schema(),
|
|
244
243
|
name="Mouse",
|
|
245
244
|
description="""
|
|
246
|
-
- Interact with
|
|
247
|
-
-
|
|
248
|
-
- Interact with the screen using mouse
|
|
245
|
+
- Interact with the linux os on docker using mouse.
|
|
246
|
+
- Uses xdotool
|
|
249
247
|
""",
|
|
250
248
|
),
|
|
251
249
|
ToolParam(
|
|
252
250
|
input_schema=Keyboard.model_json_schema(),
|
|
253
251
|
name="Keyboard",
|
|
254
252
|
description="""
|
|
255
|
-
- Interact with
|
|
256
|
-
- If user hasn't provided docker image id, check using `docker ps` and provide the id.
|
|
253
|
+
- Interact with the linux os on docker using keyboard.
|
|
257
254
|
- Emulate keyboard input to the screen
|
|
258
255
|
- Uses xdootool to send keyboard input, keys like Return, BackSpace, Escape, Page_Up, etc. can be used.
|
|
259
256
|
- Do not use it to interact with Bash tool.
|
|
@@ -26,7 +26,6 @@ from ..types_ import (
|
|
|
26
26
|
OUTPUT_DIR = "/tmp/outputs"
|
|
27
27
|
TYPING_DELAY_MS = 12
|
|
28
28
|
TYPING_GROUP_SIZE = 50
|
|
29
|
-
TRUNCATED_MESSAGE: str = "<response clipped><NOTE>To save on context only part of this file has been shown to you.</NOTE>"
|
|
30
29
|
|
|
31
30
|
Action = Literal[
|
|
32
31
|
"key",
|
|
@@ -187,6 +186,7 @@ class ComputerTool:
|
|
|
187
186
|
docker_image_id: Optional[str] = None,
|
|
188
187
|
text: str | None = None,
|
|
189
188
|
coordinate: tuple[int, int] | None = None,
|
|
189
|
+
do_left_click_on_move: bool | None = None,
|
|
190
190
|
**kwargs: Any,
|
|
191
191
|
) -> ToolResult:
|
|
192
192
|
if action == "get_screen_info":
|
|
@@ -218,7 +218,12 @@ class ComputerTool:
|
|
|
218
218
|
)
|
|
219
219
|
|
|
220
220
|
if action == "mouse_move":
|
|
221
|
-
|
|
221
|
+
if not do_left_click_on_move:
|
|
222
|
+
return self.shell(f"{self.xdotool} mousemove {x} {y}")
|
|
223
|
+
else:
|
|
224
|
+
return self.shell(
|
|
225
|
+
f"{self.xdotool} mousemove {x} {y} click 1",
|
|
226
|
+
)
|
|
222
227
|
elif action == "left_click_drag":
|
|
223
228
|
return self.shell(
|
|
224
229
|
f"{self.xdotool} mousedown 1 mousemove {x} {y} mouseup 1",
|
|
@@ -402,6 +407,7 @@ def run_computer_tool(
|
|
|
402
407
|
result = Computer(
|
|
403
408
|
action="mouse_move",
|
|
404
409
|
coordinate=(action.action.x, action.action.y),
|
|
410
|
+
do_left_click_on_move=action.action.do_left_click_on_move,
|
|
405
411
|
)
|
|
406
412
|
elif isinstance(action.action, LeftClickDrag):
|
|
407
413
|
result = Computer(
|
|
@@ -1,15 +1,10 @@
|
|
|
1
1
|
# Claude desktop support
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
Install xdtool
|
|
3
|
+
`wcgw` enables Claude desktop app on Mac to access shell and file system in order to automate tasks, run code, etc.
|
|
6
4
|
|
|
7
|
-
|
|
8
|
-
brew install xdotool
|
|
5
|
+
It also has a computer use feature to connect to linux running on docker. Claude can fully control it including mouse and keyboard.
|
|
9
6
|
|
|
10
|
-
|
|
11
|
-
defaults write org.x.X11 enable_test_extensions -boolean true
|
|
12
|
-
```
|
|
7
|
+
## Setup
|
|
13
8
|
|
|
14
9
|
Update `claude_desktop_config.json` (~/Library/Application Support/Claude/claude_desktop_config.json)
|
|
15
10
|
|
|
@@ -17,8 +12,16 @@ Update `claude_desktop_config.json` (~/Library/Application Support/Claude/claude
|
|
|
17
12
|
{
|
|
18
13
|
"mcpServers": {
|
|
19
14
|
"wcgw": {
|
|
20
|
-
"command": "
|
|
21
|
-
"args": [
|
|
15
|
+
"command": "uv",
|
|
16
|
+
"args": [
|
|
17
|
+
"tool",
|
|
18
|
+
"run",
|
|
19
|
+
"--from",
|
|
20
|
+
"wcgw@latest",
|
|
21
|
+
"--python",
|
|
22
|
+
"3.12",
|
|
23
|
+
"wcgw_mcp"
|
|
24
|
+
]
|
|
22
25
|
}
|
|
23
26
|
}
|
|
24
27
|
}
|
|
@@ -26,28 +29,17 @@ Update `claude_desktop_config.json` (~/Library/Application Support/Claude/claude
|
|
|
26
29
|
|
|
27
30
|
Then restart claude app.
|
|
28
31
|
|
|
29
|
-
### Computer use support using desktop on docker
|
|
32
|
+
### [Optional] Computer use support using desktop on docker
|
|
30
33
|
|
|
31
|
-
|
|
34
|
+
Computer use is enabled by default. Claude will be able to connect to any docker container with linux environment. Native system control isn't supported outside docker.
|
|
32
35
|
|
|
33
36
|
First run a sample docker image with desktop and optionally VNC connection:
|
|
34
37
|
|
|
35
38
|
```sh
|
|
36
|
-
docker run
|
|
37
|
-
--entrypoint "" \
|
|
38
|
-
-p 6080:6080 \
|
|
39
|
-
-e WIDTH=1024 \
|
|
40
|
-
-e HEIGHT=768 \
|
|
41
|
-
-d \
|
|
42
|
-
ghcr.io/anthropics/anthropic-quickstarts:computer-use-demo-latest \
|
|
43
|
-
bash -c "\
|
|
44
|
-
./start_all.sh && \
|
|
45
|
-
./novnc_startup.sh && \
|
|
46
|
-
python http_server.py > /tmp/server_logs.txt 2>&1 & \
|
|
47
|
-
tail -f /dev/null"
|
|
39
|
+
docker run -p 6080:6080 ghcr.io/anthropics/anthropic-quickstarts:computer-use-demo-latest
|
|
48
40
|
```
|
|
49
41
|
|
|
50
|
-
Connect to `http://localhost:6080/vnc.html` for desktop view (VNC) of the system running in the docker.
|
|
42
|
+
Connect to `http://localhost:6080/vnc.html` for desktop view (VNC) of the system running in the docker. Then ask claude desktop app to control the docker os.
|
|
51
43
|
|
|
52
44
|
## Usage
|
|
53
45
|
|
|
@@ -10,8 +10,9 @@ from mcp.server.models import InitializationOptions
|
|
|
10
10
|
import mcp.types as types
|
|
11
11
|
from mcp.types import Tool as ToolParam
|
|
12
12
|
from mcp.server import NotificationOptions, Server
|
|
13
|
-
from pydantic import AnyUrl, ValidationError
|
|
13
|
+
from pydantic import AnyUrl, BaseModel, ValidationError
|
|
14
14
|
import mcp.server.stdio
|
|
15
|
+
from .. import tools
|
|
15
16
|
from ..tools import DoneFlag, get_tool_output, which_tool_name, default_enc
|
|
16
17
|
from ...types_ import (
|
|
17
18
|
BashCommand,
|
|
@@ -29,6 +30,7 @@ from ...types_ import (
|
|
|
29
30
|
)
|
|
30
31
|
from ..computer_use import Computer
|
|
31
32
|
|
|
33
|
+
tools.TIMEOUT = 3
|
|
32
34
|
|
|
33
35
|
server = Server("wcgw")
|
|
34
36
|
|
|
@@ -149,9 +151,10 @@ async def handle_list_tools() -> list[types.Tool]:
|
|
|
149
151
|
inputSchema=GetScreenInfo.model_json_schema(),
|
|
150
152
|
name="GetScreenInfo",
|
|
151
153
|
description="""
|
|
152
|
-
- Get display information of an OS running on docker using image "ghcr.io/anthropics/anthropic-quickstarts:computer-use-demo-latest"
|
|
153
|
-
- If user hasn't provided docker image id, check using `docker ps` and provide the id.
|
|
154
154
|
- Important: call this first in the conversation before ScreenShot, Mouse, and Keyboard tools.
|
|
155
|
+
- Get display information of a linux os running on docker using image "ghcr.io/anthropics/anthropic-quickstarts:computer-use-demo-latest"
|
|
156
|
+
- If user hasn't provided docker image id, check using `docker ps` and provide the id.
|
|
157
|
+
- If the docker is not running, run using `docker run -d -p 6080:6080 ghcr.io/anthropics/anthropic-quickstarts:computer-use-demo-latest`
|
|
155
158
|
- Connects shell to the docker environment.
|
|
156
159
|
- Note: once this is called, the shell enters the docker environment. All bash commands will run over there.
|
|
157
160
|
""",
|
|
@@ -160,29 +163,26 @@ async def handle_list_tools() -> list[types.Tool]:
|
|
|
160
163
|
inputSchema=ScreenShot.model_json_schema(),
|
|
161
164
|
name="ScreenShot",
|
|
162
165
|
description="""
|
|
163
|
-
- Capture screenshot of
|
|
164
|
-
- If user hasn't provided docker image id, check using `docker ps` and provide the id.
|
|
165
|
-
- Capture ScreenShot of the current screen for automation.
|
|
166
|
+
- Capture screenshot of the linux os on docker.
|
|
166
167
|
""",
|
|
167
168
|
),
|
|
168
169
|
ToolParam(
|
|
169
170
|
inputSchema=Mouse.model_json_schema(),
|
|
170
171
|
name="Mouse",
|
|
171
172
|
description="""
|
|
172
|
-
- Interact with
|
|
173
|
-
-
|
|
174
|
-
- Interact with the screen using mouse
|
|
173
|
+
- Interact with the linux os on docker using mouse.
|
|
174
|
+
- Uses xdotool
|
|
175
175
|
""",
|
|
176
176
|
),
|
|
177
177
|
ToolParam(
|
|
178
178
|
inputSchema=Keyboard.model_json_schema(),
|
|
179
179
|
name="Keyboard",
|
|
180
180
|
description="""
|
|
181
|
-
- Interact with
|
|
182
|
-
- If user hasn't provided docker image id, check using `docker ps` and provide the id.
|
|
181
|
+
- Interact with the linux os on docker using keyboard.
|
|
183
182
|
- Emulate keyboard input to the screen
|
|
184
183
|
- Uses xdootool to send keyboard input, keys like Return, BackSpace, Escape, Page_Up, etc. can be used.
|
|
185
184
|
- Do not use it to interact with Bash tool.
|
|
185
|
+
- Make sure you've selected a text area or an editable element before sending text.
|
|
186
186
|
""",
|
|
187
187
|
),
|
|
188
188
|
]
|
|
@@ -272,7 +272,7 @@ async def main() -> None:
|
|
|
272
272
|
experimental_capabilities={},
|
|
273
273
|
),
|
|
274
274
|
),
|
|
275
|
-
raise_exceptions=
|
|
275
|
+
raise_exceptions=False,
|
|
276
276
|
)
|
|
277
277
|
except BaseException as e:
|
|
278
278
|
print(f"Server encountered an error: {e}", file=sys.stderr)
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import subprocess
|
|
2
2
|
|
|
3
3
|
MAX_RESPONSE_LEN: int = 16000
|
|
4
|
+
TRUNCATED_MESSAGE: str = "<response clipped><NOTE>To save on context only part of this file has been shown to you.</NOTE>"
|
|
4
5
|
|
|
5
6
|
|
|
6
7
|
def maybe_truncate(content: str, truncate_after: int | None = MAX_RESPONSE_LEN) -> str:
|
|
@@ -14,7 +15,7 @@ def maybe_truncate(content: str, truncate_after: int | None = MAX_RESPONSE_LEN)
|
|
|
14
15
|
|
|
15
16
|
def command_run(
|
|
16
17
|
cmd: str,
|
|
17
|
-
timeout: float | None =
|
|
18
|
+
timeout: float | None = 3.0, # seconds
|
|
18
19
|
truncate_after: int | None = MAX_RESPONSE_LEN,
|
|
19
20
|
text: bool = True,
|
|
20
21
|
) -> tuple[int, str, str]:
|
|
@@ -71,7 +71,7 @@ from .openai_utils import get_input_cost, get_output_cost
|
|
|
71
71
|
|
|
72
72
|
console = rich.console.Console(style="magenta", highlight=False, markup=False)
|
|
73
73
|
|
|
74
|
-
TIMEOUT =
|
|
74
|
+
TIMEOUT = 5
|
|
75
75
|
|
|
76
76
|
|
|
77
77
|
def render_terminal_output(text: str) -> str:
|
|
@@ -113,9 +113,9 @@ def start_shell() -> pexpect.spawn: # type: ignore
|
|
|
113
113
|
encoding="utf-8",
|
|
114
114
|
timeout=TIMEOUT,
|
|
115
115
|
)
|
|
116
|
-
SHELL.expect(PROMPT)
|
|
116
|
+
SHELL.expect(PROMPT, timeout=TIMEOUT)
|
|
117
117
|
SHELL.sendline("stty -icanon -echo")
|
|
118
|
-
SHELL.expect(PROMPT)
|
|
118
|
+
SHELL.expect(PROMPT, timeout=TIMEOUT)
|
|
119
119
|
return SHELL
|
|
120
120
|
|
|
121
121
|
|
|
@@ -135,15 +135,15 @@ def _get_exit_code() -> int:
|
|
|
135
135
|
return 0
|
|
136
136
|
# First reset the prompt in case venv was sourced or other reasons.
|
|
137
137
|
SHELL.sendline(f"export PS1={PROMPT}")
|
|
138
|
-
SHELL.expect(PROMPT)
|
|
138
|
+
SHELL.expect(PROMPT, timeout=0.2)
|
|
139
139
|
# Reset echo also if it was enabled
|
|
140
140
|
SHELL.sendline("stty -icanon -echo")
|
|
141
|
-
SHELL.expect(PROMPT)
|
|
141
|
+
SHELL.expect(PROMPT, timeout=0.2)
|
|
142
142
|
SHELL.sendline("echo $?")
|
|
143
143
|
before = ""
|
|
144
144
|
while not _is_int(before): # Consume all previous output
|
|
145
145
|
try:
|
|
146
|
-
SHELL.expect(PROMPT)
|
|
146
|
+
SHELL.expect(PROMPT, timeout=0.2)
|
|
147
147
|
except pexpect.TIMEOUT:
|
|
148
148
|
print(f"Couldn't get exit code, before: {before}")
|
|
149
149
|
raise
|
|
@@ -170,6 +170,7 @@ def initial_info() -> str:
|
|
|
170
170
|
System: {uname_sysname}
|
|
171
171
|
Machine: {uname_machine}
|
|
172
172
|
Current working directory: {CWD}
|
|
173
|
+
wcgw version: {importlib.metadata.version("wcgw")}
|
|
173
174
|
"""
|
|
174
175
|
|
|
175
176
|
|
|
@@ -215,7 +216,7 @@ def update_repl_prompt(command: str) -> bool:
|
|
|
215
216
|
|
|
216
217
|
def get_cwd() -> str:
|
|
217
218
|
SHELL.sendline("pwd")
|
|
218
|
-
SHELL.expect(PROMPT)
|
|
219
|
+
SHELL.expect(PROMPT, timeout=0.2)
|
|
219
220
|
assert isinstance(SHELL.before, str)
|
|
220
221
|
current_dir = render_terminal_output(SHELL.before).strip()
|
|
221
222
|
return current_dir
|
|
@@ -342,13 +343,13 @@ def execute_bash(
|
|
|
342
343
|
SHELL.expect(PROMPT)
|
|
343
344
|
return "---\n\nFailure: user interrupted the execution", 0.0
|
|
344
345
|
|
|
345
|
-
wait = timeout_s or
|
|
346
|
+
wait = timeout_s or TIMEOUT
|
|
346
347
|
index = SHELL.expect([PROMPT, pexpect.TIMEOUT], timeout=wait)
|
|
347
348
|
if index == 1:
|
|
348
349
|
BASH_STATE = "pending"
|
|
349
350
|
text = SHELL.before or ""
|
|
350
351
|
|
|
351
|
-
text = render_terminal_output(text)
|
|
352
|
+
text = render_terminal_output(text[-100_000:])
|
|
352
353
|
tokens = enc.encode(text)
|
|
353
354
|
|
|
354
355
|
if max_tokens and len(tokens) >= max_tokens:
|
|
@@ -855,7 +856,7 @@ def get_tool_output(
|
|
|
855
856
|
if imgBs64:
|
|
856
857
|
console.print("Captured screenshot")
|
|
857
858
|
outputs.append(ImageData(media_type="image/png", data=imgBs64))
|
|
858
|
-
if not IS_IN_DOCKER:
|
|
859
|
+
if not IS_IN_DOCKER and isinstance(arg, GetScreenInfo):
|
|
859
860
|
try:
|
|
860
861
|
# At this point we should go into the docker env
|
|
861
862
|
res, _ = execute_bash(
|
|
@@ -989,7 +990,7 @@ def read_file(readfile: ReadFile, max_tokens: Optional[int]) -> str:
|
|
|
989
990
|
|
|
990
991
|
else:
|
|
991
992
|
return_code, content, stderr = command_run(
|
|
992
|
-
f"cat {readfile.file_path}",
|
|
993
|
+
f"cat {readfile.file_path}", timeout=TIMEOUT
|
|
993
994
|
)
|
|
994
995
|
if return_code != 0:
|
|
995
996
|
raise Exception(
|
|
@@ -60,12 +60,12 @@ class GetScreenInfo(BaseModel):
|
|
|
60
60
|
|
|
61
61
|
class ScreenShot(BaseModel):
|
|
62
62
|
type: Literal["ScreenShot"]
|
|
63
|
-
docker_image_id: str
|
|
64
63
|
|
|
65
64
|
|
|
66
65
|
class MouseMove(BaseModel):
|
|
67
66
|
x: int
|
|
68
67
|
y: int
|
|
68
|
+
do_left_click_on_move: bool
|
|
69
69
|
type: Literal["MouseMove"]
|
|
70
70
|
|
|
71
71
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
version = 1
|
|
2
|
-
requires-python = ">=3.
|
|
2
|
+
requires-python = ">=3.11, <3.13"
|
|
3
3
|
|
|
4
4
|
[[package]]
|
|
5
5
|
name = "annotated-types"
|
|
@@ -33,10 +33,8 @@ name = "anyio"
|
|
|
33
33
|
version = "4.6.2.post1"
|
|
34
34
|
source = { registry = "https://pypi.org/simple" }
|
|
35
35
|
dependencies = [
|
|
36
|
-
{ name = "exceptiongroup", marker = "python_full_version < '3.11'" },
|
|
37
36
|
{ name = "idna" },
|
|
38
37
|
{ name = "sniffio" },
|
|
39
|
-
{ name = "typing-extensions", marker = "python_full_version < '3.11'" },
|
|
40
38
|
]
|
|
41
39
|
sdist = { url = "https://files.pythonhosted.org/packages/9f/09/45b9b7a6d4e45c6bcb5bf61d19e3ab87df68e0601fa8c5293de3542546cc/anyio-4.6.2.post1.tar.gz", hash = "sha256:4c8bc31ccdb51c7f7bd251f51c609e038d63e34219b44aa86e47576389880b4c", size = 173422 }
|
|
42
40
|
wheels = [
|
|
@@ -61,7 +59,6 @@ version = "2.3.1"
|
|
|
61
59
|
source = { registry = "https://pypi.org/simple" }
|
|
62
60
|
dependencies = [
|
|
63
61
|
{ name = "pyflakes" },
|
|
64
|
-
{ name = "tomli", marker = "python_full_version < '3.11'" },
|
|
65
62
|
]
|
|
66
63
|
sdist = { url = "https://files.pythonhosted.org/packages/2a/cb/486f912d6171bc5748c311a2984a301f4e2d054833a1da78485866c71522/autoflake-2.3.1.tar.gz", hash = "sha256:c98b75dc5b0a86459c4f01a1d32ac7eb4338ec4317a4469515ff1e687ecd909e", size = 27642 }
|
|
67
64
|
wheels = [
|
|
@@ -83,21 +80,6 @@ version = "3.4.0"
|
|
|
83
80
|
source = { registry = "https://pypi.org/simple" }
|
|
84
81
|
sdist = { url = "https://files.pythonhosted.org/packages/f2/4f/e1808dc01273379acc506d18f1504eb2d299bd4131743b9fc54d7be4df1e/charset_normalizer-3.4.0.tar.gz", hash = "sha256:223217c3d4f82c3ac5e29032b3f1c2eb0fb591b72161f86d93f5719079dae93e", size = 106620 }
|
|
85
82
|
wheels = [
|
|
86
|
-
{ url = "https://files.pythonhosted.org/packages/69/8b/825cc84cf13a28bfbcba7c416ec22bf85a9584971be15b21dd8300c65b7f/charset_normalizer-3.4.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:4f9fc98dad6c2eaa32fc3af1417d95b5e3d08aff968df0cd320066def971f9a6", size = 196363 },
|
|
87
|
-
{ url = "https://files.pythonhosted.org/packages/23/81/d7eef6a99e42c77f444fdd7bc894b0ceca6c3a95c51239e74a722039521c/charset_normalizer-3.4.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0de7b687289d3c1b3e8660d0741874abe7888100efe14bd0f9fd7141bcbda92b", size = 125639 },
|
|
88
|
-
{ url = "https://files.pythonhosted.org/packages/21/67/b4564d81f48042f520c948abac7079356e94b30cb8ffb22e747532cf469d/charset_normalizer-3.4.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5ed2e36c3e9b4f21dd9422f6893dec0abf2cca553af509b10cd630f878d3eb99", size = 120451 },
|
|
89
|
-
{ url = "https://files.pythonhosted.org/packages/c2/72/12a7f0943dd71fb5b4e7b55c41327ac0a1663046a868ee4d0d8e9c369b85/charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:40d3ff7fc90b98c637bda91c89d51264a3dcf210cade3a2c6f838c7268d7a4ca", size = 140041 },
|
|
90
|
-
{ url = "https://files.pythonhosted.org/packages/67/56/fa28c2c3e31217c4c52158537a2cf5d98a6c1e89d31faf476c89391cd16b/charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1110e22af8ca26b90bd6364fe4c763329b0ebf1ee213ba32b68c73de5752323d", size = 150333 },
|
|
91
|
-
{ url = "https://files.pythonhosted.org/packages/f9/d2/466a9be1f32d89eb1554cf84073a5ed9262047acee1ab39cbaefc19635d2/charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:86f4e8cca779080f66ff4f191a685ced73d2f72d50216f7112185dc02b90b9b7", size = 142921 },
|
|
92
|
-
{ url = "https://files.pythonhosted.org/packages/f8/01/344ec40cf5d85c1da3c1f57566c59e0c9b56bcc5566c08804a95a6cc8257/charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f683ddc7eedd742e2889d2bfb96d69573fde1d92fcb811979cdb7165bb9c7d3", size = 144785 },
|
|
93
|
-
{ url = "https://files.pythonhosted.org/packages/73/8b/2102692cb6d7e9f03b9a33a710e0164cadfce312872e3efc7cfe22ed26b4/charset_normalizer-3.4.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:27623ba66c183eca01bf9ff833875b459cad267aeeb044477fedac35e19ba907", size = 146631 },
|
|
94
|
-
{ url = "https://files.pythonhosted.org/packages/d8/96/cc2c1b5d994119ce9f088a9a0c3ebd489d360a2eb058e2c8049f27092847/charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:f606a1881d2663630ea5b8ce2efe2111740df4b687bd78b34a8131baa007f79b", size = 140867 },
|
|
95
|
-
{ url = "https://files.pythonhosted.org/packages/c9/27/cde291783715b8ec30a61c810d0120411844bc4c23b50189b81188b273db/charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:0b309d1747110feb25d7ed6b01afdec269c647d382c857ef4663bbe6ad95a912", size = 149273 },
|
|
96
|
-
{ url = "https://files.pythonhosted.org/packages/3a/a4/8633b0fc1a2d1834d5393dafecce4a1cc56727bfd82b4dc18fc92f0d3cc3/charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:136815f06a3ae311fae551c3df1f998a1ebd01ddd424aa5603a4336997629e95", size = 152437 },
|
|
97
|
-
{ url = "https://files.pythonhosted.org/packages/64/ea/69af161062166b5975ccbb0961fd2384853190c70786f288684490913bf5/charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:14215b71a762336254351b00ec720a8e85cada43b987da5a042e4ce3e82bd68e", size = 150087 },
|
|
98
|
-
{ url = "https://files.pythonhosted.org/packages/3b/fd/e60a9d9fd967f4ad5a92810138192f825d77b4fa2a557990fd575a47695b/charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:79983512b108e4a164b9c8d34de3992f76d48cadc9554c9e60b43f308988aabe", size = 145142 },
|
|
99
|
-
{ url = "https://files.pythonhosted.org/packages/6d/02/8cb0988a1e49ac9ce2eed1e07b77ff118f2923e9ebd0ede41ba85f2dcb04/charset_normalizer-3.4.0-cp310-cp310-win32.whl", hash = "sha256:c94057af19bc953643a33581844649a7fdab902624d2eb739738a30e2b3e60fc", size = 94701 },
|
|
100
|
-
{ url = "https://files.pythonhosted.org/packages/d6/20/f1d4670a8a723c46be695dff449d86d6092916f9e99c53051954ee33a1bc/charset_normalizer-3.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:55f56e2ebd4e3bc50442fbc0888c9d8c94e4e06a933804e2af3e89e2f9c1c749", size = 102191 },
|
|
101
83
|
{ url = "https://files.pythonhosted.org/packages/9c/61/73589dcc7a719582bf56aae309b6103d2762b526bffe189d635a7fcfd998/charset_normalizer-3.4.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:0d99dd8ff461990f12d6e42c7347fd9ab2532fb70e9621ba520f9e8637161d7c", size = 193339 },
|
|
102
84
|
{ url = "https://files.pythonhosted.org/packages/77/d5/8c982d58144de49f59571f940e329ad6e8615e1e82ef84584c5eeb5e1d72/charset_normalizer-3.4.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c57516e58fd17d03ebe67e181a4e4e2ccab1168f8c2976c6a334d4f819fe5944", size = 124366 },
|
|
103
85
|
{ url = "https://files.pythonhosted.org/packages/bf/19/411a64f01ee971bed3231111b69eb56f9331a769072de479eae7de52296d/charset_normalizer-3.4.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:6dba5d19c4dfab08e58d5b36304b3f92f3bd5d42c1a3fa37b5ba5cdf6dfcbcee", size = 118874 },
|
|
@@ -170,15 +152,6 @@ wheels = [
|
|
|
170
152
|
{ url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl", hash = "sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2", size = 20277 },
|
|
171
153
|
]
|
|
172
154
|
|
|
173
|
-
[[package]]
|
|
174
|
-
name = "exceptiongroup"
|
|
175
|
-
version = "1.2.2"
|
|
176
|
-
source = { registry = "https://pypi.org/simple" }
|
|
177
|
-
sdist = { url = "https://files.pythonhosted.org/packages/09/35/2495c4ac46b980e4ca1f6ad6db102322ef3ad2410b79fdde159a4b0f3b92/exceptiongroup-1.2.2.tar.gz", hash = "sha256:47c2edf7c6738fafb49fd34290706d1a1a2f4d1c6df275526b62cbb4aa5393cc", size = 28883 }
|
|
178
|
-
wheels = [
|
|
179
|
-
{ url = "https://files.pythonhosted.org/packages/02/cc/b7e31358aac6ed1ef2bb790a9746ac2c69bcb3c8588b41616914eb106eaf/exceptiongroup-1.2.2-py3-none-any.whl", hash = "sha256:3111b9d131c238bec2f8f516e123e14ba243563fb135d3fe885990585aa7795b", size = 16453 },
|
|
180
|
-
]
|
|
181
|
-
|
|
182
155
|
[[package]]
|
|
183
156
|
name = "executing"
|
|
184
157
|
version = "2.1.0"
|
|
@@ -277,7 +250,6 @@ source = { registry = "https://pypi.org/simple" }
|
|
|
277
250
|
dependencies = [
|
|
278
251
|
{ name = "colorama", marker = "sys_platform == 'win32'" },
|
|
279
252
|
{ name = "decorator" },
|
|
280
|
-
{ name = "exceptiongroup", marker = "python_full_version < '3.11'" },
|
|
281
253
|
{ name = "jedi" },
|
|
282
254
|
{ name = "matplotlib-inline" },
|
|
283
255
|
{ name = "pexpect", marker = "sys_platform != 'emscripten' and sys_platform != 'win32'" },
|
|
@@ -306,46 +278,34 @@ wheels = [
|
|
|
306
278
|
|
|
307
279
|
[[package]]
|
|
308
280
|
name = "jiter"
|
|
309
|
-
version = "0.
|
|
310
|
-
source = { registry = "https://pypi.org/simple" }
|
|
311
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
312
|
-
wheels = [
|
|
313
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
314
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
315
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
316
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
317
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
318
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
319
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
320
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
321
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
322
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
323
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
324
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
325
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
326
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
327
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
328
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
329
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
330
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
331
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
332
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
333
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
334
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
335
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
336
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
337
|
-
{ url = "https://files.pythonhosted.org/packages/10/b3/de89eae8f57dc0ee5f6e3aa1ffcdee0364ef9ef85be81006fd17d7710ffa/jiter-0.7.1-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:ad36a1155cbd92e7a084a568f7dc6023497df781adf2390c345dd77a120905ca", size = 291900 },
|
|
338
|
-
{ url = "https://files.pythonhosted.org/packages/c0/ff/0d804eff4751fceeabc6311d4b07e956daa06fa58f05931887dc7454466b/jiter-0.7.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:7ba52e6aaed2dc5c81a3d9b5e4ab95b039c4592c66ac973879ba57c3506492bb", size = 304390 },
|
|
339
|
-
{ url = "https://files.pythonhosted.org/packages/e8/26/c258bef532d113a7ac26242893fc9760040a4846dec731098b7f5ac3fca7/jiter-0.7.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2b7de0b6f6728b678540c7927587e23f715284596724be203af952418acb8a2d", size = 328710 },
|
|
340
|
-
{ url = "https://files.pythonhosted.org/packages/71/92/644dc215cbb9816112e28f3b43a8c8e769f083434a05fc3afd269c444f51/jiter-0.7.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:9463b62bd53c2fb85529c700c6a3beb2ee54fde8bef714b150601616dcb184a6", size = 347569 },
|
|
341
|
-
{ url = "https://files.pythonhosted.org/packages/c6/02/795a3535262c54595bd97e375cc03b443717febb37723a7f9c077049825b/jiter-0.7.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:627164ec01d28af56e1f549da84caf0fe06da3880ebc7b7ee1ca15df106ae172", size = 373641 },
|
|
342
|
-
{ url = "https://files.pythonhosted.org/packages/7d/35/c7e9a06a49116e3618954f6c8a26816a7959c0f9e5617b0073e4145c5d6d/jiter-0.7.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:25d0e5bf64e368b0aa9e0a559c3ab2f9b67e35fe7269e8a0d81f48bbd10e8963", size = 388828 },
|
|
343
|
-
{ url = "https://files.pythonhosted.org/packages/fb/05/894144e4cbc1b9d46756db512268a90f84fc1d8bd28f1a17e0fef5aaf5c5/jiter-0.7.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c244261306f08f8008b3087059601997016549cb8bb23cf4317a4827f07b7d74", size = 325511 },
|
|
344
|
-
{ url = "https://files.pythonhosted.org/packages/19/d3/e6674ac34de53787504e4fb309084f824df321f24113121d94bf53808be3/jiter-0.7.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:7ded4e4b75b68b843b7cea5cd7c55f738c20e1394c68c2cb10adb655526c5f1b", size = 365940 },
|
|
345
|
-
{ url = "https://files.pythonhosted.org/packages/e9/ca/c773f0ce186090cc69a2c97b8dab3dad14ae9988a657a20d879458a8407e/jiter-0.7.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:80dae4f1889b9d09e5f4de6b58c490d9c8ce7730e35e0b8643ab62b1538f095c", size = 515430 },
|
|
346
|
-
{ url = "https://files.pythonhosted.org/packages/16/5f/c98f6e6362fbc7c87ad384ba8506983fca9bb55ea0af7efcb23e7dd22817/jiter-0.7.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:5970cf8ec943b51bce7f4b98d2e1ed3ada170c2a789e2db3cb484486591a176a", size = 497389 },
|
|
347
|
-
{ url = "https://files.pythonhosted.org/packages/30/60/f60e12469afc9096bac3df0fda53de707ed5105d84322a0d1bc4ad03ee3e/jiter-0.7.1-cp312-none-win32.whl", hash = "sha256:701d90220d6ecb3125d46853c8ca8a5bc158de8c49af60fd706475a49fee157e", size = 198546 },
|
|
348
|
-
{ url = "https://files.pythonhosted.org/packages/01/d2/d8ec257544f7991384a46fccee6abdc5065cfede26354bb2c86251858a92/jiter-0.7.1-cp312-none-win_amd64.whl", hash = "sha256:7824c3ecf9ecf3321c37f4e4d4411aad49c666ee5bc2a937071bdd80917e4533", size = 202792 },
|
|
281
|
+
version = "0.8.0"
|
|
282
|
+
source = { registry = "https://pypi.org/simple" }
|
|
283
|
+
sdist = { url = "https://files.pythonhosted.org/packages/78/1e/3462be93c2443392a710ae1c2bba2239f44bbf0c826baea77da9f8311678/jiter-0.8.0.tar.gz", hash = "sha256:86fee98b569d4cc511ff2e3ec131354fafebd9348a487549c31ad371ae730310", size = 162953 }
|
|
284
|
+
wheels = [
|
|
285
|
+
{ url = "https://files.pythonhosted.org/packages/84/e8/336b77bdda32e9a6167ca80b454905772c515a65c35e93d97ed6dc9b6fc0/jiter-0.8.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:f6f4e645efd96b4690b9b6091dbd4e0fa2885ba5c57a0305c1916b75b4f30ff6", size = 304423 },
|
|
286
|
+
{ url = "https://files.pythonhosted.org/packages/c9/87/28f93b5373cbca74ac3c6fd6e2025113f1a73164beb7cd966cdaed88cf70/jiter-0.8.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f61cf6d93c1ade9b8245c9f14b7900feadb0b7899dbe4aa8de268b705647df81", size = 310783 },
|
|
287
|
+
{ url = "https://files.pythonhosted.org/packages/57/2b/a23342154077995562bedb9c6dc85c6d113910ae54a225118f2b4f6e5765/jiter-0.8.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0396bc5cb1309c6dab085e70bb3913cdd92218315e47b44afe9eace68ee8adaa", size = 333675 },
|
|
288
|
+
{ url = "https://files.pythonhosted.org/packages/ee/cb/26dc6e8ae37208e5adc992fc762172efd65b658756e78daf803916d49996/jiter-0.8.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:62d0e42ec5dc772bd8554a304358220be5d97d721c4648b23f3a9c01ccc2cb26", size = 354158 },
|
|
289
|
+
{ url = "https://files.pythonhosted.org/packages/e7/5e/de7b2bab00b9648940bb31e34c5b13fffe890e3695560cb72439f8fdd44a/jiter-0.8.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ec4b711989860705733fc59fb8c41b2def97041cea656b37cf6c8ea8dee1c3f4", size = 380842 },
|
|
290
|
+
{ url = "https://files.pythonhosted.org/packages/91/c1/f5bad3882d27359a3eb8110f2a0cf9e8fa7a6ffc0b1f7bdb9ad2c5a6facb/jiter-0.8.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:859cc35bf304ab066d88f10a44a3251a9cd057fb11ec23e00be22206db878f4f", size = 388716 },
|
|
291
|
+
{ url = "https://files.pythonhosted.org/packages/bc/8c/052f85d911045c720ddd15bfbb71edc1c9043b54f5ab946d0f5cac7ac02c/jiter-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5000195921aa293b39b9b5bc959d7fa658e7f18f938c0e52732da8e3cc70a278", size = 343308 },
|
|
292
|
+
{ url = "https://files.pythonhosted.org/packages/6c/90/d703274855ee34f4da7b50877042bdef9650298a7125067630a62191db7e/jiter-0.8.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:36050284c0abde57aba34964d3920f3d6228211b65df7187059bb7c7f143759a", size = 374680 },
|
|
293
|
+
{ url = "https://files.pythonhosted.org/packages/7f/42/6af2ca86e7434ab3c028ddb9c38edcdbff2c3edbd599d0ca5b21aa9dfc02/jiter-0.8.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:a88f608e050cfe45c48d771e86ecdbf5258314c883c986d4217cc79e1fb5f689", size = 512131 },
|
|
294
|
+
{ url = "https://files.pythonhosted.org/packages/9d/6c/afc4f73accfb9570a4b729840e4e3607196b924fddbdc346d0f02e662375/jiter-0.8.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:646cf4237665b2e13b4159d8f26d53f59bc9f2e6e135e3a508a2e5dd26d978c6", size = 505038 },
|
|
295
|
+
{ url = "https://files.pythonhosted.org/packages/eb/cf/c3b6821151db25f617d83ff00022dd5769375ead7ab65bf68874b21e0bba/jiter-0.8.0-cp311-none-win32.whl", hash = "sha256:21fe5b8345db1b3023052b2ade9bb4d369417827242892051244af8fae8ba231", size = 204655 },
|
|
296
|
+
{ url = "https://files.pythonhosted.org/packages/f8/72/a3084e9c81ff934c1aa3529ff7c45b6d10d3b5dc649223fb14d7fa1fd6ed/jiter-0.8.0-cp311-none-win_amd64.whl", hash = "sha256:30c2161c5493acf6b6c3c909973fb64ae863747def01cc7574f3954e0a15042c", size = 208198 },
|
|
297
|
+
{ url = "https://files.pythonhosted.org/packages/d1/63/93084c4079b30e7832e1fb907045f8eca146d5d9a67bc62d311332416ab8/jiter-0.8.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:d91a52d8f49ada2672a4b808a0c5c25d28f320a2c9ca690e30ebd561eb5a1002", size = 304424 },
|
|
298
|
+
{ url = "https://files.pythonhosted.org/packages/d2/68/ae698958b4d7d27632056cbfeae70e9d7a89ca0954ac6d0ef486afe5d8da/jiter-0.8.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:c38cf25cf7862f61410b7a49684d34eb3b5bcbd7ddaf4773eea40e0bd43de706", size = 309584 },
|
|
299
|
+
{ url = "https://files.pythonhosted.org/packages/05/b3/d04a1398644c5848339c201e81d1c0d5125097bfd84fd92ebebfe724659c/jiter-0.8.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c6189beb5c4b3117624be6b2e84545cff7611f5855d02de2d06ff68e316182be", size = 333677 },
|
|
300
|
+
{ url = "https://files.pythonhosted.org/packages/41/cd/76869353a0f5a91cf544bef80a9529d090b7d4254835997507738220e133/jiter-0.8.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e13fa849c0e30643554add089983caa82f027d69fad8f50acadcb21c462244ab", size = 354157 },
|
|
301
|
+
{ url = "https://files.pythonhosted.org/packages/34/9e/64adbc6d578a80debf7a1e81871257266e2149eede59300de7641dcd1a5e/jiter-0.8.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d7765ca159d0a58e8e0f8ca972cd6d26a33bc97b4480d0d2309856763807cd28", size = 380841 },
|
|
302
|
+
{ url = "https://files.pythonhosted.org/packages/9d/ef/4ae8f15859d4dae10bef6d1d4a7258fc450b1f9db635becd19403d906ba4/jiter-0.8.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1b0befe7c6e9fc867d5bed21bab0131dfe27d1fa5cd52ba2bced67da33730b7d", size = 388714 },
|
|
303
|
+
{ url = "https://files.pythonhosted.org/packages/3d/dd/3e7e3cdacda1990c1f09d9d2abdf2f37e80f8a9abd17804d61a74d8403fd/jiter-0.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e7d6363d4c6f1052b1d8b494eb9a72667c3ef5f80ebacfe18712728e85327000", size = 341876 },
|
|
304
|
+
{ url = "https://files.pythonhosted.org/packages/44/5b/c9533eb01eee153fd6f936e76a35583f8e244d7a5db9c2b64b4451167368/jiter-0.8.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a873e57009863eeac3e3969e4653f07031d6270d037d6224415074ac17e5505c", size = 374683 },
|
|
305
|
+
{ url = "https://files.pythonhosted.org/packages/f8/2f/34696e31a79c1b0b30e430dfdcd7c6ee7b5fd0f5b0df4503c1b01ec9bcba/jiter-0.8.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:2582912473c0d9940791479fe1bf2976a34f212eb8e0a82ee9e645ac275c5d16", size = 512132 },
|
|
306
|
+
{ url = "https://files.pythonhosted.org/packages/3b/b3/041d97047a30b529d5d99b3cc5d9d58fc71d9c73f106e827ba28a99058b9/jiter-0.8.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:646163201af42f55393ee6e8f6136b8df488253a6533f4230a64242ecbfe6048", size = 505039 },
|
|
307
|
+
{ url = "https://files.pythonhosted.org/packages/59/5b/630995b058aa26e8ba9b15731b121cec9fc0e105d5ae93d2ed754a0e44f5/jiter-0.8.0-cp312-none-win32.whl", hash = "sha256:96e75c9abfbf7387cba89a324d2356d86d8897ac58c956017d062ad510832dae", size = 205267 },
|
|
308
|
+
{ url = "https://files.pythonhosted.org/packages/1b/0e/1b79afa5616309d4e2e84980c62a3f73c4035e5b856ad7601aebbb5a7db0/jiter-0.8.0-cp312-none-win_amd64.whl", hash = "sha256:ed6074552b4a32e047b52dad5ab497223721efbd0e9efe68c67749f094a092f7", size = 206572 },
|
|
349
309
|
]
|
|
350
310
|
|
|
351
311
|
[[package]]
|
|
@@ -383,8 +343,8 @@ wheels = [
|
|
|
383
343
|
|
|
384
344
|
[[package]]
|
|
385
345
|
name = "mcp"
|
|
386
|
-
version = "1.0.
|
|
387
|
-
source = {
|
|
346
|
+
version = "1.0.1.dev0"
|
|
347
|
+
source = { git = "https://github.com/rusiaaman/python-sdk?rev=53b69f397eae6ac81a51b84b34ff52b3119f11cb#53b69f397eae6ac81a51b84b34ff52b3119f11cb" }
|
|
388
348
|
dependencies = [
|
|
389
349
|
{ name = "anyio" },
|
|
390
350
|
{ name = "httpx" },
|
|
@@ -393,10 +353,6 @@ dependencies = [
|
|
|
393
353
|
{ name = "sse-starlette" },
|
|
394
354
|
{ name = "starlette" },
|
|
395
355
|
]
|
|
396
|
-
sdist = { url = "https://files.pythonhosted.org/packages/97/de/a9ec0a1b6439f90ea59f89004bb2e7ec6890dfaeef809751d9e6577dca7e/mcp-1.0.0.tar.gz", hash = "sha256:dba51ce0b5c6a80e25576f606760c49a91ee90210fed805b530ca165d3bbc9b7", size = 82891 }
|
|
397
|
-
wheels = [
|
|
398
|
-
{ url = "https://files.pythonhosted.org/packages/56/89/900c0c8445ec001d3725e475fc553b0feb2e8a51be018f3bb7de51e683db/mcp-1.0.0-py3-none-any.whl", hash = "sha256:bbe70ffa3341cd4da78b5eb504958355c68381fb29971471cea1e642a2af5b8a", size = 36361 },
|
|
399
|
-
]
|
|
400
356
|
|
|
401
357
|
[[package]]
|
|
402
358
|
name = "mdurl"
|
|
@@ -413,16 +369,10 @@ version = "1.13.0"
|
|
|
413
369
|
source = { registry = "https://pypi.org/simple" }
|
|
414
370
|
dependencies = [
|
|
415
371
|
{ name = "mypy-extensions" },
|
|
416
|
-
{ name = "tomli", marker = "python_full_version < '3.11'" },
|
|
417
372
|
{ name = "typing-extensions" },
|
|
418
373
|
]
|
|
419
374
|
sdist = { url = "https://files.pythonhosted.org/packages/e8/21/7e9e523537991d145ab8a0a2fd98548d67646dc2aaaf6091c31ad883e7c1/mypy-1.13.0.tar.gz", hash = "sha256:0291a61b6fbf3e6673e3405cfcc0e7650bebc7939659fdca2702958038bd835e", size = 3152532 }
|
|
420
375
|
wheels = [
|
|
421
|
-
{ url = "https://files.pythonhosted.org/packages/5e/8c/206de95a27722b5b5a8c85ba3100467bd86299d92a4f71c6b9aa448bfa2f/mypy-1.13.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6607e0f1dd1fb7f0aca14d936d13fd19eba5e17e1cd2a14f808fa5f8f6d8f60a", size = 11020731 },
|
|
422
|
-
{ url = "https://files.pythonhosted.org/packages/ab/bb/b31695a29eea76b1569fd28b4ab141a1adc9842edde080d1e8e1776862c7/mypy-1.13.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:8a21be69bd26fa81b1f80a61ee7ab05b076c674d9b18fb56239d72e21d9f4c80", size = 10184276 },
|
|
423
|
-
{ url = "https://files.pythonhosted.org/packages/a5/2d/4a23849729bb27934a0e079c9c1aad912167d875c7b070382a408d459651/mypy-1.13.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7b2353a44d2179846a096e25691d54d59904559f4232519d420d64da6828a3a7", size = 12587706 },
|
|
424
|
-
{ url = "https://files.pythonhosted.org/packages/5c/c3/d318e38ada50255e22e23353a469c791379825240e71b0ad03e76ca07ae6/mypy-1.13.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:0730d1c6a2739d4511dc4253f8274cdd140c55c32dfb0a4cf8b7a43f40abfa6f", size = 13105586 },
|
|
425
|
-
{ url = "https://files.pythonhosted.org/packages/4a/25/3918bc64952370c3dbdbd8c82c363804678127815febd2925b7273d9482c/mypy-1.13.0-cp310-cp310-win_amd64.whl", hash = "sha256:c5fc54dbb712ff5e5a0fca797e6e0aa25726c7e72c6a5850cfd2adbc1eb0a372", size = 9632318 },
|
|
426
376
|
{ url = "https://files.pythonhosted.org/packages/d0/19/de0822609e5b93d02579075248c7aa6ceaddcea92f00bf4ea8e4c22e3598/mypy-1.13.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:581665e6f3a8a9078f28d5502f4c334c0c8d802ef55ea0e7276a6e409bc0d82d", size = 10939027 },
|
|
427
377
|
{ url = "https://files.pythonhosted.org/packages/c8/71/6950fcc6ca84179137e4cbf7cf41e6b68b4a339a1f5d3e954f8c34e02d66/mypy-1.13.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3ddb5b9bf82e05cc9a627e84707b528e5c7caaa1c55c69e175abb15a761cec2d", size = 10108699 },
|
|
428
378
|
{ url = "https://files.pythonhosted.org/packages/26/50/29d3e7dd166e74dc13d46050b23f7d6d7533acf48f5217663a3719db024e/mypy-1.13.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:20c7ee0bc0d5a9595c46f38beb04201f2620065a93755704e141fcac9f59db2b", size = 12506263 },
|
|
@@ -462,7 +412,7 @@ wheels = [
|
|
|
462
412
|
|
|
463
413
|
[[package]]
|
|
464
414
|
name = "openai"
|
|
465
|
-
version = "1.55.
|
|
415
|
+
version = "1.55.2"
|
|
466
416
|
source = { registry = "https://pypi.org/simple" }
|
|
467
417
|
dependencies = [
|
|
468
418
|
{ name = "anyio" },
|
|
@@ -474,9 +424,9 @@ dependencies = [
|
|
|
474
424
|
{ name = "tqdm" },
|
|
475
425
|
{ name = "typing-extensions" },
|
|
476
426
|
]
|
|
477
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
427
|
+
sdist = { url = "https://files.pythonhosted.org/packages/e2/ae/ef32e19631f752d3b10bbfa0bda2b3f63865438635bee7356d4b3c8a6bf6/openai-1.55.2.tar.gz", hash = "sha256:5cc0b1162b65dcdf670b4b41448f18dd470d2724ca04821ab1e86b6b4e88650b", size = 314465 }
|
|
478
428
|
wheels = [
|
|
479
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
429
|
+
{ url = "https://files.pythonhosted.org/packages/cb/d7/6ae403b1fd5667621f8a4b6d2eec954da7ab7efd2ba1b0b41c6c791af67a/openai-1.55.2-py3-none-any.whl", hash = "sha256:3027c7fa4a33ed759f4a3d076093fcfa1c55658660c889bec33f651e2dc77922", size = 389537 },
|
|
480
430
|
]
|
|
481
431
|
|
|
482
432
|
[[package]]
|
|
@@ -568,19 +518,6 @@ dependencies = [
|
|
|
568
518
|
]
|
|
569
519
|
sdist = { url = "https://files.pythonhosted.org/packages/a6/9f/7de1f19b6aea45aeb441838782d68352e71bfa98ee6fa048d5041991b33e/pydantic_core-2.27.1.tar.gz", hash = "sha256:62a763352879b84aa31058fc931884055fd75089cccbd9d58bb6afd01141b235", size = 412785 }
|
|
570
520
|
wheels = [
|
|
571
|
-
{ url = "https://files.pythonhosted.org/packages/6e/ce/60fd96895c09738648c83f3f00f595c807cb6735c70d3306b548cc96dd49/pydantic_core-2.27.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:71a5e35c75c021aaf400ac048dacc855f000bdfed91614b4a726f7432f1f3d6a", size = 1897984 },
|
|
572
|
-
{ url = "https://files.pythonhosted.org/packages/fd/b9/84623d6b6be98cc209b06687d9bca5a7b966ffed008d15225dd0d20cce2e/pydantic_core-2.27.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f82d068a2d6ecfc6e054726080af69a6764a10015467d7d7b9f66d6ed5afa23b", size = 1807491 },
|
|
573
|
-
{ url = "https://files.pythonhosted.org/packages/01/72/59a70165eabbc93b1111d42df9ca016a4aa109409db04304829377947028/pydantic_core-2.27.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:121ceb0e822f79163dd4699e4c54f5ad38b157084d97b34de8b232bcaad70278", size = 1831953 },
|
|
574
|
-
{ url = "https://files.pythonhosted.org/packages/7c/0c/24841136476adafd26f94b45bb718a78cb0500bd7b4f8d667b67c29d7b0d/pydantic_core-2.27.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:4603137322c18eaf2e06a4495f426aa8d8388940f3c457e7548145011bb68e05", size = 1856071 },
|
|
575
|
-
{ url = "https://files.pythonhosted.org/packages/53/5e/c32957a09cceb2af10d7642df45d1e3dbd8596061f700eac93b801de53c0/pydantic_core-2.27.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a33cd6ad9017bbeaa9ed78a2e0752c5e250eafb9534f308e7a5f7849b0b1bfb4", size = 2038439 },
|
|
576
|
-
{ url = "https://files.pythonhosted.org/packages/e4/8f/979ab3eccd118b638cd6d8f980fea8794f45018255a36044dea40fe579d4/pydantic_core-2.27.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:15cc53a3179ba0fcefe1e3ae50beb2784dede4003ad2dfd24f81bba4b23a454f", size = 2787416 },
|
|
577
|
-
{ url = "https://files.pythonhosted.org/packages/02/1d/00f2e4626565b3b6d3690dab4d4fe1a26edd6a20e53749eb21ca892ef2df/pydantic_core-2.27.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:45d9c5eb9273aa50999ad6adc6be5e0ecea7e09dbd0d31bd0c65a55a2592ca08", size = 2134548 },
|
|
578
|
-
{ url = "https://files.pythonhosted.org/packages/9d/46/3112621204128b90898adc2e721a3cd6cf5626504178d6f32c33b5a43b79/pydantic_core-2.27.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:8bf7b66ce12a2ac52d16f776b31d16d91033150266eb796967a7e4621707e4f6", size = 1989882 },
|
|
579
|
-
{ url = "https://files.pythonhosted.org/packages/49/ec/557dd4ff5287ffffdf16a31d08d723de6762bb1b691879dc4423392309bc/pydantic_core-2.27.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:655d7dd86f26cb15ce8a431036f66ce0318648f8853d709b4167786ec2fa4807", size = 1995829 },
|
|
580
|
-
{ url = "https://files.pythonhosted.org/packages/6e/b2/610dbeb74d8d43921a7234555e4c091cb050a2bdb8cfea86d07791ce01c5/pydantic_core-2.27.1-cp310-cp310-musllinux_1_1_armv7l.whl", hash = "sha256:5556470f1a2157031e676f776c2bc20acd34c1990ca5f7e56f1ebf938b9ab57c", size = 2091257 },
|
|
581
|
-
{ url = "https://files.pythonhosted.org/packages/8c/7f/4bf8e9d26a9118521c80b229291fa9558a07cdd9a968ec2d5c1026f14fbc/pydantic_core-2.27.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:f69ed81ab24d5a3bd93861c8c4436f54afdf8e8cc421562b0c7504cf3be58206", size = 2143894 },
|
|
582
|
-
{ url = "https://files.pythonhosted.org/packages/1f/1c/875ac7139c958f4390f23656fe696d1acc8edf45fb81e4831960f12cd6e4/pydantic_core-2.27.1-cp310-none-win32.whl", hash = "sha256:f5a823165e6d04ccea61a9f0576f345f8ce40ed533013580e087bd4d7442b52c", size = 1816081 },
|
|
583
|
-
{ url = "https://files.pythonhosted.org/packages/d7/41/55a117acaeda25ceae51030b518032934f251b1dac3704a53781383e3491/pydantic_core-2.27.1-cp310-none-win_amd64.whl", hash = "sha256:57866a76e0b3823e0b56692d1a0bf722bffb324839bb5b7226a7dbd6c9a40b17", size = 1981109 },
|
|
584
521
|
{ url = "https://files.pythonhosted.org/packages/27/39/46fe47f2ad4746b478ba89c561cafe4428e02b3573df882334bd2964f9cb/pydantic_core-2.27.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:ac3b20653bdbe160febbea8aa6c079d3df19310d50ac314911ed8cc4eb7f8cb8", size = 1895553 },
|
|
585
522
|
{ url = "https://files.pythonhosted.org/packages/1c/00/0804e84a78b7fdb394fff4c4f429815a10e5e0993e6ae0e0b27dd20379ee/pydantic_core-2.27.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a5a8e19d7c707c4cadb8c18f5f60c843052ae83c20fa7d44f41594c644a1d330", size = 1807220 },
|
|
586
523
|
{ url = "https://files.pythonhosted.org/packages/01/de/df51b3bac9820d38371f5a261020f505025df732ce566c2a2e7970b84c8c/pydantic_core-2.27.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7f7059ca8d64fea7f238994c97d91f75965216bcbe5f695bb44f354893f11d52", size = 1829727 },
|
|
@@ -609,15 +546,6 @@ wheels = [
|
|
|
609
546
|
{ url = "https://files.pythonhosted.org/packages/52/e5/4f0fbd5c5995cc70d3afed1b5c754055bb67908f55b5cb8000f7112749bf/pydantic_core-2.27.1-cp312-none-win32.whl", hash = "sha256:672ebbe820bb37988c4d136eca2652ee114992d5d41c7e4858cdd90ea94ffe5c", size = 1833633 },
|
|
610
547
|
{ url = "https://files.pythonhosted.org/packages/ee/f2/c61486eee27cae5ac781305658779b4a6b45f9cc9d02c90cb21b940e82cc/pydantic_core-2.27.1-cp312-none-win_amd64.whl", hash = "sha256:66ff044fd0bb1768688aecbe28b6190f6e799349221fb0de0e6f4048eca14c16", size = 1986973 },
|
|
611
548
|
{ url = "https://files.pythonhosted.org/packages/df/a6/e3f12ff25f250b02f7c51be89a294689d175ac76e1096c32bf278f29ca1e/pydantic_core-2.27.1-cp312-none-win_arm64.whl", hash = "sha256:9a3b0793b1bbfd4146304e23d90045f2a9b5fd5823aa682665fbdaf2a6c28f3e", size = 1883215 },
|
|
612
|
-
{ url = "https://files.pythonhosted.org/packages/7c/60/e5eb2d462595ba1f622edbe7b1d19531e510c05c405f0b87c80c1e89d5b1/pydantic_core-2.27.1-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:3fa80ac2bd5856580e242dbc202db873c60a01b20309c8319b5c5986fbe53ce6", size = 1894016 },
|
|
613
|
-
{ url = "https://files.pythonhosted.org/packages/61/20/da7059855225038c1c4326a840908cc7ca72c7198cb6addb8b92ec81c1d6/pydantic_core-2.27.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:d950caa237bb1954f1b8c9227b5065ba6875ac9771bb8ec790d956a699b78676", size = 1771648 },
|
|
614
|
-
{ url = "https://files.pythonhosted.org/packages/8f/fc/5485cf0b0bb38da31d1d292160a4d123b5977841ddc1122c671a30b76cfd/pydantic_core-2.27.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0e4216e64d203e39c62df627aa882f02a2438d18a5f21d7f721621f7a5d3611d", size = 1826929 },
|
|
615
|
-
{ url = "https://files.pythonhosted.org/packages/a1/ff/fb1284a210e13a5f34c639efc54d51da136074ffbe25ec0c279cf9fbb1c4/pydantic_core-2.27.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:02a3d637bd387c41d46b002f0e49c52642281edacd2740e5a42f7017feea3f2c", size = 1980591 },
|
|
616
|
-
{ url = "https://files.pythonhosted.org/packages/f1/14/77c1887a182d05af74f6aeac7b740da3a74155d3093ccc7ee10b900cc6b5/pydantic_core-2.27.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:161c27ccce13b6b0c8689418da3885d3220ed2eae2ea5e9b2f7f3d48f1d52c27", size = 1981326 },
|
|
617
|
-
{ url = "https://files.pythonhosted.org/packages/06/aa/6f1b2747f811a9c66b5ef39d7f02fbb200479784c75e98290d70004b1253/pydantic_core-2.27.1-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:19910754e4cc9c63bc1c7f6d73aa1cfee82f42007e407c0f413695c2f7ed777f", size = 1989205 },
|
|
618
|
-
{ url = "https://files.pythonhosted.org/packages/7a/d2/8ce2b074d6835f3c88d85f6d8a399790043e9fdb3d0e43455e72d19df8cc/pydantic_core-2.27.1-pp310-pypy310_pp73-musllinux_1_1_armv7l.whl", hash = "sha256:e173486019cc283dc9778315fa29a363579372fe67045e971e89b6365cc035ed", size = 2079616 },
|
|
619
|
-
{ url = "https://files.pythonhosted.org/packages/65/71/af01033d4e58484c3db1e5d13e751ba5e3d6b87cc3368533df4c50932c8b/pydantic_core-2.27.1-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:af52d26579b308921b73b956153066481f064875140ccd1dfd4e77db89dbb12f", size = 2133265 },
|
|
620
|
-
{ url = "https://files.pythonhosted.org/packages/33/72/f881b5e18fbb67cf2fb4ab253660de3c6899dbb2dba409d0b757e3559e3d/pydantic_core-2.27.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:981fb88516bd1ae8b0cbbd2034678a39dedc98752f264ac9bc5839d3923fa04c", size = 2001864 },
|
|
621
549
|
]
|
|
622
550
|
|
|
623
551
|
[[package]]
|
|
@@ -665,22 +593,6 @@ version = "2024.11.6"
|
|
|
665
593
|
source = { registry = "https://pypi.org/simple" }
|
|
666
594
|
sdist = { url = "https://files.pythonhosted.org/packages/8e/5f/bd69653fbfb76cf8604468d3b4ec4c403197144c7bfe0e6a5fc9e02a07cb/regex-2024.11.6.tar.gz", hash = "sha256:7ab159b063c52a0333c884e4679f8d7a85112ee3078fe3d9004b2dd875585519", size = 399494 }
|
|
667
595
|
wheels = [
|
|
668
|
-
{ url = "https://files.pythonhosted.org/packages/95/3c/4651f6b130c6842a8f3df82461a8950f923925db8b6961063e82744bddcc/regex-2024.11.6-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ff590880083d60acc0433f9c3f713c51f7ac6ebb9adf889c79a261ecf541aa91", size = 482674 },
|
|
669
|
-
{ url = "https://files.pythonhosted.org/packages/15/51/9f35d12da8434b489c7b7bffc205c474a0a9432a889457026e9bc06a297a/regex-2024.11.6-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:658f90550f38270639e83ce492f27d2c8d2cd63805c65a13a14d36ca126753f0", size = 287684 },
|
|
670
|
-
{ url = "https://files.pythonhosted.org/packages/bd/18/b731f5510d1b8fb63c6b6d3484bfa9a59b84cc578ac8b5172970e05ae07c/regex-2024.11.6-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:164d8b7b3b4bcb2068b97428060b2a53be050085ef94eca7f240e7947f1b080e", size = 284589 },
|
|
671
|
-
{ url = "https://files.pythonhosted.org/packages/78/a2/6dd36e16341ab95e4c6073426561b9bfdeb1a9c9b63ab1b579c2e96cb105/regex-2024.11.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d3660c82f209655a06b587d55e723f0b813d3a7db2e32e5e7dc64ac2a9e86fde", size = 782511 },
|
|
672
|
-
{ url = "https://files.pythonhosted.org/packages/1b/2b/323e72d5d2fd8de0d9baa443e1ed70363ed7e7b2fb526f5950c5cb99c364/regex-2024.11.6-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d22326fcdef5e08c154280b71163ced384b428343ae16a5ab2b3354aed12436e", size = 821149 },
|
|
673
|
-
{ url = "https://files.pythonhosted.org/packages/90/30/63373b9ea468fbef8a907fd273e5c329b8c9535fee36fc8dba5fecac475d/regex-2024.11.6-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f1ac758ef6aebfc8943560194e9fd0fa18bcb34d89fd8bd2af18183afd8da3a2", size = 809707 },
|
|
674
|
-
{ url = "https://files.pythonhosted.org/packages/f2/98/26d3830875b53071f1f0ae6d547f1d98e964dd29ad35cbf94439120bb67a/regex-2024.11.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:997d6a487ff00807ba810e0f8332c18b4eb8d29463cfb7c820dc4b6e7562d0cf", size = 781702 },
|
|
675
|
-
{ url = "https://files.pythonhosted.org/packages/87/55/eb2a068334274db86208ab9d5599ffa63631b9f0f67ed70ea7c82a69bbc8/regex-2024.11.6-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:02a02d2bb04fec86ad61f3ea7f49c015a0681bf76abb9857f945d26159d2968c", size = 771976 },
|
|
676
|
-
{ url = "https://files.pythonhosted.org/packages/74/c0/be707bcfe98254d8f9d2cff55d216e946f4ea48ad2fd8cf1428f8c5332ba/regex-2024.11.6-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f02f93b92358ee3f78660e43b4b0091229260c5d5c408d17d60bf26b6c900e86", size = 697397 },
|
|
677
|
-
{ url = "https://files.pythonhosted.org/packages/49/dc/bb45572ceb49e0f6509f7596e4ba7031f6819ecb26bc7610979af5a77f45/regex-2024.11.6-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:06eb1be98df10e81ebaded73fcd51989dcf534e3c753466e4b60c4697a003b67", size = 768726 },
|
|
678
|
-
{ url = "https://files.pythonhosted.org/packages/5a/db/f43fd75dc4c0c2d96d0881967897926942e935d700863666f3c844a72ce6/regex-2024.11.6-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:040df6fe1a5504eb0f04f048e6d09cd7c7110fef851d7c567a6b6e09942feb7d", size = 775098 },
|
|
679
|
-
{ url = "https://files.pythonhosted.org/packages/99/d7/f94154db29ab5a89d69ff893159b19ada89e76b915c1293e98603d39838c/regex-2024.11.6-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:fdabbfc59f2c6edba2a6622c647b716e34e8e3867e0ab975412c5c2f79b82da2", size = 839325 },
|
|
680
|
-
{ url = "https://files.pythonhosted.org/packages/f7/17/3cbfab1f23356fbbf07708220ab438a7efa1e0f34195bf857433f79f1788/regex-2024.11.6-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:8447d2d39b5abe381419319f942de20b7ecd60ce86f16a23b0698f22e1b70008", size = 843277 },
|
|
681
|
-
{ url = "https://files.pythonhosted.org/packages/7e/f2/48b393b51900456155de3ad001900f94298965e1cad1c772b87f9cfea011/regex-2024.11.6-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:da8f5fc57d1933de22a9e23eec290a0d8a5927a5370d24bda9a6abe50683fe62", size = 773197 },
|
|
682
|
-
{ url = "https://files.pythonhosted.org/packages/45/3f/ef9589aba93e084cd3f8471fded352826dcae8489b650d0b9b27bc5bba8a/regex-2024.11.6-cp310-cp310-win32.whl", hash = "sha256:b489578720afb782f6ccf2840920f3a32e31ba28a4b162e13900c3e6bd3f930e", size = 261714 },
|
|
683
|
-
{ url = "https://files.pythonhosted.org/packages/42/7e/5f1b92c8468290c465fd50c5318da64319133231415a8aa6ea5ab995a815/regex-2024.11.6-cp310-cp310-win_amd64.whl", hash = "sha256:5071b2093e793357c9d8b2929dfc13ac5f0a6c650559503bb81189d0a3814519", size = 274042 },
|
|
684
596
|
{ url = "https://files.pythonhosted.org/packages/58/58/7e4d9493a66c88a7da6d205768119f51af0f684fe7be7bac8328e217a52c/regex-2024.11.6-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:5478c6962ad548b54a591778e93cd7c456a7a29f8eca9c49e4f9a806dcc5d638", size = 482669 },
|
|
685
597
|
{ url = "https://files.pythonhosted.org/packages/34/4c/8f8e631fcdc2ff978609eaeef1d6994bf2f028b59d9ac67640ed051f1218/regex-2024.11.6-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2c89a8cc122b25ce6945f0423dc1352cb9593c68abd19223eebbd4e56612c5b7", size = 287684 },
|
|
686
598
|
{ url = "https://files.pythonhosted.org/packages/c5/1b/f0e4d13e6adf866ce9b069e191f303a30ab1277e037037a365c3aad5cc9c/regex-2024.11.6-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:94d87b689cdd831934fa3ce16cc15cd65748e6d689f5d2b8f4f4df2065c9fa20", size = 284589 },
|
|
@@ -735,7 +647,6 @@ source = { registry = "https://pypi.org/simple" }
|
|
|
735
647
|
dependencies = [
|
|
736
648
|
{ name = "markdown-it-py" },
|
|
737
649
|
{ name = "pygments" },
|
|
738
|
-
{ name = "typing-extensions", marker = "python_full_version < '3.11'" },
|
|
739
650
|
]
|
|
740
651
|
sdist = { url = "https://files.pythonhosted.org/packages/ab/3a/0316b28d0761c6734d6bc14e770d85506c986c85ffb239e688eeaab2c2bc/rich-13.9.4.tar.gz", hash = "sha256:439594978a49a09530cff7ebc4b5c7103ef57baf48d5ea3184f21d9a2befa098", size = 223149 }
|
|
741
652
|
wheels = [
|
|
@@ -837,13 +748,6 @@ dependencies = [
|
|
|
837
748
|
]
|
|
838
749
|
sdist = { url = "https://files.pythonhosted.org/packages/c4/4a/abaec53e93e3ef37224a4dd9e2fc6bb871e7a538c2b6b9d2a6397271daf4/tiktoken-0.7.0.tar.gz", hash = "sha256:1077266e949c24e0291f6c350433c6f0971365ece2b173a23bc3b9f9defef6b6", size = 33437 }
|
|
839
750
|
wheels = [
|
|
840
|
-
{ url = "https://files.pythonhosted.org/packages/96/10/28d59d43d72a0ebd4211371d0bf10c935cdecbb62b812ae04c58bfc37d96/tiktoken-0.7.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:485f3cc6aba7c6b6ce388ba634fbba656d9ee27f766216f45146beb4ac18b25f", size = 961465 },
|
|
841
|
-
{ url = "https://files.pythonhosted.org/packages/f8/0c/d4125348dedd1f8f38e3f85245e7fc38858ffc77c9b7edfb762a8191ba0b/tiktoken-0.7.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e54be9a2cd2f6d6ffa3517b064983fb695c9a9d8aa7d574d1ef3c3f931a99225", size = 906849 },
|
|
842
|
-
{ url = "https://files.pythonhosted.org/packages/b9/ab/f9c7675747f259d133d66065106cf732a7c2bef6043062fbca8e011f7f4d/tiktoken-0.7.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:79383a6e2c654c6040e5f8506f3750db9ddd71b550c724e673203b4f6b4b4590", size = 1048795 },
|
|
843
|
-
{ url = "https://files.pythonhosted.org/packages/e7/8c/7d1007557b343d5cf18349802e94d3a14397121e9105b4661f8cd753f9bf/tiktoken-0.7.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d4511c52caacf3c4981d1ae2df85908bd31853f33d30b345c8b6830763f769c", size = 1080866 },
|
|
844
|
-
{ url = "https://files.pythonhosted.org/packages/72/40/61d6354cb64a563fce475a2907039be9fe809ca5f801213856353b01a35b/tiktoken-0.7.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:13c94efacdd3de9aff824a788353aa5749c0faee1fbe3816df365ea450b82311", size = 1092776 },
|
|
845
|
-
{ url = "https://files.pythonhosted.org/packages/f2/6c/83ca40527d072739f0704b9f59b325786c444ca63672a77cb69adc8181f7/tiktoken-0.7.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:8e58c7eb29d2ab35a7a8929cbeea60216a4ccdf42efa8974d8e176d50c9a3df5", size = 1142591 },
|
|
846
|
-
{ url = "https://files.pythonhosted.org/packages/ec/1f/a5d72755118e9e1b62cdf3ef9138eb83d49088f3cb37a9540025c81c0e75/tiktoken-0.7.0-cp310-cp310-win_amd64.whl", hash = "sha256:21a20c3bd1dd3e55b91c1331bf25f4af522c525e771691adbc9a69336fa7f702", size = 798864 },
|
|
847
751
|
{ url = "https://files.pythonhosted.org/packages/22/eb/57492b2568eea1d546da5cc1ae7559d924275280db80ba07e6f9b89a914b/tiktoken-0.7.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:10c7674f81e6e350fcbed7c09a65bca9356eaab27fb2dac65a1e440f2bcfe30f", size = 961468 },
|
|
848
752
|
{ url = "https://files.pythonhosted.org/packages/30/ef/e07dbfcb2f85c84abaa1b035a9279575a8da0236305491dc22ae099327f7/tiktoken-0.7.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:084cec29713bc9d4189a937f8a35dbdfa785bd1235a34c1124fe2323821ee93f", size = 907005 },
|
|
849
753
|
{ url = "https://files.pythonhosted.org/packages/ea/9b/f36db825b1e9904c3a2646439cb9923fc1e09208e2e071c6d9dd64ead131/tiktoken-0.7.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:811229fde1652fedcca7c6dfe76724d0908775b353556d8a71ed74d866f73f7b", size = 1049183 },
|
|
@@ -869,15 +773,6 @@ wheels = [
|
|
|
869
773
|
{ url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b", size = 16588 },
|
|
870
774
|
]
|
|
871
775
|
|
|
872
|
-
[[package]]
|
|
873
|
-
name = "tomli"
|
|
874
|
-
version = "2.1.0"
|
|
875
|
-
source = { registry = "https://pypi.org/simple" }
|
|
876
|
-
sdist = { url = "https://files.pythonhosted.org/packages/1e/e4/1b6cbcc82d8832dd0ce34767d5c560df8a3547ad8cbc427f34601415930a/tomli-2.1.0.tar.gz", hash = "sha256:3f646cae2aec94e17d04973e4249548320197cfabdf130015d023de4b74d8ab8", size = 16622 }
|
|
877
|
-
wheels = [
|
|
878
|
-
{ url = "https://files.pythonhosted.org/packages/de/f7/4da0ffe1892122c9ea096c57f64c2753ae5dd3ce85488802d11b0992cc6d/tomli-2.1.0-py3-none-any.whl", hash = "sha256:a5c57c3d1c56f5ccdf89f6523458f60ef716e210fc47c4cfb188c5ba473e0391", size = 13750 },
|
|
879
|
-
]
|
|
880
|
-
|
|
881
776
|
[[package]]
|
|
882
777
|
name = "tqdm"
|
|
883
778
|
version = "4.67.1"
|
|
@@ -957,7 +852,6 @@ source = { registry = "https://pypi.org/simple" }
|
|
|
957
852
|
dependencies = [
|
|
958
853
|
{ name = "click" },
|
|
959
854
|
{ name = "h11" },
|
|
960
|
-
{ name = "typing-extensions", marker = "python_full_version < '3.11'" },
|
|
961
855
|
]
|
|
962
856
|
sdist = { url = "https://files.pythonhosted.org/packages/6a/3c/21dba3e7d76138725ef307e3d7ddd29b763119b3aa459d02cc05fefcff75/uvicorn-0.32.1.tar.gz", hash = "sha256:ee9519c246a72b1c084cea8d3b44ed6026e78a4a309cbedae9c37e4cb9fbb175", size = 77630 }
|
|
963
857
|
wheels = [
|
|
@@ -966,7 +860,7 @@ wheels = [
|
|
|
966
860
|
|
|
967
861
|
[[package]]
|
|
968
862
|
name = "wcgw"
|
|
969
|
-
version = "1.5.
|
|
863
|
+
version = "1.5.1"
|
|
970
864
|
source = { editable = "." }
|
|
971
865
|
dependencies = [
|
|
972
866
|
{ name = "anthropic" },
|
|
@@ -1004,7 +898,7 @@ dev = [
|
|
|
1004
898
|
requires-dist = [
|
|
1005
899
|
{ name = "anthropic", specifier = ">=0.39.0" },
|
|
1006
900
|
{ name = "fastapi", specifier = ">=0.115.0" },
|
|
1007
|
-
{ name = "mcp",
|
|
901
|
+
{ name = "mcp", git = "https://github.com/rusiaaman/python-sdk?rev=53b69f397eae6ac81a51b84b34ff52b3119f11cb" },
|
|
1008
902
|
{ name = "mypy", specifier = ">=1.11.2" },
|
|
1009
903
|
{ name = "nltk", specifier = ">=3.9.1" },
|
|
1010
904
|
{ name = "openai", specifier = ">=1.46.0" },
|
|
@@ -1048,17 +942,6 @@ version = "14.1"
|
|
|
1048
942
|
source = { registry = "https://pypi.org/simple" }
|
|
1049
943
|
sdist = { url = "https://files.pythonhosted.org/packages/f4/1b/380b883ce05bb5f45a905b61790319a28958a9ab1e4b6b95ff5464b60ca1/websockets-14.1.tar.gz", hash = "sha256:398b10c77d471c0aab20a845e7a60076b6390bfdaac7a6d2edb0d2c59d75e8d8", size = 162840 }
|
|
1050
944
|
wheels = [
|
|
1051
|
-
{ url = "https://files.pythonhosted.org/packages/af/91/b1b375dbd856fd5fff3f117de0e520542343ecaf4e8fc60f1ac1e9f5822c/websockets-14.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a0adf84bc2e7c86e8a202537b4fd50e6f7f0e4a6b6bf64d7ccb96c4cd3330b29", size = 161950 },
|
|
1052
|
-
{ url = "https://files.pythonhosted.org/packages/61/8f/4d52f272d3ebcd35e1325c646e98936099a348374d4a6b83b524bded8116/websockets-14.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:90b5d9dfbb6d07a84ed3e696012610b6da074d97453bd01e0e30744b472c8179", size = 159601 },
|
|
1053
|
-
{ url = "https://files.pythonhosted.org/packages/c4/b1/29e87b53eb1937992cdee094a0988aadc94f25cf0b37e90c75eed7123d75/websockets-14.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2177ee3901075167f01c5e335a6685e71b162a54a89a56001f1c3e9e3d2ad250", size = 159854 },
|
|
1054
|
-
{ url = "https://files.pythonhosted.org/packages/3f/e6/752a2f5e8321ae2a613062676c08ff2fccfb37dc837a2ee919178a372e8a/websockets-14.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3f14a96a0034a27f9d47fd9788913924c89612225878f8078bb9d55f859272b0", size = 168835 },
|
|
1055
|
-
{ url = "https://files.pythonhosted.org/packages/60/27/ca62de7877596926321b99071639275e94bb2401397130b7cf33dbf2106a/websockets-14.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1f874ba705deea77bcf64a9da42c1f5fc2466d8f14daf410bc7d4ceae0a9fcb0", size = 167844 },
|
|
1056
|
-
{ url = "https://files.pythonhosted.org/packages/7e/db/f556a1d06635c680ef376be626c632e3f2bbdb1a0189d1d1bffb061c3b70/websockets-14.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9607b9a442392e690a57909c362811184ea429585a71061cd5d3c2b98065c199", size = 168157 },
|
|
1057
|
-
{ url = "https://files.pythonhosted.org/packages/b3/bc/99e5f511838c365ac6ecae19674eb5e94201aa4235bd1af3e6fa92c12905/websockets-14.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:bea45f19b7ca000380fbd4e02552be86343080120d074b87f25593ce1700ad58", size = 168561 },
|
|
1058
|
-
{ url = "https://files.pythonhosted.org/packages/c6/e7/251491585bad61c79e525ac60927d96e4e17b18447cc9c3cfab47b2eb1b8/websockets-14.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:219c8187b3ceeadbf2afcf0f25a4918d02da7b944d703b97d12fb01510869078", size = 167979 },
|
|
1059
|
-
{ url = "https://files.pythonhosted.org/packages/ac/98/7ac2e4eeada19bdbc7a3a66a58e3ebdf33648b9e1c5b3f08c3224df168cf/websockets-14.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:ad2ab2547761d79926effe63de21479dfaf29834c50f98c4bf5b5480b5838434", size = 167925 },
|
|
1060
|
-
{ url = "https://files.pythonhosted.org/packages/ab/3d/09e65c47ee2396b7482968068f6e9b516221e1032b12dcf843b9412a5dfb/websockets-14.1-cp310-cp310-win32.whl", hash = "sha256:1288369a6a84e81b90da5dbed48610cd7e5d60af62df9851ed1d1d23a9069f10", size = 162831 },
|
|
1061
|
-
{ url = "https://files.pythonhosted.org/packages/8a/67/59828a3d09740e6a485acccfbb66600632f2178b6ed1b61388ee96f17d5a/websockets-14.1-cp310-cp310-win_amd64.whl", hash = "sha256:e0744623852f1497d825a49a99bfbec9bea4f3f946df6eb9d8a2f0c37a2fec2e", size = 163266 },
|
|
1062
945
|
{ url = "https://files.pythonhosted.org/packages/97/ed/c0d03cb607b7fe1f7ff45e2cd4bb5cd0f9e3299ced79c2c303a6fff44524/websockets-14.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:449d77d636f8d9c17952628cc7e3b8faf6e92a17ec581ec0c0256300717e1512", size = 161949 },
|
|
1063
946
|
{ url = "https://files.pythonhosted.org/packages/06/91/bf0a44e238660d37a2dda1b4896235d20c29a2d0450f3a46cd688f43b239/websockets-14.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:a35f704be14768cea9790d921c2c1cc4fc52700410b1c10948511039be824aac", size = 159606 },
|
|
1064
947
|
{ url = "https://files.pythonhosted.org/packages/ff/b8/7185212adad274c2b42b6a24e1ee6b916b7809ed611cbebc33b227e5c215/websockets-14.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b1f3628a0510bd58968c0f60447e7a692933589b791a6b572fcef374053ca280", size = 159854 },
|
|
@@ -1081,11 +964,5 @@ wheels = [
|
|
|
1081
964
|
{ url = "https://files.pythonhosted.org/packages/cf/53/1bf0c06618b5ac35f1d7906444b9958f8485682ab0ea40dee7b17a32da1e/websockets-14.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:eb6d38971c800ff02e4a6afd791bbe3b923a9a57ca9aeab7314c21c84bf9ff05", size = 168712 },
|
|
1082
965
|
{ url = "https://files.pythonhosted.org/packages/e5/22/5ec2f39fff75f44aa626f86fa7f20594524a447d9c3be94d8482cd5572ef/websockets-14.1-cp312-cp312-win32.whl", hash = "sha256:1d045cbe1358d76b24d5e20e7b1878efe578d9897a25c24e6006eef788c0fdf0", size = 162838 },
|
|
1083
966
|
{ url = "https://files.pythonhosted.org/packages/74/27/28f07df09f2983178db7bf6c9cccc847205d2b92ced986cd79565d68af4f/websockets-14.1-cp312-cp312-win_amd64.whl", hash = "sha256:90f4c7a069c733d95c308380aae314f2cb45bd8a904fb03eb36d1a4983a4993f", size = 163277 },
|
|
1084
|
-
{ url = "https://files.pythonhosted.org/packages/fb/cd/382a05a1ba2a93bd9fb807716a660751295df72e77204fb130a102fcdd36/websockets-14.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:e5dc25a9dbd1a7f61eca4b7cb04e74ae4b963d658f9e4f9aad9cd00b688692c8", size = 159633 },
|
|
1085
|
-
{ url = "https://files.pythonhosted.org/packages/b7/a0/fa7c62e2952ef028b422fbf420f9353d9dd4dfaa425de3deae36e98c0784/websockets-14.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:04a97aca96ca2acedf0d1f332c861c5a4486fdcba7bcef35873820f940c4231e", size = 159867 },
|
|
1086
|
-
{ url = "https://files.pythonhosted.org/packages/c1/94/954b4924f868db31d5f0935893c7a8446515ee4b36bb8ad75a929469e453/websockets-14.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:df174ece723b228d3e8734a6f2a6febbd413ddec39b3dc592f5a4aa0aff28098", size = 161121 },
|
|
1087
|
-
{ url = "https://files.pythonhosted.org/packages/7a/2e/f12bbb41a8f2abb76428ba4fdcd9e67b5b364a3e7fa97c88f4d6950aa2d4/websockets-14.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:034feb9f4286476f273b9a245fb15f02c34d9586a5bc936aff108c3ba1b21beb", size = 160731 },
|
|
1088
|
-
{ url = "https://files.pythonhosted.org/packages/13/97/b76979401f2373af1fe3e08f960b265cecab112e7dac803446fb98351a52/websockets-14.1-pp310-pypy310_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:660c308dabd2b380807ab64b62985eaccf923a78ebc572bd485375b9ca2b7dc7", size = 160681 },
|
|
1089
|
-
{ url = "https://files.pythonhosted.org/packages/39/9c/16916d9a436c109a1d7ba78817e8fee357b78968be3f6e6f517f43afa43d/websockets-14.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:5a42d3ecbb2db5080fc578314439b1d79eef71d323dc661aa616fb492436af5d", size = 163316 },
|
|
1090
967
|
{ url = "https://files.pythonhosted.org/packages/b0/0b/c7e5d11020242984d9d37990310520ed663b942333b83a033c2f20191113/websockets-14.1-py3-none-any.whl", hash = "sha256:4d4fc827a20abe6d544a119896f6b78ee13fe81cbfef416f3f2ddf09a03f0e2e", size = 156277 },
|
|
1091
968
|
]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{wcgw-1.5.0 → wcgw-1.5.2}/add.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
|