From c69ed1743d11ed34442f56f761e5195abffe55e8 Mon Sep 17 00:00:00 2001 From: Ahmed Hussain Date: Sun, 3 Aug 2025 17:31:05 +0530 Subject: [PATCH 1/4] fix: add session_state, context and extra_data args in the get_reasoning_agent --- libs/agno/agno/reasoning/helpers.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/libs/agno/agno/reasoning/helpers.py b/libs/agno/agno/reasoning/helpers.py index e2de6901d6..1c6af9b2aa 100644 --- a/libs/agno/agno/reasoning/helpers.py +++ b/libs/agno/agno/reasoning/helpers.py @@ -1,4 +1,4 @@ -from typing import List, Literal +from typing import Any, Dict, List, Literal, Optional from agno.models.base import Model from agno.models.message import Message @@ -13,6 +13,9 @@ def get_reasoning_agent( telemetry: bool = False, debug_mode: bool = False, debug_level: Literal[1, 2] = 1, + session_state: Optional[Dict[str, Any]] = None, + context: Optional[Dict[str, Any]] = None, + extra_data: Optional[Dict[str, Any]] = None, ) -> "Agent": # type: ignore # noqa: F821 from agno.agent import Agent @@ -22,6 +25,9 @@ def get_reasoning_agent( telemetry=telemetry, debug_mode=debug_mode, debug_level=debug_level, + session_state=session_state, + context=context, + extra_data=extra_data, ) From fb11a8432511454a847a2999a43ed3638290bcd9 Mon Sep 17 00:00:00 2001 From: Ahmed Hussain Date: Sun, 3 Aug 2025 17:32:01 +0530 Subject: [PATCH 2/4] fix: add session_state, context and extra_data args in the get_default_reasoning_agent --- libs/agno/agno/reasoning/default.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/libs/agno/agno/reasoning/default.py b/libs/agno/agno/reasoning/default.py index 1cedc33c68..3431aaed3e 100644 --- a/libs/agno/agno/reasoning/default.py +++ b/libs/agno/agno/reasoning/default.py @@ -1,7 +1,7 @@ from __future__ import annotations from textwrap import dedent -from typing import Callable, Dict, List, Literal, Optional, Union +from typing import Any, Callable, Dict, List, Literal, Optional, Union from agno.models.base import Model from agno.reasoning.step import ReasoningSteps @@ -19,6 +19,9 @@ def get_default_reasoning_agent( telemetry: bool = True, debug_mode: bool = False, debug_level: Literal[1, 2] = 1, + session_state: Optional[Dict[str, Any]] = None, + context: Optional[Dict[str, Any]] = None, + extra_data: Optional[Dict[str, Any]] = None, ) -> Optional["Agent"]: # type: ignore # noqa: F821 from agno.agent import Agent @@ -87,6 +90,9 @@ def get_default_reasoning_agent( telemetry=telemetry, debug_mode=debug_mode, debug_level=debug_level, + session_state=session_state, + context=context, + extra_data=extra_data, ) agent.model.show_tool_calls = False # type: ignore From ed34fed2c35723830147f553d333d96033343846 Mon Sep 17 00:00:00 2001 From: Ahmed Hussain Date: Sun, 3 Aug 2025 17:36:27 +0530 Subject: [PATCH 3/4] passing additional args session_state, context, and extra_data to create reasoning agent --- libs/agno/agno/agent/agent.py | 12 ++++++++++++ libs/agno/agno/team/team.py | 18 ++++++++++++++++-- 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/libs/agno/agno/agent/agent.py b/libs/agno/agno/agent/agent.py index 9a528511f5..83baa70f6c 100644 --- a/libs/agno/agno/agent/agent.py +++ b/libs/agno/agno/agent/agent.py @@ -5797,6 +5797,9 @@ def reason(self, run_messages: RunMessages) -> Iterator[RunResponseEvent]: telemetry=self.telemetry, debug_mode=self.debug_mode, debug_level=self.debug_level, + session_state=self.session_state, + context=self.context, + extra_data=self.extra_data, ) is_deepseek = is_deepseek_reasoning_model(reasoning_model) is_groq = is_groq_reasoning_model(reasoning_model) @@ -5886,6 +5889,9 @@ def reason(self, run_messages: RunMessages) -> Iterator[RunResponseEvent]: telemetry=self.telemetry, debug_mode=self.debug_mode, debug_level=self.debug_level, + session_state=self.session_state, + context=self.context, + extra_data=self.extra_data, ) # Validate reasoning agent @@ -6020,6 +6026,9 @@ async def areason(self, run_messages: RunMessages) -> Any: telemetry=self.telemetry, debug_mode=self.debug_mode, debug_level=self.debug_level, + session_state=self.session_state, + context=self.context, + extra_data=self.extra_data, ) is_deepseek = is_deepseek_reasoning_model(reasoning_model) is_groq = is_groq_reasoning_model(reasoning_model) @@ -6109,6 +6118,9 @@ async def areason(self, run_messages: RunMessages) -> Any: telemetry=self.telemetry, debug_mode=self.debug_mode, debug_level=self.debug_level, + session_state=self.session_state, + context=self.context, + extra_data=self.extra_data, ) # Validate reasoning agent diff --git a/libs/agno/agno/team/team.py b/libs/agno/agno/team/team.py index 20a98792b9..9b2d74b16d 100644 --- a/libs/agno/agno/team/team.py +++ b/libs/agno/agno/team/team.py @@ -4305,7 +4305,11 @@ def _reason( from agno.reasoning.openai import is_openai_reasoning_model reasoning_agent = self.reasoning_agent or get_reasoning_agent( - reasoning_model=reasoning_model, monitoring=self.monitoring + reasoning_model=reasoning_model, + monitoring=self.monitoring, + session_state=self.session_state, + context=self.context, + extra_data=self.extra_data, ) is_deepseek = is_deepseek_reasoning_model(reasoning_model) is_groq = is_groq_reasoning_model(reasoning_model) @@ -4398,6 +4402,9 @@ def _reason( debug_mode=self.debug_mode, debug_level=self.debug_level, use_json_mode=use_json_mode, + session_state=self.session_state, + context=self.context, + extra_data=self.extra_data, ) # Validate reasoning agent @@ -4528,7 +4535,11 @@ async def _areason( from agno.reasoning.openai import is_openai_reasoning_model reasoning_agent = self.reasoning_agent or get_reasoning_agent( - reasoning_model=reasoning_model, monitoring=self.monitoring + reasoning_model=reasoning_model, + monitoring=self.monitoring, + session_state=self.session_state, + context=self.context, + extra_data=self.extra_data, ) is_deepseek = is_deepseek_reasoning_model(reasoning_model) is_groq = is_groq_reasoning_model(reasoning_model) @@ -4619,6 +4630,9 @@ async def _areason( debug_mode=self.debug_mode, debug_level=self.debug_level, use_json_mode=use_json_mode, + session_state=self.session_state, + context=self.context, + extra_data=self.extra_data, ) # Validate reasoning agent From e73bc99a43521df2b464da9302b0598558c04a73 Mon Sep 17 00:00:00 2001 From: Ahmed Hussain Date: Sun, 3 Aug 2025 18:00:14 +0530 Subject: [PATCH 4/4] format styling --- libs/agno/agno/team/team.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/agno/agno/team/team.py b/libs/agno/agno/team/team.py index 9b2d74b16d..bfd7f80f44 100644 --- a/libs/agno/agno/team/team.py +++ b/libs/agno/agno/team/team.py @@ -4305,7 +4305,7 @@ def _reason( from agno.reasoning.openai import is_openai_reasoning_model reasoning_agent = self.reasoning_agent or get_reasoning_agent( - reasoning_model=reasoning_model, + reasoning_model=reasoning_model, monitoring=self.monitoring, session_state=self.session_state, context=self.context, @@ -4535,7 +4535,7 @@ async def _areason( from agno.reasoning.openai import is_openai_reasoning_model reasoning_agent = self.reasoning_agent or get_reasoning_agent( - reasoning_model=reasoning_model, + reasoning_model=reasoning_model, monitoring=self.monitoring, session_state=self.session_state, context=self.context,