From 5007718ac19238a0d41536fdb509a8b84d448588 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 18 Aug 2026 20:18:17 +0000 Subject: [PATCH 1/2] Initial plan From be3835739c337d3ab2eb2653d3255419e7b7c79e Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 18 Aug 2026 20:21:46 +0000 Subject: [PATCH 2/2] Fix Docker CLI failure from Typer/Click option parsing Co-authored-by: anascherif <211701424+anascherif@users.noreply.github.com> --- erreetool/commands/memory.py | 6 +++--- pyproject.toml | 1 + requirements.txt | 1 + tests/test_cli.py | 11 +++++++++++ 4 files changed, 16 insertions(+), 3 deletions(-) create mode 100644 tests/test_cli.py diff --git a/erreetool/commands/memory.py b/erreetool/commands/memory.py index db412af..afdbfb8 100644 --- a/erreetool/commands/memory.py +++ b/erreetool/commands/memory.py @@ -28,8 +28,8 @@ def run( ), input_file: str = typer.Option(None, "--input", help="Input file for import"), confirm: bool = typer.Option(False, "--yes", "-y", help="Skip confirmation"), - merge: bool = typer.Option( - True, "--merge/--replace", help="Merge with existing or replace" + replace: bool = typer.Option( + False, "--replace", help="Replace existing memory instead of merging" ), ) -> None: """Manage agent persistent memory.""" @@ -48,7 +48,7 @@ def run( elif subcommand == "export": _export_memory(output, type) elif subcommand == "import": - _import_memory(input_file, merge) + _import_memory(input_file, not replace) else: console.print(f"[red]Unknown subcommand: {subcommand}[/red]") console.print("Available: list, show, search, stats, clear, export, import") diff --git a/pyproject.toml b/pyproject.toml index 1d65abb..1a154c8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -31,6 +31,7 @@ dependencies = [ "scapy==2.5.0", "speedtest-cli==2.1.3", "typer==0.12.3", + "click>=8.1.7,<8.2", "fastapi==0.111.0", "uvicorn==0.30.1", "pydantic==2.7.4", diff --git a/requirements.txt b/requirements.txt index bc5ac81..226040b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -7,6 +7,7 @@ rich==13.7.1 scapy==2.5.0 speedtest-cli==2.1.3 typer==0.12.3 +click>=8.1.7,<8.2 fastapi==0.111.0 uvicorn==0.30.1 pydantic==2.7.4 diff --git a/tests/test_cli.py b/tests/test_cli.py new file mode 100644 index 0000000..25243c3 --- /dev/null +++ b/tests/test_cli.py @@ -0,0 +1,11 @@ +"""CLI wiring tests.""" + +from typer.main import get_command + +from erreetool import cli + + +def test_cli_builds_command_tree(): + """CLI command tree should build without Typer/Click option errors.""" + command = get_command(cli.app) + assert command.name == "erreetool"