fix: recreate terminal manager after shutdown

This commit is contained in:
jxxghp
2026-08-22 19:42:01 +08:00
parent c8e2ba0ea7
commit 8849b8da11
2 changed files with 10 additions and 1 deletions
@@ -721,3 +721,11 @@ class _TerminalSessionManager:
terminal_session_manager = _TerminalSessionManager()
def get_terminal_session_manager() -> _TerminalSessionManager:
"""返回当前进程的终端会话管理器,避免复用已完成关停的实例。"""
global terminal_session_manager
if terminal_session_manager._closed:
terminal_session_manager = _TerminalSessionManager()
return terminal_session_manager
+2 -1
View File
@@ -21,7 +21,7 @@ from app.agent.tools.impl._terminal_session import (
TERMINAL_DEFAULT_READ_BYTES,
TERMINAL_MAX_READ_BYTES,
TERMINAL_WAIT_DEFAULT_MS,
terminal_session_manager,
get_terminal_session_manager,
)
from app.runtime.log import logger
@@ -528,6 +528,7 @@ class ExecuteCommandTool(MoviePilotTool):
)
try:
terminal_session_manager = get_terminal_session_manager()
if normalized_action == "start":
start_command = self._require_command(command)
self._validate_command(