wcgw 2.4.2__tar.gz → 2.4.3__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-2.4.2 → wcgw-2.4.3}/PKG-INFO +1 -1
- {wcgw-2.4.2 → wcgw-2.4.3}/pyproject.toml +1 -1
- {wcgw-2.4.2 → wcgw-2.4.3}/src/wcgw/client/tools.py +15 -4
- {wcgw-2.4.2 → wcgw-2.4.3}/uv.lock +1 -1
- {wcgw-2.4.2 → wcgw-2.4.3}/.github/workflows/python-publish.yml +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/.github/workflows/python-tests.yml +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/.github/workflows/python-types.yml +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/.gitignore +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/.gitmodules +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/.python-version +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/.vscode/settings.json +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/README.md +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/gpt_action_json_schema.json +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/gpt_instructions.txt +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/openai.md +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/__init__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/.git +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/.github/workflows/main-checks.yml +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/.github/workflows/publish-pypi.yml +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/.github/workflows/pull-request-checks.yml +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/.github/workflows/shared.yml +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/.gitignore +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/.python-version +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/CODE_OF_CONDUCT.md +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/CONTRIBUTING.md +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/LICENSE +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/README.md +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/RELEASE.md +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/SECURITY.md +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/README.md +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-prompt/.python-version +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-prompt/README.md +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-prompt/mcp_simple_prompt/__init__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-prompt/mcp_simple_prompt/__main__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-prompt/mcp_simple_prompt/server.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-prompt/pyproject.toml +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-resource/.python-version +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-resource/README.md +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-resource/mcp_simple_resource/__init__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-resource/mcp_simple_resource/__main__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-resource/mcp_simple_resource/server.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-resource/pyproject.toml +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-tool/.python-version +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-tool/README.md +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-tool/mcp_simple_tool/__init__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-tool/mcp_simple_tool/__main__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-tool/mcp_simple_tool/server.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-tool/pyproject.toml +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/pyproject.toml +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/__init__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/client/__init__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/client/__main__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/client/session.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/client/sse.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/client/stdio.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/py.typed +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/server/__init__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/server/__main__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/server/models.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/server/session.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/server/sse.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/server/stdio.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/server/websocket.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/shared/__init__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/shared/context.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/shared/exceptions.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/shared/memory.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/shared/progress.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/shared/session.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/shared/version.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/src/mcp_wcgw/types.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/tests/__init__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/tests/client/__init__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/tests/client/test_session.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/tests/client/test_stdio.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/tests/conftest.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/tests/server/__init__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/tests/server/test_session.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/tests/server/test_stdio.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/tests/shared/test_memory.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/tests/test_types.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/uv.lock +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/wcgw/__init__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/wcgw/client/__init__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/wcgw/client/__main__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/wcgw/client/anthropic_client.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/wcgw/client/cli.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/wcgw/client/common.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/wcgw/client/computer_use.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/wcgw/client/diff-instructions.txt +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/wcgw/client/mcp_server/Readme.md +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/wcgw/client/mcp_server/__init__.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/wcgw/client/mcp_server/server.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/wcgw/client/openai_client.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/wcgw/client/openai_utils.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/wcgw/client/sys_utils.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/wcgw/relay/serve.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/wcgw/relay/static/privacy.txt +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/src/wcgw/types_.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/static/claude-ss.jpg +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/static/computer-use.jpg +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/static/example.jpg +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/static/rocket-icon.png +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/static/ss1.png +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/tests/test_basic.py +0 -0
- {wcgw-2.4.2 → wcgw-2.4.3}/tests/test_tools.py +0 -0
|
@@ -397,6 +397,12 @@ def _incremental_text(text: str, last_pending_output: str) -> str:
|
|
|
397
397
|
return rstrip(rendered)
|
|
398
398
|
|
|
399
399
|
|
|
400
|
+
def is_status_check(arg: BashInteraction | BashCommand) -> bool:
|
|
401
|
+
return isinstance(arg, BashInteraction) and (
|
|
402
|
+
arg.send_specials == ["Enter"] or arg.send_ascii == [10]
|
|
403
|
+
)
|
|
404
|
+
|
|
405
|
+
|
|
400
406
|
def execute_bash(
|
|
401
407
|
enc: tiktoken.Encoding,
|
|
402
408
|
bash_arg: BashCommand | BashInteraction,
|
|
@@ -428,7 +434,9 @@ def execute_bash(
|
|
|
428
434
|
"Command should not contain newline character in middle. Run only one command at a time."
|
|
429
435
|
)
|
|
430
436
|
|
|
431
|
-
|
|
437
|
+
for i in range(0, len(command), 128):
|
|
438
|
+
BASH_STATE.shell.send(command[i : i + 128])
|
|
439
|
+
BASH_STATE.shell.send(BASH_STATE.shell.linesep)
|
|
432
440
|
|
|
433
441
|
else:
|
|
434
442
|
if (
|
|
@@ -491,7 +499,9 @@ def execute_bash(
|
|
|
491
499
|
0,
|
|
492
500
|
)
|
|
493
501
|
console.print(f"Interact text: {bash_arg.send_text}")
|
|
494
|
-
|
|
502
|
+
for i in range(0, len(bash_arg.send_text), 128):
|
|
503
|
+
BASH_STATE.shell.send(bash_arg.send_text[i : i + 128])
|
|
504
|
+
BASH_STATE.shell.send(BASH_STATE.shell.linesep)
|
|
495
505
|
|
|
496
506
|
except KeyboardInterrupt:
|
|
497
507
|
BASH_STATE.shell.sendintr()
|
|
@@ -505,13 +515,14 @@ def execute_bash(
|
|
|
505
515
|
incremental_text = _incremental_text(text, BASH_STATE.pending_output)
|
|
506
516
|
|
|
507
517
|
second_wait_success = False
|
|
508
|
-
if
|
|
518
|
+
if is_status_check(bash_arg):
|
|
509
519
|
# There's some text in BashInteraction mode wait for TIMEOUT_WHILE_OUTPUT
|
|
510
520
|
remaining = TIMEOUT_WHILE_OUTPUT - wait
|
|
511
521
|
patience = OUTPUT_WAIT_PATIENCE
|
|
522
|
+
if not incremental_text:
|
|
523
|
+
patience -= 1
|
|
512
524
|
itext = incremental_text
|
|
513
525
|
while remaining > 0 and patience > 0:
|
|
514
|
-
print(remaining, TIMEOUT_WHILE_OUTPUT)
|
|
515
526
|
index = BASH_STATE.shell.expect([PROMPT, pexpect.TIMEOUT], timeout=wait)
|
|
516
527
|
if index == 0:
|
|
517
528
|
second_wait_success = True
|
|
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
|
{wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-prompt/mcp_simple_prompt/__init__.py
RENAMED
|
File without changes
|
{wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-prompt/mcp_simple_prompt/__main__.py
RENAMED
|
File without changes
|
{wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-prompt/mcp_simple_prompt/server.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
|
{wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-tool/mcp_simple_tool/__init__.py
RENAMED
|
File without changes
|
{wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-tool/mcp_simple_tool/__main__.py
RENAMED
|
File without changes
|
{wcgw-2.4.2 → wcgw-2.4.3}/src/mcp_wcgw/examples/servers/simple-tool/mcp_simple_tool/server.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
|
|
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
|