github agno-agi/agno v2.6.9

3 hours ago

Changelog

New Features:

  • Approvals - Resolved Approval in Post-Hooks: Post-hooks and observability integrations can now read the full resolved approval record (resolved_by, resolved_at, etc.) via run_response.metadata["approval"]. Previously only status and resolution_data were exposed. Lives in metadata so it works uniformly across RunOutput / TeamRunOutput / future WorkflowRunOutput. (#7366, #8032)

Improvements:

  • PgVector - prefix_match=True actually works: PgVector(prefix_match=True) was a silent no-op - it appended * then routed through websearch_to_tsquery, which ignores wildcards. Now routes through to_tsquery('tok:*') with proper tokenization, so partial queries like "ani" FTS-match "animal" as documented. New cookbook cookbook/07_knowledge/04_advanced/06_prefix_search.py shows the help-center typeahead use case. (#8048, #8051, #8052)
  • PgVector - empty-tsquery fallback robustness: Replaced the to_tsquery(language, '') fallback with a literal ''::tsquery cast so behavior no longer depends on the parser tolerating empty input. (#8053)
  • Claude variants - temperature/top_p/top_k = 0 honored: Anthropic, AWS, and VertexAI Claude variants were silently dropping 0.0 values due to bare truthiness checks. Switched to is not None so deterministic output works as intended. (#8009, fixes #8004)
  • Calendar & Gmail context providers - clean instruction layering: Trimmed DEFAULT_READ_INSTRUCTIONS / DEFAULT_WRITE_INSTRUCTIONS from 157 lines to 27 by removing content already supplied by the toolkit-side instructions. Provider now owns role + safety; toolkit owns the technical reference. (#7982)
  • decision_log - drop deprecated datetime.utcnow(): Replaced with datetime.now(timezone.utc) to clear the Python 3.12 deprecation warning. (Closes #8030)
  • Chonkie: Bumped to >=1.6.7 to pick up the upstream language auto-detection fix; removed the temporary test workarounds from #7904. (#8012)

Bug Fixes:

  • GeminiInteractions - server-side tool calls leaking onto the agent path: On the agent path (Antigravity, Deep Research), FunctionCallSteps describe tools the autonomous loop runs inside the server-managed sandbox. Previously we surfaced them as local tool_calls, leading to Function <name> not found and follow-up 400 invalid_request errors. Gated the FunctionCallStep branch on self.agent is None for both streaming and non-streaming. Model path with user-declared tools is unchanged. (#8045)
  • Claude (Anthropic / AWS / VertexAI) - temperature=0 silently dropped: See Improvements. Every prior release silently fell back to API defaults (~1.0) when callers explicitly set 0. (#8009, fixes #8004)

What's Changed

New Contributors

Full Changelog: v2.6.8...v2.6.9

Don't miss a new agno release

NewReleases is sending notifications on new releases.