v2.3.22

agno-agi/agnov2.3.22Jan 6, 2026by manuhortet

AI Summary

Introduced the Agent Skills system, dynamic headers for MCP tools, and support for new reasoning models including GPT-5.1/5.2 and DeepSeek r1.

Key Highlights

  • Introduced Agent Skills class
  • Added dynamic headers for MCP tools
  • Enabled native reasoning for OpenAI GPT-5.1/5.2, Gemini 3/3.5, and DeepSeek r1
  • MCPTools now defaults to StreamableHttp transport

New Features

  • Agent Skills
  • Dynamic Headers for MCP

Full Release Notes

# Changelog

## New features

- **Agent Skills**: Introducing the `Skills` class, enabling you to extend your Agents’ capabilities by providing specific skills, as defined by Anthropic’s [Agent Skill specification](https://agentskills.io/home). See the [docs](https://docs.agno.com/basics/skills).
- **Dynamic headers for MCP**: You can now pass a `header_provider` function to your MCPTools instances to generate dynamic headers when calling MCP tools. This is useful for headers that need to change based on context e.g. authorization tokens or user ids. See the [docs](https://docs.agno.com/basics/tools/mcp/dynamic-headers).

## Improvements:

- **Reasoning models**: enable native reasoning for the following reasoning models:
    - OpenAI GPT-5.1 and 5.2 models
    - New Gemini 3, 3.5 and deepthink model
    - New DeepSeek r1 and reasoner models.
- **JWT Middleware Audience**: Allow setting of the expected `audience` for checking
- **MCP transport default**: The `MCPTools` class now defaults to `StreamableHttp` as transport when connecting to external MCP servers.
- **Postgres DB**: Updates to the database session pooling logic and handling of illegal characters in any strings to store.0
- **A2A Remote Agents**: Added support for `a2a` protocol when using remote agents. The also means Google ADK agents can be used with AgentOS as remote running agents. This feature is still in beta. See the [docs](https://docs.agno.com/agent-os/remote-execution/overview).

## Bug Fixes:

- **Chunking:** Fixed paragraph and newline splitting in chunking strategies.
- **Early Termination in Workflows:** Propagate `stop` flag from primitive inner steps to workflow
- **Context compression for OpenAIResponses**: Update our `CompressionManager` to work properly with any model using the `OpenAIResponses` API.

## What's Changed
* [fix] Added vllm to be included to remove unsupported fields by @mishramonalisha76 in https://github.com/agno-agi/agno/pull/5848
* [docs] Fix broken link to evals/performance in README by @ppippi-dev in https://github.com/agno-agi/agno/pull/5854
* fix: a typo in cookbook by @crazyss in https://github.com/agno-agi/agno/pull/5875
* fix: propagate stop flag from primitive inner steps to workflow by @pengwk in https://github.com/agno-agi/agno/pull/5868
* fix: Split text before clean_text [SDK-411] by @harshsinha03 in https://github.com/agno-agi/agno/pull/5900
* [feat]  Add the audience parameter to the JWTMiddleware constructor by @poneding in https://github.com/agno-agi/agno/pull/5685
* feat: consider new reasoning models by @manuhortet in https://github.com/agno-agi/agno/pull/5910
* feat: default to streamable-http transport in MCPTools if url is present by @manuhortet in https://github.com/agno-agi/agno/pull/5903
* fix: Various Postgres fixes by @dirkbrnd in https://github.com/agno-agi/agno/pull/5851
* fix: handle Function type in CompressionManager, for OpenAIResponses by @manuhortet in https://github.com/agno-agi/agno/pull/5870
* feat: add A2AClient and cookbooks by @uzaxirr in https://github.com/agno-agi/agno/pull/5614
* feat: dynamic headers for MCP tools by @bhatt-neel-dev in https://github.com/agno-agi/agno/pull/5655
* feat: add skills system with local loader and agent integration by @uzaxirr in https://github.com/agno-agi/agno/pull/5890
* fix: rm redndant cookbook by @uzaxirr in https://github.com/agno-agi/agno/pull/5918
* chore: v2.3.22 by @manuhortet in https://github.com/agno-agi/agno/pull/5914

## New Contributors
* @ppippi-dev made their first contribution in https://github.com/agno-agi/agno/pull/5854
* @crazyss made their first contribution in https://github.com/agno-agi/agno/pull/5875
* @pengwk made their first contribution in https://github.com/agno-agi/agno/pull/5868
* @poneding made their first contribution in https://github.com/agno-agi/agno/pull/5685

**Full Changelog**: https://github.com/agno-agi/agno/compare/v2.3.21...v2.3.22