diff --git a/tests/tools/test_terminal_requirements.py b/tests/tools/test_terminal_requirements.py new file mode 100644 index 0000000000..00dc6ba5a6 --- /dev/null +++ b/tests/tools/test_terminal_requirements.py @@ -0,0 +1,15 @@ +import logging + +from tools.terminal_tool import check_terminal_requirements + + +def test_local_terminal_requirements_do_not_depend_on_minisweagent(monkeypatch, caplog): + """Local backend uses Hermes' own LocalEnvironment wrapper and should not + be marked unavailable just because `minisweagent` isn't importable.""" + monkeypatch.setenv("TERMINAL_ENV", "local") + + with caplog.at_level(logging.ERROR): + ok = check_terminal_requirements() + + assert ok is True + assert "Terminal requirements check failed" not in caplog.text diff --git a/tools/terminal_tool.py b/tools/terminal_tool.py index d124dba9d2..afc064b52c 100644 --- a/tools/terminal_tool.py +++ b/tools/terminal_tool.py @@ -1130,7 +1130,8 @@ def check_terminal_requirements() -> bool: try: if env_type == "local": - from minisweagent.environments.local import LocalEnvironment + # Local execution uses Hermes' own LocalEnvironment wrapper and does + # not depend on minisweagent being importable. return True elif env_type == "docker": from minisweagent.environments.docker import DockerEnvironment