v2.5.0
agno-agi/agnov2.5.0Feb 12, 2026by kausmeows
AI Summary
A major release introducing Team Execution Modes, a new Approval System, Cron-based scheduling, and Knowledge Isolation. It includes a major refactor of Agent/Team classes and changes the default for store_history_messages.
Key Highlights
- Four Team Execution Modes (coordinate, route, broadcast, tasks)
- New Approval System with decorators and API
- Cron-based scheduling for agents, teams, and workflows
- Knowledge Isolation via isolate_vector_search
Breaking Changes
- store_history_messages now defaults to False
- Knowledge instances now require unique database/table/name combinations
New Features
- Team Execution Modes
- Approval System
- Scheduler
- LearningMachine for Teams
- Knowledge Isolation
- Callable Factories
Full Release Notes
# Changelog
## New Features
- **Team Execution Modes**: Introduced `TeamMode` enum with four execution modes:
- `coordinate` (default): Supervisor pattern where the leader picks members, crafts tasks, and synthesizes responses
- `route`: Router pattern where the leader routes to a specialist and returns their response directly
- `broadcast`: Broadcast pattern where the leader delegates the same task to all members simultaneously
- `tasks`: Autonomous task-based execution where the leader decomposes goals into a shared task list
- **Human-in-the-Loop (HITL) for Teams**: Improved `RunRequirement` system for paused runs with better support for:
- Tool confirmation flows
- User input collection with schema validation
- External tool execution
- **Approval System**: New `@approval` decorator for human approval workflows:
- `@approval(type="required")`: Blocking approval that pauses the run until resolved via approvals API
- `@approval(type="audit")`: Non-blocking audit trail for compliance/logging
- Persistent approval records with status tracking (pending, approved, rejected, expired, cancelled)
- Approvals API for listing, inspecting, and resolving approvals
- **Scheduler**: Cron-based scheduling for agents, teams, and workflows with retry, timeout, and timezone support.
- **LearningMachine for Teams**: Added support for `LearningMachine` for persistent learning.
- **Callable Factories for Tools, Knowledge, and Members**: Tools, knowledge, and team members can now be defined as callable factories that are resolved at runtime with access to `RunContext`. Supports caching via `cache_callables` and custom cache keys for session-scoped resolution.
- **Infra:** Adds support for AWS EFS
- **Knowledge Isolation**: Added `isolate_vector_search flag` to Knowledge class. When enabled, documents are tagged with `linked_to` metadata during insert and searches filter by this tag, allowing multiple Knowledge instances to share the same vector database while maintaining isolated search results. Defaults to `False` for backwards compatibility with existing data.
## Improvements
- **Agent/Team Refactor**: Major internal refactor of Agent and Team classes for cleaner separation of concerns.
## Bug Fixes:
- **LanceDb Cloud:** Fixed `search()` to stop reopening the table; use `.to_list()` instead of `.to_pandas()` in vector/hybrid/keyword search.
- **Primary key constraint:** Fixed `sessions`, `component_configs` and `component_links` table to use primary key instead of `_unique_constraints`.
## Breaking Changes
- **`store_history_messages` now defaults to `False`**: History messages are no longer stored by default. This reduces unnecessary storage overhead, improves privacy by not persisting conversation history unless explicitly needed, and gives better control over storage costs. If you rely on stored history, set `store_history_messages=True` explicitly.
- **Knowledge Uniqueness**: Knowledge instances now require a unique combination of database, table, and knowledge name. Multiple Knowledge instances cannot share the same table without distinct names to prevent data conflicts.
## What's Changed
* chore: update AgentOS description by @ashpreetbedi in https://github.com/agno-agi/agno/pull/6225
* fix: explicitly show <scripts>none</scripts> in skills system prompt by @uzaxirr in https://github.com/agno-agi/agno/pull/6311
* chore: add Conductor notes to agent docs by @ashpreetbedi in https://github.com/agno-agi/agno/pull/6323
* [fix] Use JSON serialization instead of `str()` for workflow run_input by @salimhamed in https://github.com/agno-agi/agno/pull/6318
* fix: LanceDB cloud integration by @willemcdejongh in https://github.com/agno-agi/agno/pull/6337
* fix: handle text file formats correctly in document messages by @Mustafa-Esoofally in https://github.com/agno-agi/agno/pull/6329
* feat: Add EFS volume and mount point support for AWS apps by @Mustafa-Esoofally in https://github.com/agno-agi/agno/pull/6251
* feat: enhance SlackTools and add file handling to interface by @Mustafa-Esoofally in https://github.com/agno-agi/agno/pull/6306
* feat: AgentOS select Knowledge by name by @willemcdejongh in https://github.com/agno-agi/agno/pull/6287
* fix: Update quickstart knowledge instance name by @willemcdejongh in https://github.com/agno-agi/agno/pull/6408
* fix: add primary key constraints to SQLite component tables by @ysolanky in https://github.com/agno-agi/agno/pull/6395
* fix: add stub classes for JWT imports when PyJWT is not installed by @ysolanky in https://github.com/agno-agi/agno/pull/6476
* [feat] v2.5 Phase 1 — Agent/Team refactor and baseline by @ashpreetbedi in https://github.com/agno-agi/agno/pull/6429
* V2.5 phase2 r by @ashpreetbedi in https://github.com/agno-agi/agno/pull/6506
* V2.5 phase3 rb by @ashpreetbedi in https://github.com/agno-agi/agno/pull/6511
* V2.5 phase4 rb by @ashpreetbedi in https://github.com/agno-agi/agno/pull/6514
* V2.5 phase5 rebase by @ashpreetbedi in https://github.com/agno-agi/agno/pull/6515
* fix: resolve ruff lint errors by @ysolanky in https://github.com/agno-agi/agno/pull/6517
* fix: resolve scheduler property setter conflict in AgentOS by @ashpreetbedi in https://github.com/agno-agi/agno/pull/6520
* feat: Add isolate_vector_search flag for backwards-compatible knowledge isolation by @willemcdejongh in https://github.com/agno-agi/agno/pull/6519
* fix: align scheduler tests with current API by @ysolanky in https://github.com/agno-agi/agno/pull/6525
* refactor: update approvals endpoint to use paginated response model by @Ayush0054 in https://github.com/agno-agi/agno/pull/6526
* fix: resolve ruff and mypy validation errors by @ashpreetbedi in https://github.com/agno-agi/agno/pull/6518
* [fix] AgentOS: remove unused scheduler property and fix double MCP lifespan by @ashpreetbedi in https://github.com/agno-agi/agno/pull/6522
* fix: restore missing v2.5 fields in SqliteDb/PostgresDb from_dict by @Mustafa-Esoofally in https://github.com/agno-agi/agno/pull/6531
* feat: Release 2.5.0 by @kausmeows in https://github.com/agno-agi/agno/pull/6501
## New Contributors
* @salimhamed made their first contribution in https://github.com/agno-agi/agno/pull/6318
**Full Changelog**: https://github.com/agno-agi/agno/compare/v2.4.8...v2.5.0