agno 2.3.5__py3-none-any.whl → 2.3.7__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
agno/tools/toolkit.py CHANGED
@@ -6,6 +6,10 @@ from agno.utils.log import log_debug, log_warning, logger
6
6
 
7
7
 
8
8
  class Toolkit:
9
+ # Set to True for toolkits that require connection management (e.g., database connections)
10
+ # When True, the Agent will automatically call connect() before using tools and close() after
11
+ _requires_connect: bool = False
12
+
9
13
  def __init__(
10
14
  self,
11
15
  name: str = "toolkit",
@@ -139,6 +143,27 @@ class Toolkit:
139
143
  logger.warning(f"Failed to create Function for: {function.__name__}")
140
144
  raise e
141
145
 
146
+ @property
147
+ def requires_connect(self) -> bool:
148
+ """Whether the toolkit requires connection management."""
149
+ return self._requires_connect
150
+
151
+ def connect(self) -> None:
152
+ """
153
+ Establish any required connections for the toolkit.
154
+ Override this method in subclasses that require connection management.
155
+ Called automatically by the Agent when _requires_connect is True.
156
+ """
157
+ pass
158
+
159
+ def close(self) -> None:
160
+ """
161
+ Close any open connections for the toolkit.
162
+ Override this method in subclasses that require connection management.
163
+ Called automatically by the Agent when _requires_connect is True.
164
+ """
165
+ pass
166
+
142
167
  def __repr__(self):
143
168
  return f"<{self.__class__.__name__} name={self.name} functions={list(self.functions.keys())}>"
144
169
 
agno/utils/agent.py CHANGED
@@ -843,7 +843,7 @@ def execute_instructions(
843
843
 
844
844
  # Check for session_state parameter
845
845
  if "session_state" in signature.parameters:
846
- instruction_args["session_state"] = session_state or {}
846
+ instruction_args["session_state"] = session_state if session_state is not None else {}
847
847
 
848
848
  # Check for run_context parameter
849
849
  if "run_context" in signature.parameters:
@@ -902,7 +902,7 @@ async def aexecute_instructions(
902
902
 
903
903
  # Check for session_state parameter
904
904
  if "session_state" in signature.parameters:
905
- instruction_args["session_state"] = session_state or {}
905
+ instruction_args["session_state"] = session_state if session_state is not None else {}
906
906
 
907
907
  # Check for run_context parameter
908
908
  if "run_context" in signature.parameters:
agno/utils/events.py CHANGED
@@ -35,6 +35,7 @@ from agno.run.agent import (
35
35
  ToolCallCompletedEvent,
36
36
  ToolCallStartedEvent,
37
37
  )
38
+ from agno.run.requirement import RunRequirement
38
39
  from agno.run.team import MemoryUpdateCompletedEvent as TeamMemoryUpdateCompletedEvent
39
40
  from agno.run.team import MemoryUpdateStartedEvent as TeamMemoryUpdateStartedEvent
40
41
  from agno.run.team import OutputModelResponseCompletedEvent as TeamOutputModelResponseCompletedEvent
@@ -136,7 +137,9 @@ def create_run_completed_event(from_run_response: RunOutput) -> RunCompletedEven
136
137
 
137
138
 
138
139
  def create_run_paused_event(
139
- from_run_response: RunOutput, tools: Optional[List[ToolExecution]] = None
140
+ from_run_response: RunOutput,
141
+ tools: Optional[List[ToolExecution]] = None,
142
+ requirements: Optional[List[RunRequirement]] = None,
140
143
  ) -> RunPausedEvent:
141
144
  return RunPausedEvent(
142
145
  session_id=from_run_response.session_id,
@@ -144,6 +147,7 @@ def create_run_paused_event(
144
147
  agent_name=from_run_response.agent_name, # type: ignore
145
148
  run_id=from_run_response.run_id,
146
149
  tools=tools,
150
+ requirements=requirements,
147
151
  content=from_run_response.content,
148
152
  )
149
153
 
agno/utils/mcp.py CHANGED
@@ -32,7 +32,7 @@ def get_entrypoint_for_tool(tool: MCPTool, session: ClientSession):
32
32
  try:
33
33
  await session.send_ping()
34
34
  except Exception as e:
35
- print(e)
35
+ log_exception(e)
36
36
 
37
37
  try:
38
38
  log_debug(f"Calling MCP Tool '{tool_name}' with args: {kwargs}")
agno/workflow/workflow.py CHANGED
@@ -1837,7 +1837,7 @@ class Workflow:
1837
1837
  self._update_metadata(session=workflow_session)
1838
1838
 
1839
1839
  # Update session state from DB
1840
- _session_state = session_state or {}
1840
+ _session_state = session_state if session_state is not None else {}
1841
1841
  _session_state = self._load_session_state(session=workflow_session, session_state=_session_state)
1842
1842
 
1843
1843
  return workflow_session, _session_state
@@ -3522,7 +3522,10 @@ class Workflow:
3522
3522
 
3523
3523
  # Initialize session state
3524
3524
  session_state = self._initialize_session_state(
3525
- session_state=session_state or {}, user_id=user_id, session_id=session_id, run_id=run_id
3525
+ session_state=session_state if session_state is not None else {},
3526
+ user_id=user_id,
3527
+ session_id=session_id,
3528
+ run_id=run_id,
3526
3529
  )
3527
3530
  # Update session state from DB
3528
3531
  session_state = self._load_session_state(session=workflow_session, session_state=session_state)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: agno
3
- Version: 2.3.5
3
+ Version: 2.3.7
4
4
  Summary: Agno: a lightweight library for building Multi-Agent Systems
5
5
  Author-email: Ashpreet Bedi <ashpreet@agno.com>
6
6
  Project-URL: homepage, https://agno.com
@@ -166,6 +166,8 @@ Requires-Dist: parallel-web; extra == "parallel"
166
166
  Provides-Extra: psycopg
167
167
  Requires-Dist: psycopg-binary; extra == "psycopg"
168
168
  Requires-Dist: psycopg; extra == "psycopg"
169
+ Provides-Extra: redshift
170
+ Requires-Dist: redshift-connector; extra == "redshift"
169
171
  Provides-Extra: reportlab
170
172
  Requires-Dist: reportlab; extra == "reportlab"
171
173
  Provides-Extra: scrapegraph
@@ -327,6 +329,7 @@ Requires-Dist: agno[mem0]; extra == "tools"
327
329
  Requires-Dist: agno[memori]; extra == "tools"
328
330
  Requires-Dist: agno[google_bigquery]; extra == "tools"
329
331
  Requires-Dist: agno[psycopg]; extra == "tools"
332
+ Requires-Dist: agno[redshift]; extra == "tools"
330
333
  Requires-Dist: agno[reportlab]; extra == "tools"
331
334
  Requires-Dist: agno[trafilatura]; extra == "tools"
332
335
  Requires-Dist: agno[neo4j]; extra == "tools"
@@ -381,6 +384,7 @@ Requires-Dist: agno[agui]; extra == "tests"
381
384
  Requires-Dist: agno[integration-tests]; extra == "tests"
382
385
  Requires-Dist: twine; extra == "tests"
383
386
  Requires-Dist: build; extra == "tests"
387
+ Requires-Dist: grpcio==1.74.0; extra == "tests"
384
388
  Provides-Extra: integration-tests
385
389
  Requires-Dist: exa_py; extra == "integration-tests"
386
390
  Requires-Dist: ddgs; extra == "integration-tests"
@@ -411,15 +415,15 @@ Dynamic: license-file
411
415
 
412
416
  ## What is Agno?
413
417
 
414
- Agno is a multi-agent framework, runtime and control plane. Built for speed, privacy, and scale.
418
+ Agno is an incredibly fast multi-agent framework, runtime and control plane.
415
419
 
416
- It provides a rich set of tools for building:
420
+ It provides the complete stack for building, running and managing multi-agent systems:
417
421
 
418
- - **Agents** with memory, knowledge, session management, and advanced features like human-in-the-loop, guardrails, dynamic context management and best-in-class MCP support.
419
- - **Multi-Agent Teams** that operate autonomously under a team leader that maintains shared state and context. Perfect for use cases where the scope exceeds beyond a single agent.
420
- - **Step-based Workflows** for controlled, deterministic execution. Steps can be Agents, Teams, or regular python functions that run sequentially, in parallel, in loops, branches, or conditionally.
422
+ - **Framework**: Build agents, multi-agent teams and workflows with memory, knowledge, state, guardrails, HITL, context compression, MCP, A2A and 100+ toolkits.
423
+ - **AgentOS Runtime**: Run your multi-agent system in production with a secure, stateless runtime and ready to use integration endpoints.
424
+ - **AgentOS Control Plane**: Test, monitor and manage AgentOS deployments across environments with full operational visibility.
421
425
 
422
- Agno also provides a ready-to-use FastAPI app (called the AgentOS) for serving your agents, teams and workflows in production. Stateless, horizontally scalable and designed for scale, the AgentOS gives you major head start in building your AI product.
426
+ Checkout the full list of features [here](#features).
423
427
 
424
428
  ## Getting started
425
429
 
@@ -436,7 +440,7 @@ After that, checkout the [examples gallery](https://docs.agno.com/examples/use-c
436
440
 
437
441
  ## Example
438
442
 
439
- Heres an example of an Agent that connects to an MCP server, manages conversation state in a database, is served using a FastAPI application that you can chat with using the [AgentOS UI](https://os.agno.com).
443
+ Here's an example of an Agent that connects to an MCP server, manages conversation state in a database, is served using a FastAPI application that you can chat with using the [AgentOS UI](https://os.agno.com).
440
444
 
441
445
  ```python agno_agent.py
442
446
  from agno.agent import Agent
@@ -471,21 +475,21 @@ if __name__ == "__main__":
471
475
 
472
476
  ## AgentOS - Production Runtime for Multi-Agent Systems
473
477
 
474
- Building Agents is easy, running them is hard, and that's where the AgentOS comes in. AgentOS is a high-performance runtime for serving multi-agent systems in production. Key features include:
478
+ Building Agents is easy, running them as a secure, scalable service is hard. AgentOS solves this by providing a high performance runtime for serving multi-agent systems in production. Key features include:
475
479
 
476
- 1. **Pre-built FastAPI app**: AgentOS ships with a ready-to-use FastAPI app for orchestrating your agents, teams, and workflows. This gives you a major head start in building your AI product.
480
+ 1. **Pre-built FastAPI app**: AgentOS includes a ready-to-use FastAPI app for running your agents, teams and workflows. This gives you a significant head start when building an AI product.
477
481
 
478
- 2. **Integrated Control Plane**: The [AgentOS UI](https://os.agno.com) connects directly to your runtime, letting you test, monitor, and manage your system in real time, giving you unmatched control over your system.
482
+ 2. **Integrated Control Plane**: The [AgentOS UI](https://os.agno.com) connects directly to your runtime, so you can test, monitor and manage your system in real time with full operational visibility.
479
483
 
480
- 3. **Private by Design**: AgentOS runs entirely in your cloud, ensuring complete data privacy. No data ever leaves your system. This is ideal for security-conscious enterprises.
484
+ 3. **Private by Design**: AgentOS runs entirely in your cloud, ensuring complete data privacy. No data leaves your environment, making it ideal for security conscious enterprises..
481
485
 
482
- Here's what the [AgentOS UI](https://os.agno.com) looks like in action:
486
+ When you run the example script shared above, you get a FastAPI app that you can connect to the [AgentOS UI](https://os.agno.com). Here's what it looks like in action:
483
487
 
484
488
  https://github.com/user-attachments/assets/feb23db8-15cc-4e88-be7c-01a21a03ebf6
485
489
 
486
490
  ## The Complete Agentic Solution
487
491
 
488
- For companies building agents, Agno provides the complete agentic solution:
492
+ Agno provides the complete solution for companies building agentic systems:
489
493
 
490
494
  - The fastest framework for building agents, multi-agent teams and agentic workflows.
491
495
  - A ready-to-use FastAPI app that gets you building AI products on day one.
@@ -493,28 +497,32 @@ For companies building agents, Agno provides the complete agentic solution:
493
497
 
494
498
  Agno brings a novel architecture that no other framework provides, your AgentOS runs securely in your cloud, and the control plane connects directly to it from your browser. You don't need to send data to any external services or pay retention costs, you get complete privacy and control.
495
499
 
496
- ## Designed for Agent Engineering
500
+ ## Features
497
501
 
498
- Agno is an incredibly feature-rich framework, designed for Agent Engineering. Here are some key features:
502
+ Agno is an incredibly feature-rich framework purpose-built for Agent Engineering. Here are some key features:
499
503
 
500
504
  | **Category** | **Feature** | **Description** |
501
505
  | -------------------------------------- | ------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
502
- | **Core Intelligence** | **Model Agnostic** | Works with any model provider so you can use your favorite LLMs. |
503
- | | **Type Safe** | Enforce structured I/O through `input_schema` and `output_schema` for predictable, composable behavior. |
504
- | | **Dynamic Context Engineering** | Inject variables, state, and retrieved data on the fly into context. Perfect for dependency-driven agents. |
505
- | **Memory, Knowledge, and Persistence** | **Persistent Storage** | Give your Agents, Teams, and Workflows a database to persist session history, state, and messages. |
506
- | | **User Memory** | Built-in memory system that allows Agents to recall user-specific context across sessions. |
507
- | | **Agentic RAG** | Connect to 20+ vector stores (called **Knowledge** in Agno) with hybrid search + reranking out of the box. |
508
- | | **Culture (Collective Memory)** | Shared knowledge that compounds across agents and time. |
509
- | **Execution & Control** | **Human-in-the-Loop** | Native support for confirmations, manual overrides, and external tool execution. |
506
+ | **Foundational Principles** | **Model Agnostic** | Supports all model providers so you can choose the best model for your use case |
507
+ | | **Type Safe** | Enforces structured I/O through input_schema and output_schema for predictable and composable agent behavior. |
508
+ | | **Dynamic Context** | Inject variables, state, and retrieved data at runtime into context. Compress, summarize and filter context to keep your Agents focused and efficient. |
509
+ | | **Designed for Scale** | Designed around async execution and long-running tasks for high throughput agent workloads. |
510
+ | **Memory, Knowledge, and Persistence** | **Persistent Storage** | Give your Agents, Teams, and Workflows a database to persist session history, state, and messages. |
511
+ | | **User Memory** | Built in memory layer that helps agents recall user specific context across sessions. |
512
+ | | **Agentic RAG** | Connect to 20+ vector stores (called **Knowledge**) with hybrid search, reranking, and chunking out of the box. |
513
+ | | **Culture** | Shared long term collective memory that compounds across agents and time. |
514
+ | | **Ephemeral Context** | In memory scratchpad for short lived reasoning without polluting long term state. |
515
+ | **Execution & Control** | **Human-in-the-Loop** | Native support for confirmations, approvals, manual overrides, and external actions. |
510
516
  | | **Guardrails** | Built-in safeguards for validation, security, and prompt protection. |
511
- | | **Agent Lifecycle Hooks** | Pre- and post-hooks to validate or transform inputs and outputs. |
512
- | | **MCP Integration** | First-class support for the Model Context Protocol (MCP) to connect Agents with external systems. |
513
- | | **Toolkits** | 100+ built-in toolkits with thousands of tools, ready for use across data, code, web, and enterprise APIs. |
514
- | **Runtime & Evaluation** | **Runtime** | Pre-built FastAPI based runtime with SSE compatible endpoints, ready for production on day 1. |
515
- | | **Control Plane (UI)** | Integrated interface to visualize, monitor, and debug agent activity in real time. |
516
- | | **Natively Multimodal** | Agents can process and generate text, images, audio, video, and files. |
517
- | | **Evals** | Measure your Agents' Accuracy, Performance, and Reliability. |
517
+ | | **Agent Lifecycle Hooks** | Pre and post hooks to validate, enrich, or transform inputs and outputs. |
518
+ | | **MCP Integration** | First-class support for the Model Context Protocol (MCP) to connect Agents with external systems. |
519
+ | | **A2A Integration** | First-class support for the Agent to Agent communication protocol (A2A). |
520
+ | | **Toolkits** | 100+ built in toolkits with thousands of tools covering data, code, web, and enterprise APIs. |
521
+ | **Runtime & Evaluation** | **Runtime** | Prebuilt FastAPI runtime with SSE compatible endpoints. Production ready from day one. |
522
+ | | **Control Plane (UI)** | Integrated interface to test, observe, and debug your agents, teams, and workflows in real time. |
523
+ | | **Natively Multimodal** | Agents can process and generate text, images, audio, video, and files. |
524
+ | | **Evals** | Measure Accuracy, Performance, Latency, and Reliability across agents and workflows. |
525
+ | | **Durable Execution** | Built in support for long running, resumable workflows. |
518
526
  | **Security & Privacy** | **Private by Design** | Runs entirely in your cloud. The UI connects directly to your AgentOS from your browser, no data is ever sent externally. |
519
527
  | | **Data Governance** | Your data lives securely in your Agent database, no external data sharing or vendor lock-in. |
520
528
  | | **Access Control** | Role-based access (RBAC) and per-agent permissions to protect sensitive contexts and tools. |
@@ -544,7 +552,7 @@ At Agno, we optimize performance across 3 dimensions:
544
552
 
545
553
  1. **Agent performance:** We optimize static operations (instantiation, memory footprint) and runtime operations (tool calls, memory updates, history management).
546
554
  2. **System performance:** The AgentOS API is async by default and has a minimal memory footprint. The system is stateless and horizontally scalable, with a focus on preventing memory leaks. It handles parallel and batch embedding generation during knowledge ingestion, metrics collection in background tasks, and other system-level optimizations.
547
- 3. **Agent reliability and accuracy:** Monitored through evals, which well explore later.
555
+ 3. **Agent reliability and accuracy:** Monitored through evals, which we'll explore later.
548
556
 
549
557
  ### Agent Performance
550
558
 
@@ -4,9 +4,9 @@ agno/exceptions.py,sha256=-1VdjOTArJgMO5uqoEQ2CNL2k6ICrHWSiukznsI6S78,5361
4
4
  agno/filters.py,sha256=QxBjNUUS53o1zkG-J0F8XjDzlu0ADtJn3r6rfkGZ9Fk,12079
5
5
  agno/media.py,sha256=eTfYb_pwhX_PCIVPSrW4VYRqmoxKABEF1aZClrVvQ30,16500
6
6
  agno/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
- agno/table.py,sha256=G8pJ93a8tiTTywXZY88KX95RFhCYbcVALyczjKpX3jc,197
7
+ agno/table.py,sha256=9hHFnInNsrj0ZKtWjGDP5c6kbmNdtQvDDYT2j2CZJ6o,198
8
8
  agno/agent/__init__.py,sha256=s7S3FgsjZxuaabzi8L5n4aSH8IZAiZ7XaNNcySGR-EQ,1051
9
- agno/agent/agent.py,sha256=Bvvq7lFR26eqLNT3MYgfpFCytaBDrhAvAtLNTrf7dtc,487708
9
+ agno/agent/agent.py,sha256=hxNxn2tyhR8q7gIGujTUiaSRRw9wfnfsr6-i_vodcsY,496743
10
10
  agno/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
11
  agno/api/agent.py,sha256=fKlQ62E_C9Rjd7Zus3Gs3R1RG-IhzFV-ICpkb6SLqYc,932
12
12
  agno/api/api.py,sha256=gFhVjxJYkQsw8mBl2fhoStMPGlyJ37DJaqgUOwZVvQI,1021
@@ -35,7 +35,7 @@ agno/culture/__init__.py,sha256=nVScbcUeBmkj8l-rJWGOVGytwp5xB6IfUEL_h6atzQw,118
35
35
  agno/culture/manager.py,sha256=sh48GgfkgwQth2vB5ulgrbv2HGAfVidABrwAYEzWGBs,39833
36
36
  agno/db/__init__.py,sha256=bfd_tpKsIKCjZosnFqID26VoWqy88v8gzkf9kLHToY4,625
37
37
  agno/db/base.py,sha256=X5iJTNCFPXL_ueVKSe09uS0NHsPaXHC3LKwJFhvZyLg,31607
38
- agno/db/utils.py,sha256=eL0prfDrTEfOwNlOZeoZE4pu59bNJET22uh8wgzz-cw,4879
38
+ agno/db/utils.py,sha256=IAMrvy0MrqVr6VIN0ntG17g4nGDV9lUwRzneAAI02kI,4943
39
39
  agno/db/async_postgres/__init__.py,sha256=ja_thcYP3bP0DD3da6iUVDR_w2-S6B3M-UxBlkRfAvY,76
40
40
  agno/db/dynamo/__init__.py,sha256=fZ7NwKbyhoIu7_4T6hVz44HkIINXMnTfFrDrgB6bpEo,67
41
41
  agno/db/dynamo/dynamo.py,sha256=qnrEYxkhLne_R0MXicNdoqZK2a318GHCmMRV_t2boR8,108870
@@ -69,8 +69,8 @@ agno/db/mysql/mysql.py,sha256=Ve4ojP3slr_qMxXQ0hi4XDQPtOtgm2jBR4CEg5ao6j8,121370
69
69
  agno/db/mysql/schemas.py,sha256=_4p2IWt0zVq-fHuxFhEpWLWxlp3QPKk8xtNMiB1TNOY,9067
70
70
  agno/db/mysql/utils.py,sha256=PdqN-SxM-ox8HU9CZyxzvs2D1FE2vdZFVCyFgFcQsyU,12366
71
71
  agno/db/postgres/__init__.py,sha256=Ojk00nTCzQFiH2ViD7KIBjgpkTKLRNPCwWnuXMKtNXY,154
72
- agno/db/postgres/async_postgres.py,sha256=sdVgPK73CvO6bstOLe5Dm0X63I7Q70KxHofyQGh2qFQ,105992
73
- agno/db/postgres/postgres.py,sha256=9JbWHPsUKM6O1WXSILahIUwvqmfDBsHkiSLapCe-xdw,117593
72
+ agno/db/postgres/async_postgres.py,sha256=TQTS6u15RNaQFwvgU6lGxo8eJavElw9TlBO6lPq7amw,107237
73
+ agno/db/postgres/postgres.py,sha256=ouC5XrcGL95R30OEEjfdtMIb7jdJTjS_l6xzf1kS2cw,118023
74
74
  agno/db/postgres/schemas.py,sha256=G0BRG9GcUcO43-TU52nKSEog8v3tdJNwIhEjts9dCns,8405
75
75
  agno/db/postgres/utils.py,sha256=UE3UQZ-h7fADAKBsX4BWcDka54YNROEpBrlfTmDvpqc,15471
76
76
  agno/db/redis/__init__.py,sha256=rZWeZ4CpVeKP-enVQ-SRoJ777i0rdGNgoNDRS9gsfAc,63
@@ -88,9 +88,9 @@ agno/db/singlestore/schemas.py,sha256=gnCpoRAztbPiZOCfx9MGBx1sySijwogajSjxIeGpsa
88
88
  agno/db/singlestore/singlestore.py,sha256=Q0MhS41gCm4xgtoHuLQjvUEHJYurqtlJD7aP5_46rx0,118882
89
89
  agno/db/singlestore/utils.py,sha256=w2FVFIBpFJK6nKJVt1sgv9N-esmfpGY_8ViFRI69I2I,13677
90
90
  agno/db/sqlite/__init__.py,sha256=09V3i4y0-tBjt60--57ivZ__SaaS67GCsDT4Apzv-5Y,138
91
- agno/db/sqlite/async_sqlite.py,sha256=pqrmZVVMvX6YxPCf22cZy1Vn_eCzf-cZ2wMYEr44ojo,123416
91
+ agno/db/sqlite/async_sqlite.py,sha256=Amv3zha6FTHCuwAuYUzw0jGoIbNC5s6sv6QTJoMRPEw,123366
92
92
  agno/db/sqlite/schemas.py,sha256=1lrIFWEhXYZJIlQYEnOl3XLp3UfsE5ILj2HUPmOf3cg,8265
93
- agno/db/sqlite/sqlite.py,sha256=eDd56CvwpEViFOqJvJm2O2dGFMj6aqm5NIRXGRzk348,120400
93
+ agno/db/sqlite/sqlite.py,sha256=3jiDLjs1vM3sTd6526v4JJhrpjL6cMaW9Xik0nTA57k,120340
94
94
  agno/db/sqlite/utils.py,sha256=sgp-KR7A5naTqTORHYHyP_21hG9LffOzCgqbx5S8RfE,15171
95
95
  agno/db/surrealdb/__init__.py,sha256=C8qp5-Nx9YnSmgKEtGua-sqG_ntCXONBw1qqnNyKPqI,75
96
96
  agno/db/surrealdb/metrics.py,sha256=oKDRyjRQ6KR3HaO8zDHQLVMG7-0NDkOFOKX5I7mD5FA,10336
@@ -99,7 +99,7 @@ agno/db/surrealdb/queries.py,sha256=s__yJSFIx387IEflcDdti7T5j6H9NX_-zIj13F9CN9s,
99
99
  agno/db/surrealdb/surrealdb.py,sha256=6ldAHl-FFlL-wOJMcaoPqM1VCfg65hT8cJftiT0nEmc,75011
100
100
  agno/db/surrealdb/utils.py,sha256=PcZo_cTy-jI59I-XhzAomRLdV9-m0irtO4C-AYGSghs,5405
101
101
  agno/eval/__init__.py,sha256=vCYcIbfOkT2lL8vZJ9zsea6j3byp5A-mxEb_45VaD8I,449
102
- agno/eval/accuracy.py,sha256=F3CHfjpoN65J1NmibL2gEjrdqkovlYwWdv0MQT-Ez0Y,33301
102
+ agno/eval/accuracy.py,sha256=x6axWHcBRXazuwKFKcCFVFMYgLbJcgTLAxv6WoiPv3w,33551
103
103
  agno/eval/performance.py,sha256=9FLilFKrq_auCboE_xBG42V-_IPPpm8zEvqswZ83Pm0,30764
104
104
  agno/eval/reliability.py,sha256=2PAIO8g-9ukqMg_iazorFY1uxzu9gk6eFPBPFE3NC4A,12873
105
105
  agno/eval/utils.py,sha256=uu7ssj9kjO02m0R61ty3Zqwz4JXHt4tOPySPBhnMqjM,3869
@@ -112,7 +112,7 @@ agno/hooks/__init__.py,sha256=AZnexNDnt3IlLDzPAWAYykH_jybXO9eFuXSuwIQT04s,112
112
112
  agno/hooks/decorator.py,sha256=IWqTRM3IYfIjLsmFGRqUpHuArjQf0457l3viDZ5GJBU,5399
113
113
  agno/integrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
114
114
  agno/integrations/discord/__init__.py,sha256=MS08QSnegGgpDZd9LyLjK4pWIk9dXlbzgD7wB3eEVJE,88
115
- agno/integrations/discord/client.py,sha256=2IWkA-kCDsDXByKOGq2QJG6MtFsbouzNN105rsXn95A,8375
115
+ agno/integrations/discord/client.py,sha256=Yz4yWYv2-6MYM9cS5yrHHLEQx32hDY0o2lhP5V4SZsg,8387
116
116
  agno/knowledge/__init__.py,sha256=PJCt-AGKGFztzR--Ok2TNKW5QEqllZzqiI_7f8-1u80,79
117
117
  agno/knowledge/content.py,sha256=q2bjcjDhfge_UrQAcygrv5R9ZTk7vozzKnQpatDQWRo,2295
118
118
  agno/knowledge/knowledge.py,sha256=CJG5RiXbnA_iFcP31UU6LqUMJluPqpsYOLJuI35mMU4,80377
@@ -181,11 +181,11 @@ agno/memory/strategies/base.py,sha256=13xCiBPtFUrpDaWbiz8zmNGjopT4VSIkcHVxfnvJ4W
181
181
  agno/memory/strategies/summarize.py,sha256=4M9zWTsooC3EtHpZoC7Z-yFaQgQoebRMNfZPitdsvB0,7307
182
182
  agno/memory/strategies/types.py,sha256=b3N5jOG_dM4AxT7vGagFIc9sqUUjxFtRHSoH4_AhEx8,1225
183
183
  agno/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
184
- agno/models/base.py,sha256=_fqSgV6xF2UVaMG5Q66lJ77TJu1AxnSPOayaSWEYQ2s,107116
184
+ agno/models/base.py,sha256=3ZZpyACrsSjhpK3YOjRaLXR2hQFSQnKGpIKWPVGj9Ww,108826
185
185
  agno/models/defaults.py,sha256=1_fe4-ZbNriE8BgqxVRVi4KGzEYxYKYsz4hn6CZNEEM,40
186
186
  agno/models/message.py,sha256=5-Nvqd6rXNca37yiVVQgBJY4w_gudVawg-ZQHcUX4SE,19763
187
187
  agno/models/metrics.py,sha256=81IILXZwGmOTiWK003bi5mg4bM1f4LCWbwyamjFzp18,4500
188
- agno/models/response.py,sha256=uIB2w7Hddut0sSI8oJBXU6r4IParQVQwkghfjJaB1aQ,7109
188
+ agno/models/response.py,sha256=uwSw2wKm5U1ZJ1R-8dMWV1I7TgFlKTJGOFq73WExO6s,7110
189
189
  agno/models/utils.py,sha256=jxAIIG2y7KBypwFlc87GzFnvogRpGLfd-wwr6KXZIj8,7269
190
190
  agno/models/aimlapi/__init__.py,sha256=XQcFRvt4qJ8ol9nCC0XKEkVEDivdNf3nZNoJZMZ5m8M,78
191
191
  agno/models/aimlapi/aimlapi.py,sha256=ELPv8RuEc6qUq4JxWEJVRITsK71rzUxw6_cP3Zd8Vz0,2179
@@ -198,7 +198,7 @@ agno/models/azure/__init__.py,sha256=EoFdJHjayvmv_VOmaW9cJguwA1K5OFS_nFeazyn0B2w
198
198
  agno/models/azure/ai_foundry.py,sha256=VMIci3geZ5KGq-ua7k0eHH33gBFOWbJWamEsxtmiaqg,19915
199
199
  agno/models/azure/openai_chat.py,sha256=knuJZMX7BMe15S1Dw6NBPEZy43avvtruy7jX1Q7qPX8,5734
200
200
  agno/models/cerebras/__init__.py,sha256=F3vE0lmMu-qDQ_Y7hg_czJitLsvNu4SfPv174wg1cq8,376
201
- agno/models/cerebras/cerebras.py,sha256=wKDg-e4qq2FN1Pg3cOOc9JjZbKBcYuG_ETETmUaKv2c,21663
201
+ agno/models/cerebras/cerebras.py,sha256=ZXYJrsO84bEf6buOtY8iYrI4jGg3_SYkBFHs3H-SBy0,21695
202
202
  agno/models/cerebras/cerebras_openai.py,sha256=ut4_xz6gKWKA-kJZCWjpk0RuCrvLe0YDrzofxh9E7_U,4907
203
203
  agno/models/cohere/__init__.py,sha256=4kFUnfPEL3__hd1TRW7fZxh7D_DctcpY5QDV58lR6s0,72
204
204
  agno/models/cohere/chat.py,sha256=8-W2a_d4DI7dYL9D2FSeab5hsD2GgNXh5-5C1XJ28ME,16911
@@ -276,7 +276,7 @@ agno/os/auth.py,sha256=FyBtAKWtg-qSunCas5m5pK1dVEmikOSZvcCp5r25tTA,1844
276
276
  agno/os/config.py,sha256=oAqtvrNl445zGJmhz6BSOQE6HM_uvKk-K4ms6-my6nk,3285
277
277
  agno/os/mcp.py,sha256=LrCZ6xQ6RAJfnxHYGgHQStanWN4u2bjzcxHjD_cZxBk,10362
278
278
  agno/os/router.py,sha256=_SLNxtKZnlhvd-Sn7aQv12ZtKVXLKI0BgOMyFLNYI70,77680
279
- agno/os/schema.py,sha256=gcQNc26AOYW_cMpJEY2E8WnLEUqmO1uOzStLi8dCtEw,54399
279
+ agno/os/schema.py,sha256=V4vMkWyetUrd2Du8gMeQP_Q2dVbfYgGDfzaBPqB0DQA,54441
280
280
  agno/os/settings.py,sha256=Cn5_8lZI8Vx1UaUYqs9h6Qp4IMDFn4f3c35uppiaMy4,1343
281
281
  agno/os/utils.py,sha256=Il5ci2EDG0wZAgTnGmG64t050eBP7ghqeuKYcRI4ve8,30146
282
282
  agno/os/interfaces/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
@@ -295,7 +295,7 @@ agno/os/interfaces/slack/security.py,sha256=nMbW_0g-G_DEMbCQOD8C3PYrRPIpB2cyM6P-
295
295
  agno/os/interfaces/slack/slack.py,sha256=XEbL1WjOtFIDS1Rn1oclZ6vzCLlE7ouXeg1uYSVDW38,1382
296
296
  agno/os/interfaces/whatsapp/__init__.py,sha256=-sD2W00qj8hrx72ATVMtaDc7GfAsaCQJMlnRjYPwisg,82
297
297
  agno/os/interfaces/whatsapp/router.py,sha256=K7Ex4Xq-4hPcRKoVxBkb8KoGxH6WXC1bubd5iTkHZZQ,9734
298
- agno/os/interfaces/whatsapp/security.py,sha256=WOdjP886O0Wq6CRHSLAv_b39y6pjmn8opPQDSlZf4WA,1735
298
+ agno/os/interfaces/whatsapp/security.py,sha256=0GYdG28yeSpV47nMWASaFSTiGESSstcFAeL6amobvFE,1772
299
299
  agno/os/interfaces/whatsapp/whatsapp.py,sha256=tNJncEu_hm0lFOHbjaSoz5-VIKORR_pyW26cseBLfbs,989
300
300
  agno/os/middleware/__init__.py,sha256=EYsNzeixFgL3n8kepKWXT42fTTmrNyD8b8rOdXecMRI,94
301
301
  agno/os/middleware/jwt.py,sha256=xw9jQkVFMTTzUVird1k-egAYBmPd174L06YflYCvB5Q,9468
@@ -305,7 +305,7 @@ agno/os/routers/home.py,sha256=xe8DYJkRgad55qiza0lHt8pUIV5PLSyu2MkybjuPDDE,1708
305
305
  agno/os/routers/evals/__init__.py,sha256=3s0M-Ftg5A3rFyRfTATs-0aNA6wcbj_5tCvtwH9gORQ,87
306
306
  agno/os/routers/evals/evals.py,sha256=S-ybLJtE3oLJrYiHGOAxr2FCYMYd1634GhV_M7SxHlA,18923
307
307
  agno/os/routers/evals/schemas.py,sha256=G6XvlEcl0FtgdsmHUjrEWxwxwGMhuYR2HsjfFT3QXUM,6523
308
- agno/os/routers/evals/utils.py,sha256=cmBuf5HtJLcLaVrb_a1HizEUIrXbdbKu9rzo8FWfG88,5567
308
+ agno/os/routers/evals/utils.py,sha256=TtHodLRbYvOxAPUxBHNm10AavctELUbdq5qDg8ZQbno,5955
309
309
  agno/os/routers/knowledge/__init__.py,sha256=ZSqMQ8X7C_oYn8xt7NaYlriarWUpHgaWDyHXOWooMaU,105
310
310
  agno/os/routers/knowledge/knowledge.py,sha256=6rR1CiHUDmg7kJy7g218IGaFEl0YAMbCciiFNJeEBMo,45320
311
311
  agno/os/routers/knowledge/schemas.py,sha256=GUr5RsRbI7K3qrrOlGVfW0Kf7XO6HjMviMW6nEl6qf8,8847
@@ -333,19 +333,20 @@ agno/reasoning/openai.py,sha256=JYk-mR9cMf1ibprX3MdL8oeCEDyQ3XaJw9PAIYvWeGk,3234
333
333
  agno/reasoning/step.py,sha256=6DaOb_0DJRz9Yh1w_mxcRaOSVzIQDrj3lQ6rzHLdIwA,1220
334
334
  agno/reasoning/vertexai.py,sha256=O9ntvalkIY2jLmWviEH1DnecMskqTL-mRZQBZohoHiU,2974
335
335
  agno/run/__init__.py,sha256=DFjpUomTzHvIDQQE_PUfp4oJM-7Ti8h8a_Fe5Kr8rjM,98
336
- agno/run/agent.py,sha256=nZU-GNyWeSgC22DNfIxsJbdqC6Dkqq_mEyhss1u3Xsg,27511
336
+ agno/run/agent.py,sha256=FWWA01bnmU_64Op0aEpGR5e4SjeWTgm-Tdtd-bm3gzE,28225
337
337
  agno/run/base.py,sha256=Oaq2_JRsTAM4gsfcBGpau2PzcZDscVhzzxCCi-UdvoY,8923
338
338
  agno/run/cancel.py,sha256=yoSj3fnx8D7Gf-fSngVIgd3GOp3tRaDhHH_4QeHDoAk,2667
339
339
  agno/run/messages.py,sha256=rAC4CLW-xBA6qFS1BOvcjJ9j_qYf0a7sX1mcdY04zMU,1126
340
- agno/run/team.py,sha256=OcvQET3iLUHXMMG_KTf9uP_8qRuhjMct5O1Ypib5JQI,27654
340
+ agno/run/requirement.py,sha256=5kblza2keXn48_gS5RjFn11IslWl--cHJRs5uSH4Olo,3311
341
+ agno/run/team.py,sha256=lV12npSB6IaYLSvO89LQqrZPoq0vB2hf9dYSe4z69AU,28083
341
342
  agno/run/workflow.py,sha256=cHH_ArV_Wws__8ug9Dwy3OVu7G2ND_K9E1PNdzk7CZo,25100
342
343
  agno/session/__init__.py,sha256=p6eqzWcLSHiMex2yZvkwv2yrFUNdGs21TGMS49xrEC4,376
343
344
  agno/session/agent.py,sha256=8vVtwwUC5moGWdRcG99Ik6Ay7gbFRrPPnT1ncOUFQIg,10365
344
345
  agno/session/summary.py,sha256=9JnDyQyggckd3zx6L8Q5f-lglZvrFQxvPjGU8gLCgR4,10292
345
- agno/session/team.py,sha256=N5kRHamXiMrNqqqzzEsGXTYzyos3lqgiHbQ_XgSb3N0,13473
346
+ agno/session/team.py,sha256=-MkB6qQCrnXLKko8L5s9fJOWPsjeK5Gx0SXEPoOwSFQ,13437
346
347
  agno/session/workflow.py,sha256=nPHnh1N0SJby5JRjysCUI-kTDCelQMFfqosEnnLzPIg,19690
347
348
  agno/team/__init__.py,sha256=toHidBOo5M3n_TIVtIKHgcDbLL9HR-_U-YQYuIt_XtE,847
348
- agno/team/team.py,sha256=fVwocWBHWWKy7bTcxgpx1i78UpQF7RSfnF93soi3L8Q,430723
349
+ agno/team/team.py,sha256=55zfNQ7JvK2XNovOsABhgkjZ0xtHcX80p1d6ZT5gYnY,434720
349
350
  agno/tools/__init__.py,sha256=jNll2sELhPPbqm5nPeT4_uyzRO2_KRTW-8Or60kioS0,210
350
351
  agno/tools/agentql.py,sha256=S82Z9aTNr-E5wnA4fbFs76COljJtiQIjf2grjz3CkHU,4104
351
352
  agno/tools/airflow.py,sha256=uf2rOzZpSU64l_qRJ5Raku-R3Gky-uewmYkh6W0-oxg,2610
@@ -390,7 +391,7 @@ agno/tools/giphy.py,sha256=_wOCWVnMdFByE9Yoz4Pf2MoKxSjkUTiPJZ928_BNe2M,3070
390
391
  agno/tools/github.py,sha256=wct6P00YzF3zgWoV2c5aHeXX_2dgb9LqRwJAboi6QXw,70286
391
392
  agno/tools/gmail.py,sha256=m_7SY4oz2sP0RSJyNItZ_h5VeyI86J8840_p5Nz_2So,37073
392
393
  agno/tools/google_bigquery.py,sha256=j0c14CgGK8KvD7eEirsdAx7RSwcfMheugn84ySq6miU,4483
393
- agno/tools/google_drive.py,sha256=dxGr_NhMsqFsr_tR3w4MgLXm7_nlCTI43sCmKw60N_4,11159
394
+ agno/tools/google_drive.py,sha256=vAjIN1WiWBWN9y5hNPVA3MRJuOQcXfWfqzofEe-Pf7Y,11208
394
395
  agno/tools/google_maps.py,sha256=AqPEIt4u6B2kQtzOnL5PH3RXoefCfjT_Uvm3coAqzaY,9513
395
396
  agno/tools/googlecalendar.py,sha256=4WxmPIaxxsxAYP56XT7ehnmKEwicn9w_KOe8LMy5KB0,28670
396
397
  agno/tools/googlesheets.py,sha256=m8K0A8I5d68HG19OajDLCgGJzXnsnh33OQQOc6K5Qbg,15704
@@ -421,11 +422,12 @@ agno/tools/openweather.py,sha256=vw5gIr9E5psiHpTyN-HyQ1T2upJwE205w-jJs_Pc7fc,869
421
422
  agno/tools/oxylabs.py,sha256=0SuckyOBIVMKCf3VyPDmKIZv4ILdu6N6AcDws7A3NiY,17619
422
423
  agno/tools/pandas.py,sha256=Q3I3-lVMOng06FYs5DQZtOOdujjLWfWL7j5kf-xx8Z0,4882
423
424
  agno/tools/parallel.py,sha256=YYQhPxDSKP7CdKamd6LnP9u5CKy03R8hpWN474unWcg,13976
424
- agno/tools/postgres.py,sha256=16oIQBcTb-3JMnhWEAj6PgXoeB8-gtjSipUQT9kaNhk,10075
425
+ agno/tools/postgres.py,sha256=jBQPzJzSd6I67cvLVgsQhmJRdTcbi9N_yPQH8WzKHHY,11505
425
426
  agno/tools/pubmed.py,sha256=4UVcZXVFFs6jV_7PQAWUGKZDEey1KbIJDztQhaS6m9g,8170
426
427
  agno/tools/python.py,sha256=02uHb30r66D7zbqHEbmniWZUAeeJZ0y-Q0_xWiPXChk,8783
427
428
  agno/tools/reasoning.py,sha256=5k2D89s0mAqJGo5AVBM6XDvJHjfun3GqollhVkZ6rxk,12581
428
429
  agno/tools/reddit.py,sha256=F6lUJFAoQmuZMqppauMteF1BprDj8mpu-lVd1reUJTk,18632
430
+ agno/tools/redshift.py,sha256=VdQOCsJuDgN90YCEXNvD7HICMyut3IXcGqtC0J-cckY,15917
429
431
  agno/tools/replicate.py,sha256=xVh6F2OCjIuCT8qt_ryzHb46ZctQ3_9bQhXQ5-HrzYQ,4459
430
432
  agno/tools/resend.py,sha256=TKsb5W_Yj0SaVBFL2ySACkehIW6bPnQ9GzYwldfordo,1990
431
433
  agno/tools/scrapegraph.py,sha256=j72ZfoITjqcRgGUesgHZddwt9kj1dS1KGyLKI0EFbHE,8328
@@ -436,12 +438,13 @@ agno/tools/shell.py,sha256=1cQVdrJI6oWzDY6H50ISFfzvnK7p6uH3FqRa4HXbM_U,1764
436
438
  agno/tools/slack.py,sha256=AmRV0wAqzNAL_DmOVNrHeZdw8bn9KJ1INrZ6qm40pn8,5413
437
439
  agno/tools/sleep.py,sha256=EfHhODf4Z1XnAppS_2-rb6vRGmFJEIG0RtS8t4cG-SE,632
438
440
  agno/tools/spider.py,sha256=wgtIxg13QSUA2GOIS_dD3yFNfXA_SOUBc7Fk_flas8M,4461
441
+ agno/tools/spotify.py,sha256=MWwJv-zwL-97xEyO8qHGg7cw4R__aBwRExKmVoWnYww,31237
439
442
  agno/tools/sql.py,sha256=HagMFqYUTWMSVKYKcaQ6Mqz16zpCugNypYOOuRS-pUY,5438
440
443
  agno/tools/tavily.py,sha256=1habkgXXHU8oStWmoZ29DVRBtl-tO-Pss1o9N1MovIU,10464
441
444
  agno/tools/telegram.py,sha256=e78EJlh44EmJNnv3FHyxW-sl72GjFYHpF6aGrCjNijc,1523
442
445
  agno/tools/todoist.py,sha256=p3TCQ0zAfmrhGIHDExVb8bmY0746UbzAbKHNFJlGggw,8177
443
446
  agno/tools/tool_registry.py,sha256=LMKqamTqjbFBD6SAV39PJULPmpfiHwSq6_NQoBxvGl8,85
444
- agno/tools/toolkit.py,sha256=hgVj5dwoQzD5VMgMtSGEqC5NGJvH5vbk_8c6RyUVnD4,6643
447
+ agno/tools/toolkit.py,sha256=c_lE_VkB36eeX1b89qr7cCsgx_p3f5fvoSV7WiNbu0E,7586
445
448
  agno/tools/trafilatura.py,sha256=AK2Q_0jqwOqL8-0neMI6ZjuUt-w0dGvW-w8zE6FrZVs,14792
446
449
  agno/tools/trello.py,sha256=y2fc60ITCIXBOk4TX3w70YjkMvM9SMKsEYpfXOKWtOI,8546
447
450
  agno/tools/twilio.py,sha256=XUbUhFJdLxP3nlNx2UdS9aHva-HSIGHD01cHHuE9Rfg,6752
@@ -478,7 +481,7 @@ agno/tracing/exporter.py,sha256=0hQd78aCLluzmPx57IxDT5B67KMzDRj4mRxxVLimsSI,5706
478
481
  agno/tracing/schemas.py,sha256=3jPAMKsY_waX1W8elkq7plkkExGK2P6SbtZlxqIsDfc,10213
479
482
  agno/tracing/setup.py,sha256=J-nmeTvqwfrJ028jC6Yd5r073IoHhBV09SZ6Ut2dQsk,3914
480
483
  agno/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
481
- agno/utils/agent.py,sha256=e_dHUK4t4ncHPwLx86lJLSD7PKgH9123OxTzrVFmQPw,36244
484
+ agno/utils/agent.py,sha256=oAfpOB35oEkI2vGMoJriUbyhe-5fMO17BA456MWG_mw,36306
482
485
  agno/utils/audio.py,sha256=kdPMr_wYh-NyxQ-U57hyulK0Y7iIkuVinL9AQ7w64EU,1455
483
486
  agno/utils/certs.py,sha256=Dtqmcwngq6b-27gN7Zsmo9lKlMPYd70UNexLMqpX3BE,683
484
487
  agno/utils/code_execution.py,sha256=JAzcsuUJVO8ZVcD9AgX_O9waBegjhbrHkQZp-YZGsdA,415
@@ -486,7 +489,7 @@ agno/utils/common.py,sha256=EJaERgzrJnin1i0Aorv0Sf5y8AfMQWM-8yYhuYtD_4Q,4445
486
489
  agno/utils/dttm.py,sha256=MwVpm03DY_sR6NArsSBYg7_sBBsYfWMBQcLCfi7Q4rY,1290
487
490
  agno/utils/enum.py,sha256=wDHnruIf8cQU-_QdryY9LBugPCrlj-nOabQuEFnmeYM,753
488
491
  agno/utils/env.py,sha256=o8OwKhx78vi8MaXPes10mXejmJ13CqAh7ODKMS1pmcM,438
489
- agno/utils/events.py,sha256=eIuLXrZbD-s6owNNOGKww2NR2Xl1oBoP-sGnAbHsGic,28175
492
+ agno/utils/events.py,sha256=_E4AhD89hN1XGRLAAns4MOW_nklIgDUDREWK59rtJ3M,28320
490
493
  agno/utils/format_str.py,sha256=Zp9dDGMABUJzulp2bs41JiNv0MqmMX0qPToL7l_Ab1c,376
491
494
  agno/utils/functions.py,sha256=eHvGqO2uO63TR-QmmhZy2DEnC0xkAfhBG26z77T7jCo,6306
492
495
  agno/utils/gemini.py,sha256=-RrZRk4fKRsNCsFVKqXc1JzZaLU3_vIlzGS-YWbz4Bs,16055
@@ -496,7 +499,7 @@ agno/utils/json_schema.py,sha256=VPbK-Gdo0qOQKco7MZnv1d2Fe-9mt1PRBO1SNFIvBHY,855
496
499
  agno/utils/knowledge.py,sha256=QPLcBfJ22XNG2w_qUYRaD5PiDQEgf-ITYb9n85m27pA,1502
497
500
  agno/utils/location.py,sha256=VhXIwSWdr7L4DEJoUeVI92Y-rJ32NUcYzFRnzLgX-es,658
498
501
  agno/utils/log.py,sha256=NJ56KY2rYn0wfiD1y_VTCz8KrvnrkcXi7kQoKZoULV8,7792
499
- agno/utils/mcp.py,sha256=GsSGbYvlcKaZfzwwUVJNOJYLJEgKCqJiLxSd1SR4yig,7607
502
+ agno/utils/mcp.py,sha256=j3S6lYeuWiLLhPYDxPsK_ZwSJ2TaEMboyXckbqlUdeM,7615
500
503
  agno/utils/media.py,sha256=Mkt-DxFmAnypeZOU84fMLmGSd2aXbw7z7OgF0pKA4yc,12456
501
504
  agno/utils/merge_dict.py,sha256=K_dZdwi46gjDFn7wgqZ9_fycRIZGJCnUxFVKCrQ6PYc,1490
502
505
  agno/utils/message.py,sha256=jIcSe79WmfpbbYowy0C57ZzRBd9ENj-hyj3TQw_9vsg,4684
@@ -587,9 +590,9 @@ agno/workflow/router.py,sha256=HQDOnErjtiQdY_EskJBV_mZq_k6d1gH6JJPIM2Yfelw,32016
587
590
  agno/workflow/step.py,sha256=2BAZQI9nNs-qR0_r1I4WSuIB_sOXI7Q-OeQtb-bzSXU,74268
588
591
  agno/workflow/steps.py,sha256=rbfue2M4qYEkgHueojCY1-cB4i1MFjO-jX6uTxyoKwk,27118
589
592
  agno/workflow/types.py,sha256=LObJ0VkUtepZ-uewv3j283S4hrCXy0eCplQzIzRG1ic,19175
590
- agno/workflow/workflow.py,sha256=AsfAGk-4GCtnEt_F5jjhON8XhALK96x_PVIWy-RkrtE,193082
591
- agno-2.3.5.dist-info/licenses/LICENSE,sha256=QwcOLU5TJoTeUhuIXzhdCEEDDvorGiC6-3YTOl4TecE,11356
592
- agno-2.3.5.dist-info/METADATA,sha256=8cqzMYVNQZ_soOvK81MmTVRAnhHxduiR-7iTvRhoP0o,30911
593
- agno-2.3.5.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
594
- agno-2.3.5.dist-info/top_level.txt,sha256=MKyeuVesTyOKIXUhc-d_tPa2Hrh0oTA4LM0izowpx70,5
595
- agno-2.3.5.dist-info/RECORD,,
593
+ agno/workflow/workflow.py,sha256=6khBK6tbO9i2aSovduwNoQUfbcyEdoKyF4F86Uyj4gM,193181
594
+ agno-2.3.7.dist-info/licenses/LICENSE,sha256=QwcOLU5TJoTeUhuIXzhdCEEDDvorGiC6-3YTOl4TecE,11356
595
+ agno-2.3.7.dist-info/METADATA,sha256=RZjF1ZE-fHQ_aXUeGZjrU5GO0HZhfkB4kiQ5zYHboE0,31018
596
+ agno-2.3.7.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
597
+ agno-2.3.7.dist-info/top_level.txt,sha256=MKyeuVesTyOKIXUhc-d_tPa2Hrh0oTA4LM0izowpx70,5
598
+ agno-2.3.7.dist-info/RECORD,,
File without changes