v2.6.20
agno-agi/agnov2.6.20Jun 26, 2026by harshsinha03
AI Summary
Adds ClickHouse support for high-volume traces and integrates the Scavio search toolkit, while improving OpenAI citations and LiteLLM outputs.
Key Highlights
- ClickHouseDB support for traces and OLAP scans
- Scavio Search Toolkit integration
- OpenAI citations in response objects
- LiteLLM support for native structured outputs
- Unified Google toolkit auth base class
New Features
- ClickHouse traces
- Scavio search
- OpenAI citations
- LiteLLM structured outputs
- Google auth refactor
- Reddit write scope enforcement
Full Release Notes
# Changelog ## New Features: - **ClickhouseDB for Traces:** Added support for ClickHouse for high-volume trace ingest and OLAP scans. See docs. - **Scavio Search Toolkit**: New search toolkit integration with Scavio. ## Improvements: - **OpenAI**: Citations from web-search responses are now surfaced on `response.citations` for `OpenAIChat` and `OpenAILike` providers. - **AgentOS**: Support `FastAPI >= 0.137` so `get_routes()` lists every route. - **LiteLLM**: Support native structured outputs and JSON schema outputs (enable per provider with `supports_native_structured_outputs` or `supports_json_schema_outputs`). - **Google Toolkits Auth Refactor**: Unified auth base class for Google toolkits. - **AgentOS**: Updated to not limit `quick_prompts` to 3 per agent/team/workflow. ## Bug Fixes: - **MCP**: Preserve `_meta` and `structuredContent` from MCP tool results on `ToolResult.metadata`. - **Tool-Result Compression:** Fixed token miscount for tools with numeric enum params, so compression triggers at the right time. - **Workflow**: Isolate `step_id` across concurrent runs while keeping it stable across pause/continue in HITL runs. - **Tools**: `Toolkit` and `Searxng` no longer reuse a mutable default list across instances. - **Traces**: Use canonical conditions key when scoping trace filters for scoped users. - Reddit: Write actions are now scoped to the configured allowed subreddits. - MoviePy: Generated outputs are written atomically to avoid partial files. - **OpenAI**: Fixed `OpenAIResponses` to support Chat Completions–style `json_schema` output schemas. ## What's Changed * cookbook: add remote agent as team member examples by @Mustafa-Esoofally in https://github.com/agno-agi/agno/pull/8248 * fix: Fixes a data-loss bug by @abhi10691 in https://github.com/agno-agi/agno/pull/7659 * feat: refactor Google toolkits with unified auth base class by @Mustafa-Esoofally in https://github.com/agno-agi/agno/pull/8267 * refactor: split agui/utils.py into focused modules by @Himanshu040604 in https://github.com/agno-agi/agno/pull/8364 * fix: preserve structuredContent from MCP CallToolResult by @weiguangli-io in https://github.com/agno-agi/agno/pull/7715 * [fix] Add support for citations in OpenAI chat responses by @MSNP1381 in https://github.com/agno-agi/agno/pull/5885 * feat: Add checkpointing demo for AgentOS by @anuragts in https://github.com/agno-agi/agno/pull/8549 * fix: render numeric enums as numeric literal unions in token type formatting by @Osamaali313 in https://github.com/agno-agi/agno/pull/8554 * fix: guard path-less routes in OS resync and regenerate step_id on workflow deep_copy by @ysolanky in https://github.com/agno-agi/agno/pull/8465 * fix: use canonical conditions key when scoping trace filters for scoped users by @sannya-singal in https://github.com/agno-agi/agno/pull/8564 * fix: Pass response_format to LiteLLM completion for structured outputs by @dee-walia20 in https://github.com/agno-agi/agno/pull/5881 * [test] make function cache path test cross-platform by @Fishbone23333 in https://github.com/agno-agi/agno/pull/8326 * [fix] Write MoviePy outputs atomically by @fengjikui in https://github.com/agno-agi/agno/pull/8537 * fix: scope reddit writes to allowed subreddits by @fengjikui in https://github.com/agno-agi/agno/pull/8539 * fix: quick prompt cap removal by @mishramonalisha76 in https://github.com/agno-agi/agno/pull/8577 * fix: replace mutable default argument in Toolkit.__init__ by @xlyoung in https://github.com/agno-agi/agno/pull/8253 * refactor: consolidate MCP ToolResult metadata into a single field by @harshsinha03 in https://github.com/agno-agi/agno/pull/8580 * fix: replace EOL claude-sonnet-4-0 with claude-sonnet-4-5 and harden flaky knowledge tests by @sannya-singal in https://github.com/agno-agi/agno/pull/8581 * [feat] Add Scavio search toolkit by @scavio-ai in https://github.com/agno-agi/agno/pull/8508 * feat: clickhouse db for traces by @kausmeows in https://github.com/agno-agi/agno/pull/7799 * chore: Release v2.6.20 by @harshsinha03 in https://github.com/agno-agi/agno/pull/8576 ## New Contributors * @weiguangli-io made their first contribution in https://github.com/agno-agi/agno/pull/7715 * @Osamaali313 made their first contribution in https://github.com/agno-agi/agno/pull/8554 * @dee-walia20 made their first contribution in https://github.com/agno-agi/agno/pull/5881 * @Fishbone23333 made their first contribution in https://github.com/agno-agi/agno/pull/8326 * @xlyoung made their first contribution in https://github.com/agno-agi/agno/pull/8253 * @scavio-ai made their first contribution in https://github.com/agno-agi/agno/pull/8508 **Full Changelog**: https://github.com/agno-agi/agno/compare/v2.6.19...v2.6.20