v2.5.3
agno-agi/agnov2.5.3Feb 19, 2026by ysolanky
AI Summary
This release adds remote knowledge content listing via API and S3 bucket uploading support. PDF reader now includes content sanitization. Multiple bug fixes address knowledge retriever, Claude metrics, reasoning duplication, and HITL session state handling.
Key Highlights
- Added remote content sources with cloud storage loading and browsing via API
- PDF Reader now includes sanitize_content parameter to normalize fragmented text extraction
- Fixed knowledge_retriever being ignored when search_knowledge=True
- Fixed Claude streaming metrics double-counting input_tokens
- Fixed reasoning_content duplication across reasoning steps
- Fixed HITL pause handlers dropping session_state changes in agent and team modules
New Features
- Remote Knowledge content listing via API
- S3 bucket content uploading support
- PDF content sanitization
Full Release Notes
# Changelog ## New Features: - **Remote Knowledge:** Added endpoints to support listing of remote contents via API. Enables uploading of content in S3 buckets via AgentOS ## Improvements: - **PDF Reader:** Added `sanitize_content` parameter to `BasePDFReader` (enabled by default) that normalizes fragmented PDF text extraction — collapsing word-per-line artifacts while preserving paragraph breaks. Disable with `sanitize_content=False` for PDFs containing structured content like code or tables. - **PDF Reader:** Added a `sanitize_content` parameter to `BasePDFReader` that normalizes extracted PDF text by collapsing excessive whitespace sequences into single spaces. ## Bug Fixes: - **Knowledge Retriever:** Fix issue where`knowledge_retriever` ignored when `search_knowledge=True` enabled. - **Claude:** Fixed streaming metrics double-count `input_tokens` for Anthropic models - **Knowledge Search:** Fixed match include/exclude patterns against filename for directory scanning - **Reasoning:** fixed `reasoning_content` duplication across reasoning steps. - **Deepcopy on Agent/Team/Workflow:** fixed `deep_copy` fails for nested teams due to non-init dataclass fields. - **HITL:** fixed HITL pause handlers silently dropping `session_state` changes in both **agent** and **team** modules. - **Workflow Parallel Steps:** fixed race condition on `run_context.output_schema` in Parallel execution. ## What's Changed * [fix] Prevent double-counting input_tokens for Anthropic streaming metrics by @ArivunidhiA in https://github.com/agno-agi/agno/pull/6580 * feat: add remote content sources with cloud storage loading and browsing by @willemcdejongh in https://github.com/agno-agi/agno/pull/6584 * chore: anchor gitignore paths for symlinked dirs and add /apps by @ashpreetbedi in https://github.com/agno-agi/agno/pull/6588 * fix: match include/exclude patterns against filename for directory scanning by @themavik in https://github.com/agno-agi/agno/pull/6455 * fix: prevent reasoning_content duplication across reasoning steps by @themavik in https://github.com/agno-agi/agno/pull/6438 * fix: deep_copy fails for nested teams due to non-init dataclass fields by @rodrigocoliveira in https://github.com/agno-agi/agno/pull/6297 * feat: add content sanitization to PDF reader by @willemcdejongh in https://github.com/agno-agi/agno/pull/6591 * ci: smart @claude handler with review plugin routing by @Mustafa-Esoofally in https://github.com/agno-agi/agno/pull/6603 * fix: handle missing mime_type in Gemini file formatting by @Mustafa-Esoofally in https://github.com/agno-agi/agno/pull/6367 * fix: remove prompt input from claude review to enable tag mode by @Mustafa-Esoofally in https://github.com/agno-agi/agno/pull/6604 * fix: move concurrency to job level to prevent self-cancellation by @Mustafa-Esoofally in https://github.com/agno-agi/agno/pull/6605 * ci: enable show_full_output for claude review debugging by @Mustafa-Esoofally in https://github.com/agno-agi/agno/pull/6606 * cookbook: v2.5 testing audit fixes and test logs by @Mustafa-Esoofally in https://github.com/agno-agi/agno/pull/6546 * [fix] HITL pause session state loss by @Mustafa-Esoofally in https://github.com/agno-agi/agno/pull/6495 * fix: move Parallel.steps to a proper dataclass field with default_factory by @ysolanky in https://github.com/agno-agi/agno/pull/6608 * fix: prevent race condition on run_context.output_schema in Parallel execution by @ysolanky in https://github.com/agno-agi/agno/pull/6609 * fix: knowledge_retriever ignored when search_knowledge=True by @willemcdejongh in https://github.com/agno-agi/agno/pull/6593 * chore: update yfinance tools to have options by @kausmeows in https://github.com/agno-agi/agno/pull/6607 * feat: add OpenTelemetry and Agno instrumentation deps to os extras by @ysolanky in https://github.com/agno-agi/agno/pull/6618 * fix: auto-inject linked_to filter for list-based FilterExpr filters by @willemcdejongh in https://github.com/agno-agi/agno/pull/6611 * fix: add files field to WorkflowRunOutput and fix file serialization by @kausmeows in https://github.com/agno-agi/agno/pull/6544 * fix: datetime JSON serialization for PostgreSQL session storage by @kausmeows in https://github.com/agno-agi/agno/pull/6363 * fix: complete user_id handling in SDK client session methods by @Mustafa-Esoofally in https://github.com/agno-agi/agno/pull/6502 * feat: add is_component, current_version, and stage to list endpoints by @ysolanky in https://github.com/agno-agi/agno/pull/6266 * chore: release 2.5.3 by @ysolanky in https://github.com/agno-agi/agno/pull/6619 ## New Contributors * @ArivunidhiA made their first contribution in https://github.com/agno-agi/agno/pull/6580 * @themavik made their first contribution in https://github.com/agno-agi/agno/pull/6455 **Full Changelog**: https://github.com/agno-agi/agno/compare/v2.5.2...v2.5.3