Files
agent-framework/python/PACKAGE_STATUS.md
Björn Holtvogt 485af07b8c Python: Add GeminiChatClient (#4847)
* Add agent-framework-gemini package

* Add AGENTS.md documentation

* Add LICENSE file

* Add README.md for agent-framework-gemini package

* Add Google Gemini API keys to .env.example

* Add Google Gemini chat client implementation

* Add tests for GeminiChatClient

* Add Google Gemini agent examples

* Fix client inheritence order

* Update Gemini agent examples

* Update documentation

* Update AGENTS.md

* Add tests for JSON string handling in GeminiChatClient

* Add final response assembly test in GeminiChatClient

* Add tests for handling empty candidates in GeminiChatClient

* Improve Pydantic response handling in GeminiChatClient

* Add tests for function result resolution and callable tool normalization

* Add test for function result resolution when call_id is generated

* Refactor GeminiChatClient to correct inheritance order

Also updates constructor parameter order for environment file handling

* Enhance documentation and clarify Gemini-specific fields

* Update ThinkingConfig with new attributes and type

* Add tests for GoogleSearch and GoogleMaps configs

* Suppress valid-type mypy error on GeminiChatOptionsT

* Move service_url method near overrides

* Order _prepare_config kwargs by base then Gemini-specific

* Use FunctionCallingConfigMode for clarity and type safety

* Fix code_execution doc

* Add agent-framework-gemini to project dependencies

* Remove package from core dependencies

Initial release will be done without agent-framework-gemini in
core[all].

* Move integration tests into one file

* Remove __init__.py file from gemini tests directory

* Introduce RawGeminiChatClient as lightweight chat client

Updated GeminiChatClient to inherit from RawGeminiChatClient, maintaining full functionality with added features.

* Updated variable names from `model_id` to `model`

Across the codebase, including environment variables and client initialization. Adjusted related tests and sample scripts to reflect this change, ensuring consistency in the usage of the Gemini model identifier.

* Update AGENTS.md

* Update Gemini package to alpha status

* Fix docstrings in Gemini tests

* Change 'model_id' to 'model' in response handling

* Fix model property change in response handling

* Add built-in tool factory methods to Gemini client

Replaces boolean tool options (code_execution, google_search_grounding,
google_maps_grounding) with static factory methods that return types.Tool
objects: get_code_interpreter_tool, get_web_search_tool, get_mcp_tool,
get_file_search_tool, and get_maps_grounding_tool.

Simplifies _prepare_tools to a single translation boundary between
FunctionTool (framework) and FunctionDeclaration (Gemini API), with
types.Tool objects passed through unchanged.

* Surface code execution parts

_parse_parts now maps executable_code and code_execution_result
parts to text Content objects so callers can see the code run
and its output. Unknown part types log at debug level rather than
being silently dropped.

* Update Gemini client documentation

* Unify Gemini model name

Co-authored-by: Eduard van Valkenburg <eavanvalkenburg@users.noreply.github.com>

* Update Agent Framework core version

Co-authored-by: Eduard van Valkenburg <eavanvalkenburg@users.noreply.github.com>

* Add Python 3.14 in classifiers

* Replace kwargs with parameters in tool factories

* Refactor chat options handling in Gemini client

* Add tests for handling unknown and consumed keys

* Update Gemini documentation

Now reflects new options and built-in tool factory methods

* Change build system to flit

Co-authored-by: Eduard van Valkenburg <eavanvalkenburg@users.noreply.github.com>

* Fix build system in pyproject.toml

* Fix type checking for generate_content_stream

---------

Co-authored-by: Eduard van Valkenburg <eavanvalkenburg@users.noreply.github.com>
2026-04-14 10:18:26 +00:00

3.9 KiB

Python Package Status

This file tracks the current lifecycle state of the Python packages in this workspace. Some packages at later stages might have features within them that are not ready yet, these have feature stage decorators on the relevant APIs, and for experimental features warnings are raised. See the Feature-level staged APIs section below for details on which features are in which stage and where to find them.

Status is grouped into these buckets:

  • alpha - initial release and early development packages that are not yet ready for general use
  • beta - prerelease packages that are not currently release candidates
  • rc - release candidate packages, these are close to ready for release but may still have some breaking changes before the final release
  • released - stable packages without a prerelease suffix, these are stable packages that should not have breaking changes between versions
  • deprecated - removed or deprecated packages that should not be used for new work

Current packages

Package Path State
agent-framework python/ released
agent-framework-a2a python/packages/a2a beta
agent-framework-ag-ui python/packages/ag-ui beta
agent-framework-anthropic python/packages/anthropic beta
agent-framework-azure-ai-search python/packages/azure-ai-search beta
agent-framework-azure-cosmos python/packages/azure-cosmos beta
agent-framework-azurefunctions python/packages/azurefunctions beta
agent-framework-bedrock python/packages/bedrock beta
agent-framework-chatkit python/packages/chatkit beta
agent-framework-claude python/packages/claude beta
agent-framework-copilotstudio python/packages/copilotstudio beta
agent-framework-core python/packages/core released
agent-framework-declarative python/packages/declarative beta
agent-framework-devui python/packages/devui beta
agent-framework-durabletask python/packages/durabletask beta
agent-framework-foundry python/packages/foundry released
agent-framework-foundry-local python/packages/foundry_local beta
agent-framework-gemini python/packages/gemini alpha
agent-framework-github-copilot python/packages/github_copilot beta
agent-framework-lab python/packages/lab beta
agent-framework-mem0 python/packages/mem0 beta
agent-framework-ollama python/packages/ollama beta
agent-framework-openai python/packages/openai released
agent-framework-orchestrations python/packages/orchestrations beta
agent-framework-purview python/packages/purview beta
agent-framework-redis python/packages/redis beta

Deprecated / removed packages

Package Previous path State Notes
agent-framework-azure-ai python/packages/azure-ai deprecated The client classes within the azure-ai package were renamed, sometimes changed, and moved to agent-framework-foundry.

Feature-level staged APIs

The following feature IDs have explicit feature-stage decorators on public APIs in the packages listed below.

Experimental features

EVALS

  • agent-framework-core: exported evaluation APIs from agent_framework, including LocalEvaluator, evaluate_agent, evaluate_workflow, and the related evaluation types and helper checks defined in agent_framework/_evaluation.py
  • agent-framework-foundry: FoundryEvals, evaluate_traces, and evaluate_foundry_target

SKILLS

  • agent-framework-core: exported skills APIs from agent_framework, including Skill, SkillResource, SkillScript, SkillScriptRunner, and SkillsProvider from agent_framework/_skills.py

Release-candidate features

There are currently no feature-level rc APIs.