Found docs updates needed from ADK python release v2.2.0 to v2.4.0
- Dominant language
- Shell
- Stars
- 1.5k
- Forks
- 1.3k
- Avg merge
- 7d 1h
- Merged PRs (30d)
- 34
Description
Compare URL: https://github.com/google/adk-python/compare/v2.2.0...v2.4.0
## Feature changes
### 1. **New `ManagedAgent` feature and documentation**
**Doc file**: docs/agents/managed-agent.md, mkdocs.yml
**Current state**:
> File does not exist. (For docs/agents/managed-agent.md)
> Missing from mkdocs.yml navigation.
**Proposed Change**:
> Create `docs/agents/managed-agent.md` detailing `ManagedAgent` requirements (enterprise client, `global` location) and limitations (server-side tools only, streaming only). Add `agents/managed-agent.md` to `mkdocs.yml` under Agents -> Simple agents.
**Reasoning**:
A new `ManagedAgent` class has been added to ADK for running agents via the Managed Agents API (`interactions.create`). It requires specific configurations and documentation for users to discover and use it.
**Reference**: src/google/adk/agents/_managed_agent.py
### 2. **`RunConfig` field additions (`model_input_context`, `translation_config`, `http_options`, `telemetry`)**
**Doc file**: docs/runtime/runconfig.md
**Current state**:
> Does not mention `model_input_context`, `translation_config`, `http_options`, or `telemetry`.
**Proposed Change**:
> Add definitions for:
> - `model_input_context`: Transient context to include in the model input for this invocation without persisting it to the session.
> - `translation_config`: Configures real-time speech-to-speech translation.
> - `http_options`: HTTP options for the agent execution (e.g., custom headers).
> - `telemetry`: Per-request OpenTelemetry configuration.
**Reasoning**:
New fields were added to `RunConfig` to support transient model input context, real-time speech translation, custom HTTP options, and per-request telemetry control.
**Reference**: src/google/adk/agents/run_config.py
### 3. **Support for partial turn updates in streaming requests**
**Doc file**: docs/streaming/dev-guide/part2.md
**Current state**:
> `LiveRequest` and `send_content()` documentation lack mention of partial turns.
**Proposed Change**:
> Update `LiveRequest` to include `partial: bool = False # Signal partial turn update`. Update `send_content()` to explain: "You can optionally pass `partial=True` to indicate that the content is a partial turn update that does not yet complete the model's turn."
**Reasoning**:
The LiveRequest model and `send_content()` method were updated to accept a `partial` boolean flag indicating a partial turn update, which must be documented for developers using the streaming API.
**Reference**: src/google/adk/agents/live_request_queue.py
### 4. **Deprecation of `global_instruction` in favor of `GlobalInstructionPlugin`**
**Doc file**: docs/agents/llm-agents.md
**Current state**:
> **Note:** For instructions that apply to *all* agents in a system, consider using `global_instruction` on the root agent.
**Proposed Change**:
> **Note:** For instructions that apply to *all* agents in a system, consider using the `GlobalInstructionPlugin` on your `App` object.
**Reasoning**:
The `global_instruction` field on `LlmAgent` has been deprecated. Users should now use the `GlobalInstructionPlugin` at the App level to apply instructions consistently across all agents.
**Reference**: src/google/adk/plugins/global_instruction_plugin.py
### 5. **Update `ContextCacheConfig` parameter documentation**
**Doc file**: docs/context/caching.md
**Current state**:
> - **`min_tokens`** (int): The minimum number of tokens required in a request to enable caching... Defaults to `0`.
**Proposed Change**:
> - **`min_tokens`** (int): The minimum *prior-request* tokens required to enable caching. This gates on the previous request's actual prompt token count... Gemini enforces a hard 4096-token minimum...
> - **`create_http_options`** (Python only, `google.genai.types.HttpOptions`): Optional HTTP options to pass to the GenAI client...
**Reasoning**:
The `ContextCacheConfig` definition has been updated to clarify how `min_tokens` works with the Gemini API and to introduce the `create_http_options` parameter.
**Reference**: src/google/adk/agents/context_cache_config.py
### 6. **Document support for Workflows/Nodes as Tools**
**Doc file**: docs/agents/llm-agents.md
**Current state**:
> Lists native functions, `BaseTool`, and `AgentTool` as supported tools.
**Proposed Change**:
> Add: `* (Python only) An instance of a BaseNode or Workflow that has a description configured (wrapped internally as a NodeTool).`
**Reasoning**:
`LlmAgent` now supports using `BaseNode` and `Workflow` instances directly as tools, expanding ways agents can delegate to other execution graphs.
**Reference**: src/google/adk/agents/llm_agent.py
### 7. **Deprecate `SequentialAgent` in favor of `Workflow`**
**Doc file**: docs/agents/workflow-agents/sequential-agents.md
**Current state**:
> !!! note "Alternative: graph-based workflows"
> Starting in ADK 2.0 for Python and Go, templated workflows have been superseded...
**Proposed Change**:
> !!! warning "Deprecation Notice"
> `SequentialAgent` is deprecated in favor of `Workflow` and will be removed in a future version. Note that `Workflow` cannot yet be used as an `LlmAgent` sub-agent.
**Reasoning**:
`SequentialAgent` is now explicitly marked as deprecated in Python code. A clear warning should be provided to users.
**Reference**: src/google/adk/agents/sequential_agent.py
### 8. **Document `prompt` parameter in `OAuth2Auth`**
**Doc file**: docs/tools-custom/authentication.md
**Current state**:
> client_secret=YOUR_OAUTH_CLIENT_SECRET
**Proposed Change**:
> client_secret=YOUR_OAUTH_CLIENT_SECRET,
> # Optional: prompt="consent" (default), "login", "none", or "select_account"
**Reasoning**:
The `OAuth2Auth` model now accepts an optional `prompt` parameter for customizing OAuth prompt behavior.
**Reference**: src/google/adk/auth/auth_credential.py
### 9. **Add Express Mode API Key support for CLI deploy**
**Doc file**: docs/deploy/agent-runtime/deploy.md
**Current state**:
> adk deploy agent_engine \
> --project=$PROJECT_ID \
> --region=$LOCATION_ID \
> --display_name="My First Agent" \
> multi_tool_agent
**Proposed Change**:
> # With Google Cloud Project and Region
> ...
> # Or with Express Mode API Key (bypasses Google Cloud Project/Location requirement)
> adk deploy agent_engine \
> --api_key="YOUR_API_KEY" \
> multi_tool_agent
**Reasoning**:
`adk deploy agent_engine` now supports an `--api_key` option to automatically deploy using Express Mode, bypassing the need for a GCP project.
**Reference**: src/google/adk/cli/cli_deploy.py
### 10. **Document trigger sources for ambient agents on Agent Platform**
**Doc file**: docs/runtime/ambient-agents.md
**Current state**:
> Mentions `--trigger_sources="pubsub,eventarc"` for `adk deploy cloud_run`.
**Proposed Change**:
> Add note: "You can also deploy ambient agents to Agent Platform by passing the same `--trigger_sources` flag to the `adk deploy agent_engine` command."
**Reasoning**:
`adk deploy agent_engine` now explicitly supports the `--trigger_sources` flag for deploying ambient agents.
**Reference**: src/google/adk/cli/cli_deploy.py
### 11. **Custom Storage Backends via `services.yaml`**
**Doc file**: docs/sessions/session/index.md
**Current state**:
> Here’s a simplified flow of how `Session` and `SessionService` work together
**Proposed Change**:
> Add a section detailing how to register custom storage backends by creating a `services.yaml` file and specifying the custom URI scheme (e.g., `adk web --session_service_uri="mycustom://..."`).
**Reasoning**:
The Service Registry now supports reading custom backend services from a `services.yaml` file, simplifying custom configurations.
**Reference**: src/google/adk/cli/service_registry.py
### 12. **Document experimental Daytona and E2B Environments**
**Doc file**: docs/integrations/environment-toolset.md
**Current state**:
> ADK provides a [***LocalEnvironment***](#local-environment) implementation for use with the Environment Toolset framework.
**Proposed Change**:
> ADK provides a [***LocalEnvironment***](#local-environment) implementation for use with the Environment Toolset framework. ADK also provides experimental **`DaytonaEnvironment`** and **`E2BEnvironment`** remote sandbox environments.
**Reasoning**:
ADK added built-in implementations for `DaytonaEnvironment` and `E2BEnvironment` that extend `BaseEnvironment`.
**Reference**: src/google/adk/integrations/daytona/_daytona_environment.py
### 13. **Add specialized Gemma 3 wrapper support**
**Doc file**: docs/agents/models/google-gemma.md
**Current state**:
> Focuses strictly on standard API/self-hosting without mention of Gemma 3's function calling workarounds.
**Proposed Change**:
> Add a `Gemma 3 Support` section explaining that `Gemma` and `Gemma3Ollama` classes provide automatic workarounds for Gemma 3.
**Reasoning**:
ADK added specialized `Gemma` and `Gemma3Ollama` classes specifically to bridge the function calling and system instruction gaps for Gemma 3 models.
**Reference**: src/google/adk/models/gemma_llm.py
## Other
### 14. **Update CLI default models to `gemini-3.5-flash`**
**Doc file**: docs/get-started/python.md, docs/agents/config.md
**Current state**:
> `model: gemini-flash-latest` and `model='gemini-flash-latest'`
**Proposed Change**:
> Update examples to `model='gemini-3.5-flash'` and `model: gemini-3.5-flash`.
**Reasoning**:
The `adk create` CLI tool now defaults to generating agent templates with `gemini-3.5-flash` instead of `gemini-flash-latest`.
**Reference**: src/google/adk/cli/cli_create.py
### 15. **Remove deprecated flags from `adk deploy agent_engine`**
**Doc file**: docs/integrations/bigquery-agent-analytics.md
**Current state**:
> Mentions using `--staging_bucket` and `--adk_app` flags.
**Proposed Change**:
> Remove `--staging_bucket` and `--adk_app` flags from the deployment examples.
**Reasoning**:
The `--adk_app` and `--staging_bucket` flags have been deprecated and removed from `adk deploy agent_engine`.
**Reference**: src/google/adk/cli/cli_deploy.py
Contributor guide
Research direction
Start with the v2.2.0...v2.4.0 comparison and the referenced source files, then review the listed documentation targets such as docs/agents/managed-agent.md, docs/runtime/runconfig.md, docs/deploy/agent-runtime/deploy.md, and mkdocs.yml. Update all 15 documented changes, including examples, navigation, deprecation notes, and CLI options, and verify that each referenced feature is accurately reflected in the relevant page.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- google-cloud, python
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100