diff --git a/src/google/adk/agents/llm_agent.py b/src/google/adk/agents/llm_agent.py index b915c91335..a086df87d1 100644 --- a/src/google/adk/agents/llm_agent.py +++ b/src/google/adk/agents/llm_agent.py @@ -331,7 +331,9 @@ def _maybe_save_output_to_state(self, event: Event, node_path: str) -> None: return set_output_key = bool(self.output_key) - set_event_output = self.mode == 'single_turn' + set_event_output = self.mode == 'single_turn' or ( + self.mode == 'task' and self.output_schema + ) if not set_output_key and not set_event_output: return