From 9614fe8e6e99cb23ddd9ee30b3ae80911db0638b Mon Sep 17 00:00:00 2001 From: Harry Date: Mon, 9 Feb 2026 22:20:30 +0800 Subject: [PATCH] feat: agent sandbox support HITL --- api/core/app/apps/advanced_chat/app_runner.py | 5 ++--- api/core/app/apps/workflow/app_runner.py | 5 ++--- api/core/workflow/runtime/graph_runtime_state.py | 2 +- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/api/core/app/apps/advanced_chat/app_runner.py b/api/core/app/apps/advanced_chat/app_runner.py index 0fa7fd3c2c..797ef68b40 100644 --- a/api/core/app/apps/advanced_chat/app_runner.py +++ b/api/core/app/apps/advanced_chat/app_runner.py @@ -119,6 +119,7 @@ class AdvancedChatAppRunner(WorkflowBasedAppRunner): if resume_state is not None: graph_runtime_state = resume_state + graph_runtime_state.set_sandbox(self._sandbox) variable_pool = graph_runtime_state.variable_pool graph = self._init_graph( graph_config=self._workflow.graph_dict, @@ -175,9 +176,7 @@ class AdvancedChatAppRunner(WorkflowBasedAppRunner): # init graph graph_runtime_state = GraphRuntimeState(variable_pool=variable_pool, start_at=time.time()) - - if self._sandbox: - graph_runtime_state.set_sandbox(self._sandbox) + graph_runtime_state.set_sandbox(self._sandbox) graph = self._init_graph( graph_config=self._workflow.graph_dict, diff --git a/api/core/app/apps/workflow/app_runner.py b/api/core/app/apps/workflow/app_runner.py index 3e1750ca2c..a45466c5da 100644 --- a/api/core/app/apps/workflow/app_runner.py +++ b/api/core/app/apps/workflow/app_runner.py @@ -78,6 +78,7 @@ class WorkflowAppRunner(WorkflowBasedAppRunner): if resume_state is not None: graph_runtime_state = resume_state + graph_runtime_state.set_sandbox(self._sandbox) variable_pool = graph_runtime_state.variable_pool graph = self._init_graph( graph_config=self._workflow.graph_dict, @@ -115,9 +116,7 @@ class WorkflowAppRunner(WorkflowBasedAppRunner): ) graph_runtime_state = GraphRuntimeState(variable_pool=variable_pool, start_at=time.perf_counter()) - - if self._sandbox: - graph_runtime_state.set_sandbox(self._sandbox) + graph_runtime_state.set_sandbox(self._sandbox) # init graph graph = self._init_graph( diff --git a/api/core/workflow/runtime/graph_runtime_state.py b/api/core/workflow/runtime/graph_runtime_state.py index 4618a8a5b5..a468d434fe 100644 --- a/api/core/workflow/runtime/graph_runtime_state.py +++ b/api/core/workflow/runtime/graph_runtime_state.py @@ -355,7 +355,7 @@ class GraphRuntimeState: def sandbox(self) -> Sandbox | None: return self._sandbox - def set_sandbox(self, sandbox: Sandbox) -> None: + def set_sandbox(self, sandbox: Sandbox | None) -> None: self._sandbox = sandbox # ------------------------------------------------------------------