OpenHands icon indicating copy to clipboard operation
OpenHands copied to clipboard

[Bug]: ERROR:root:<class 'ValueError'>: tmux is not properly installed or available on the path.

Open saijayanth59 opened this issue 6 months ago • 1 comments

Is there an existing issue for the same bug? (If one exists, thumbs up or comment on the issue instead).

  • [x] I have checked the existing issues.

Describe the bug and reproduction steps

OPERATING SYSTEM: UBUNTU RUNTIME: local

The check_dependencies function uses libtmux to verify tmux functionality by attempting to create a session (often named test-session), send keys, and capture output.

If a tmux session with the hardcoded test name (e.g., test-session) already exists: libtmux's server.new_session() correctly raises libtmux.exc.TmuxSessionExists. However, the generic except Exception as e: block in check_dependencies catches this and re-raises it as the misleading ValueError: tmux is not properly installed....

Even if the test session doesn't pre-exist, libtmux's server.new_session() is failing internally, raising libtmux.exc.TmuxObjectDoesNotExist.

OpenHands Installation

CLI

OpenHands Version

No response

Operating System

Linux

Logs, Errors, Screenshots, and Additional Context

tmux -V tmux 3.4 (base) ➜ OpenHands git:(main) ✗ poetry run python -m openhands.core.main -t "hey there"
11:50:02 - openhands:WARNING: agent_config.py:88 - Invalid base agent configuration: 1 validation error for AgentConfig function_calling Extra inputs are not permitted [type=extra_forbidden, input_value=False, input_type=bool] For further information visit https://errors.pydantic.dev/2.11/v/extra_forbidden. Using defaults. 11:50:02 - openhands:WARNING: local_runtime.py:162 - Initializing LocalRuntime. WARNING: NO SANDBOX IS USED. This is an experimental feature, please report issues to https://github.com/All-Hands-AI/OpenHands/issues. run_as_openhands will be ignored since the current user will be used to launch the server. We highly recommend using a sandbox (eg. DockerRuntime) unless you are running in a controlled environment. User ID: 1000. Username: sai. 11:50:02 - openhands:WARNING: local_runtime.py:252 - Workspace base path is NOT set. Agent will run in a temporary directory. 11:50:02 - openhands:INFO: local_runtime.py:260 - Using workspace directory: /tmp/openhands_workspace_592a9566-481e-41ba-a195-bfb3c5c34a0e-2fd266d90d2d84d0qdx4uhhx ERROR:root: File "", line 198, in _run_module_as_main File "", line 88, in _run_code File "/home/sai/playground/workik/open2/OpenHands/openhands/core/main.py", line 301, in asyncio.run( File "/home/sai/miniforge3/lib/python3.12/asyncio/runners.py", line 195, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "/home/sai/miniforge3/lib/python3.12/asyncio/runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/sai/miniforge3/lib/python3.12/asyncio/base_events.py", line 691, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "/home/sai/playground/workik/open2/OpenHands/openhands/core/main.py", line 112, in run_controller call_async_from_sync(runtime.connect) File "/home/sai/playground/workik/open2/OpenHands/openhands/utils/async_utils.py", line 54, in call_async_from_sync result = future.result() ^^^^^^^^^^^^^^^ File "/home/sai/miniforge3/lib/python3.12/concurrent/futures/_base.py", line 449, in result return self.__get_result() ^^^^^^^^^^^^^^^^^^^ File "/home/sai/miniforge3/lib/python3.12/concurrent/futures/_base.py", line 401, in __get_result raise self._exception File "/home/sai/miniforge3/lib/python3.12/concurrent/futures/thread.py", line 59, in run result = self.fn(*self.args, **self.kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/sai/playground/workik/open2/OpenHands/openhands/utils/async_utils.py", line 44, in run return asyncio.run(arun()) ^^^^^^^^^^^^^^^^^^^ File "/home/sai/miniforge3/lib/python3.12/asyncio/runners.py", line 195, in run return runner.run(main) ^^^^^^^^^^^^^^^^ File "/home/sai/miniforge3/lib/python3.12/asyncio/runners.py", line 118, in run return self._loop.run_until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/sai/miniforge3/lib/python3.12/asyncio/base_events.py", line 691, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "/home/sai/playground/workik/open2/OpenHands/openhands/utils/async_utils.py", line 37, in arun result = await coro ^^^^^^^^^^ File "/home/sai/playground/workik/open2/OpenHands/openhands/runtime/impl/local/local_runtime.py", line 318, in connect check_dependencies(code_repo_path, env_root_path) File "/home/sai/playground/workik/open2/OpenHands/openhands/runtime/impl/local/local_runtime.py", line 108, in check_dependencies raise ValueError('tmux is not properly installed or available on the path.')

ERROR:root:<class 'ValueError'>: tmux is not properly installed or available on the path.

saijayanth59 avatar Jun 17 '25 06:06 saijayanth59

Details:

Image

saijayanth59 avatar Jun 17 '25 06:06 saijayanth59

This issue is stale because it has been open for 30 days with no activity. Remove stale label or comment or this will be closed in 7 days.

github-actions[bot] avatar Jul 22 '25 02:07 github-actions[bot]

This issue was closed because it has been stalled for over 30 days with no activity.

github-actions[bot] avatar Jul 29 '25 02:07 github-actions[bot]