* Upgrade Kotlin docs to adk-kotlin 0.9.0 and move off AdkWebServer
adk-kotlin 0.9.0 split the web server into AdkApiServer, which serves the agent
runtime contract headlessly, and AdkDevServer, which adds the development UI.
AdkWebServer is deprecated in that release and goes away at 1.0, so WebMain.kt
as written here stops compiling the day 1.0 ships.
The quickstart snippet now builds an AdkDevServer from an AdkServerConfig. That
drops three imports: AdkServerConfig.inMemory() supplies the agent loader and
the in-memory session and artifact services the old constructor took one by one.
Two behaviour notes come with the split. AdkWebServer pinned host to 0.0.0.0;
the new classes bind loopback, which is a visible change for anyone reaching the
server from a container or a remote box, so the page now says so and names the
host parameter in prose. It prints no worked example on purpose: the only value
such a snippet could carry is either 127.0.0.1, which overrides the default with
itself, or 0.0.0.0, which is a copyable way to publish an unauthenticated server
on every interface, and AdkDevServer construction is already shown in full
earlier on the page. And AdkApiServer is the headless half of the same config,
so it gets a short section rather than a bare mention - the bundled Kotlin API
reference is still generated at 0.5.0 and documents none of these classes, so a
link there would not have helped. The "not meant for production" warning now
sits directly after the screenshot, where go.md, java.md and python.md put it.
The dependency blocks readers copy from still pinned 0.8.0, and so did the
examples project. Verified on Maven Central that 0.9.0 is published for every
artifact named across these pages: -core, -processor, -webserver, -litertlm,
-a2a and -integrations. Checked the 0.9.0 POMs before bumping: Ktor still
resolves to 2.3.13 and a2a-java-sdk-client to 1.0.0.Final, so the explicit pins
stay correct and the two comments citing them only needed their version
reference moved. The `Kotlin v0.x` support badges are deliberately left alone:
they record the release a feature landed in, not the current version.
Verified by compiling: every snippet added here was compiled verbatim against
the published 0.9.0 artifacts on JDK 17, and the whole examples project still
builds at 0.9.0. As a negative control, the old snippet still compiles at 0.9.0
but emits the deprecation warning, which is what makes this a 1.0 break rather
than a present-day one. Note the Kotlin snippet check only builds .kt files
changed in the PR, so it will not cover a markdown-only change like this.
* Apply suggestion from @joefernandez
* Apply suggestion from @joefernandez
* Removing information bloat from the Get Started
see comments for where to locate this information
---------
Co-authored-by: Joe Fernandez <931947+joefernandez@users.noreply.github.com>
* docs(live): decompose the development guide into capability pages
Split dev-guide/part1-5 into Sessions, Events, Tools, Workflows, Audio and
video, Configuration, Voice, Supported models, and Build a custom server.
Rewrite index.md as the section Overview with a streaming-type decision table.
Implements Phase 2 of the Live Interactions<>ADK documentation revamp.
* docs(live): drop half-cascade model coverage
Half-cascade models are no longer supported for live agents. Remove the
Native Audio vs Half-Cascade architecture framing from Supported models and
the half-cascade caveats from Voice configuration. The eight prebuilt Live
API voices are kept, relabeled as native-audio voices alongside the extended
Text-to-Speech list.
* docs(live): retire the five-part dev guide and rewire navigation
Delete live/dev-guide/ and live/streaming-tools.md now that their content
lives in the capability pages. Regroup the Live nav into Get started / Build /
Ship / Reference, repoint every partN.md cross-link at its new page and
anchor, and add direct redirects for the removed paths (mkdocs-redirects does
not chain, so streaming/* keys point at final destinations).
* docs(live): point at the API reference instead of pinned source
Swap the RunConfig, Event, SequentialAgent, LiveRequestQueue and
Runner.run_live source-reference notes for Python API reference links.
Implementation pointers with line ranges are left as source links, since they
document internals with no public reference equivalent.
* docs(live): fix docs against adk-python main and drop the bidi-demo links
The bidi-demo sample was removed from adk-samples, so all the source links in
docs/live/ were dead. The sample is not shipped here either, so remove every
reference to it instead of repointing the links.
The code snippets themselves are unchanged. What goes away is only the
scaffolding that pointed at the sample:
- 32 code fences lose their linked 'Demo implementation: file.py:NN-MM' title
and become plain language-tagged fences.
- The 'Complete Demo Implementation' note in custom-server.md and the 'Demo
Implementation' note in events.md are dropped; both existed only to link out.
- The 'Learn More' note in tools.md and the model setup step in models.md keep
their guidance but no longer cite the sample's files.
- Prose that named the demo ('The bidi-demo demonstrates how to...') is
rewritten to describe the pattern directly.
- The Bidi Demo card and its screenshot are removed from the Live demos section
of index.md; LensMosaic remains.
Staleness fixes verified against adk-python main:
- StreamingMode.BIDI is inert. Only run_async() reads RunConfig.streaming_mode;
run_live() never does. Remove it from every run_live()-facing sample and
rewrite the 'StreamingMode: BIDI or SSE' section around the Runner method you
call. Keeps the old anchor via attr_list.
- configuration.md: run_live(session=...) is gone; use user_id/session_id.
- tools.md: streaming tools are registered lazily on first model call, not
scanned up front; the input_stream queue is created only for tools annotated
with LiveRequestQueue, and stop_streaming resets it to None. The old
runners.py / function_tool.py line references pointed at unrelated code.
- sessions.md: document DEFAULT_MAX_RECONNECT_ATTEMPTS = 5 and the go_away
reconnect trigger; correct 'automatic closure in SSE mode', which really only
happens for the internal queue under support_cfc.
- events.md: audio artifacts require RunConfig.save_live_blob=True;
get_author_for_event() also keys off llm_response.input_transcription.
- configuration.md: document history_config and the
initial_history_in_client_content=True that ADK sets when seeding history.
Not changed: get-started/streaming-java.md still sets StreamingMode.BIDI, which
could not be verified without an adk-java checkout.
* Refresh the Live API supported-model list
Checked against the Gemini Live API and Agent Platform model docs:
- models.md: replace the model list with a platform/model/stage table covering
gemini-3.1-flash-live-preview (Preview, Gemini Live API only),
gemini-2.5-flash-native-audio-preview-12-2025 (Preview), and
gemini-live-2.5-flash-native-audio (now GA, not "public preview").
- Document what Gemini 3.1 Live does not support: proactivity, affective
dialog, async function calling, thinking_budget (it uses thinking_level),
plus multi-part server events and the turn-coverage default change.
- Note that no Gemini 3.x Live model exists on Agent Platform, and that Live
API models are unavailable in the `global` location.
- voice.md: replace the Platform Compatibility text, which wrongly said
proactivity and affective dialog are unavailable on Agent Platform, with a
per-model support table.
- configuration.md: CFC's model check is a literal `gemini-2` prefix match, so
it rejects Gemini 3.x; refresh the runners.py line anchor.
- bidi-demo: same model table in the README, the 3.1 option and the regional
location requirement in .env.example, and an expanded model comment in
agent.py. The default stays on 2.5 native audio because the demo exposes
proactivity and affective dialog toggles. Re-anchored the agent.py line
links in models.md, tools.md, and sessions.md.
* docs(live): align docs with current Live API model capabilities
Verified docs/live/ and docs/runtime/runconfig.md against the Gemini Live
API capabilities guide, the Agent Platform Live API docs, and ADK 2.6.3.
Model consistency:
- response_modalities=["TEXT"] was presented as a valid live configuration
in configuration.md, events.md and sessions.md. Every Live API model ADK
supports is a native audio model, and those accept AUDIO only. Reframed
around AUDIO plus output audio transcription, and kept TEXT where it is
actually correct: the run_async() / SSE path.
- docs/runtime/runconfig.md configured response_modalities=["AUDIO","TEXT"]
in all three language samples. A session accepts exactly one modality.
- events.md snippets read event.content.parts[0], which drops content on
gemini-3.1-flash-live-preview because it sends multiple parts per server
event -- the failure models.md already warns about. All four snippets now
iterate over parts.
- tools.md gave the streaming-tools root agent model="gemini-flash-latest",
which has no Live API support, so the example could not run under
run_live() on either platform. That alias is still used for the one-shot
generate_content call inside the tool, where it is correct.
- configuration.md "Standard Gemini Models (1.5 Series) Accessed via SSE"
described a retired model family and labelled gemini-pro-latest /
gemini-flash-latest as 1.5 with 2M context.
- sessions.md: document that send_client_content is seeding-only on Gemini
3.x Live, and that ADK reroutes single-part text to send_realtime_input.
- models.md: gemini-live-2.5-flash-native-audio is the only GA Live API
model on Agent Platform, not the only one.
Coverage and links:
- configuration.md: document explicit_vad_signal, translation_config,
avatar_config and model_input_context.
- voice.md: note that ADK picks the live API version (v1alpha / v1beta1),
so proactivity and affective dialog need no http_options.
- Replace redirecting upstream URLs with their current targets:
live-guide -> live-api/capabilities, live-session ->
live-api/session-management, live -> live-api, and
cloud.google.com/vertex-ai -> the Agent Platform equivalents.
Verified correct, left alone: session and context limits, audio and video
specs, the proactivity / affective dialog model matrix, thinking_level vs
thinking_budget, the support_cfc gemini-2 prefix check, and ADK's AUDIO
default in run_live().
* docs(live): trim the response-modality and SSE material
Every Live API model ADK supports is a native audio model, so a live
session's response modality is always AUDIO and there is nothing to
choose. Shrink the section to the one thing that still matters --
reading text off event.output_transcription.
StreamingMode is only read by run_async(); the SSE tutorial that grew
around it here (protocol diagrams, progressive-streaming walkthrough,
mode-selection table, 1.5-series model list) duplicates
runtime/runconfig.md and describes models that no longer exist. Keep
the inert-BIDI warning and the run_live()/run_async() split, drop the
rest.
Document explicit_vad_signal, translation_config, avatar_config and
model_input_context, which had no coverage at all.
* docs(live): cut duplicated and non-ADK material
Six sections carried weight that did not belong to them:
- sessions.md 'Best Practices for Live API Connection and Session
Management' restated the Session Resumption and Context Window
Compression sections verbatim, down to the RunConfig snippets.
Deleted.
- sessions.md 'Concurrency and Thread Safety' + 'Message Ordering
Guarantees' explained asyncio.Queue at length and reproduced the
upstream task already in custom-server.md. Condensed to the three
properties that actually affect calling code, with a pointer to
the private _queue attribute dropped.
- sessions.md 'Architectural Patterns for Managing Quotas' was an
ASCII decision tree and a comparison table for two patterns that
reduce to one sentence each.
- index.md 'Real-world applications' spent five industry vignettes
making one point.
- events.md 'Deserializing on the Client' pasted 80 lines of the
bidi-demo's UI code, calling helpers that no longer exist anywhere
in these docs. Reduced to the event-shape handling it was meant to
show.
- audio-video.md 'Handling Image Input at the Client' was 130 lines
of getUserMedia/canvas/FileReader boilerplate plus a seven-point
recap of it.
Also fix two dead absolute links: /agents/multi-agents/#workflow-agents-as-orchestrators
(the page now redirects to workflows/index.md and the anchor is gone)
and /live/streaming-tools/ (no such page; the content is in tools.md).
* docs(live): restructure the live docs around ADK ownership
The live section had accumulated content it did not own: backend limits
restated on capability pages, Web Audio API implementation presented as
ADK guidance, and shared concepts re-explained rather than linked.
Applies one rule throughout: if a fact would still be true with the ADK
source deleted, it belongs on models.md or behind an upstream link, not
on a capability page.
- audio-video.md is now the format contract only (505 -> 121). The
browser mic-capture, ring-buffer playback, and camera-frame code was
Web Audio API with no ADK in it, had no counterpart in adk-python, and
no test anywhere. Deleted rather than relocated. The twelve numbered
'Key Implementation Details' lists restated the code comments directly
above them; deleted. The streaming-tool lifecycle section duplicated
tools.md; replaced with a link.
- custom-server.md gains 'Connect a client': what adk web handles
(16 kHz capture, 24 kHz playback, 1 fps JPEG, transcripts, barge-in),
where it stops, and the /run_live wire protocol, which was previously
undocumented. Keeps the one JS snippet that shows ADK's event shape.
Drops 'Client-side patterns'.
- sessions.md hands its platform-limits table and quota numbers to
models.md, keeping the session-pool design guidance. The same figures
had been stated in three places across two pages.
- models.md gains 'Platform limits and quotas' as the single source, and
loses the 'Key characteristics' list that restated configuration.md.
- configuration.md drops the 'Platform Support' column, which read
'Both' on 13 of 15 rows and labelled the two exceptions as platform
constraints when they are model constraints.
- tools.md compresses 'Tool execution context' to the one fact that is
live-specific: an InvocationContext spans the whole run_live() loop,
not a single turn.
- workflows.md points at graphs/index.md, the ADK 2.0 graph workflow
page, rather than the v0.1.0 multi-agent umbrella.
- Six internal links used absolute paths, which mkdocs does not
validate, so --strict had been silently ignoring them. Now relative.
- Fixes class.="grid cards" in get-started/index.md, which was breaking
the card grid.
* docs(live): standardize page leads and cut duplicated RunConfig prose
Every live page opened by narrating its own table of contents ("This page
covers X, Y, and Z"), which duplicates the rendered TOC, ages badly when
a heading changes, and spends a paragraph before the reader gets a fact.
evaluation.md already did the better thing: state the shared baseline,
link the canonical page, then cover only the delta. That is now the
convention across the section.
- sessions.md, events.md, configuration.md, audio-video.md,
workflows.md, tools.md, models.md and get-started/index.md now name
their non-live counterpart in the lead instead of listing their own
headings. Three pages had no outbound link to the shared concept at
all: tools.md to Custom Tools, models.md to Models for agents, and
workflows.md pointed at the v0.1.0 umbrella rather than graph
workflows.
- configuration.md drops the custom_metadata section (85 lines) for a
pointer plus the one live-specific consequence: a run_live() call is a
single invocation, so metadata is stamped on the whole session rather
than one turn. runtime/runconfig.md already owns the field.
- configuration.md trims max_llm_calls and save_live_blob to the facts
that are live-specific — max_llm_calls does not apply to run_live() at
all, and save_live_blob writes ~1.92 MB per minute per session to two
services — and drops the generic use-case and best-practice lists.
- custom-server.md replaces 'Key concepts', which re-pasted all three
code blocks from the complete example directly above it, with prose
explaining why the two tasks must run concurrently.
Live section: 2820 -> 2211 lines.
* docs(live): reframe pages around capabilities, fix eval config key
* Apply batched suggestions from code review
Co-authored-by: Joe Fernandez <931947+joefernandez@users.noreply.github.com>
* Apply suggestion from @joefernandez
* Apply batched suggestions from code review
Co-authored-by: Joe Fernandez <931947+joefernandez@users.noreply.github.com>
---------
Co-authored-by: Stephen Allen <stephenaallen@google.com>
Co-authored-by: Joe Fernandez <931947+joefernandez@users.noreply.github.com>
* Add Agents CLI quickstart to Get Started
Agents CLI is currently explained only under Deploy > Agent Runtime and in
the Coding with AI tutorial, so readers reach it either not at all or with
the impression that it only configures AI coding assistants. Add a
quickstart alongside the language quickstarts, and a card on the Get
Started index so the choice is made up front.
* Rework the quickstart around the coding agent path
Lead with the coding agent as the intended way to use Agents CLI, add the
lifecycle diagram and the seven skills, and say the CLI has more than 25
commands so the skills do not read as the whole product. Name the real
Phase 0 questions (tools, inputs and outputs, success criteria) and close
the loop in Next steps, where evaluation grades against those criteria.
Drop the manual command section in favour of the upstream manual workflow
tutorial, drop the playground production warning, and use Antigravity
rather than Antigravity CLI to match the rest of the docs.
* Address review feedback on Agents CLI quickstart
- Tighten intro to 3-4 sentences; drop the coding-agent-path paragraph,
the "optional / ordinary ADK agents" paragraph, and the seven-skills
table (kept the lifecycle diagram)
- Installation: state clearly that setup also installs the ADK Python
packages, not just the CLI
- Authenticate: swap the default to the Gemini API key path; move Google
Cloud into a linked note pointing to the Google Cloud setup guide
- Build your agent: replace prose in each tab with a command block
containing verification steps as comments; move "Any other agent" out
of the tabs into a note; "tell it" -> "tell the coding agent"
- Add explanatory sentence before the scaffold command block clarifying
that the coding agent runs the commands (and the reader can too)
- Get Started index: drop the language-quickstarts-vs-Agents-CLI framing
paragraph (unlikely to be read in that position)
* Update agents-cli.md
* Update agents-cli.md
* Delete docs/assets/agents-cli-lifecycle.png
---------
Co-authored-by: pierpaolo28 <pierpaolo28@users.noreply.github.com>
Co-authored-by: Joe Fernandez <931947+joefernandez@users.noreply.github.com>
* Upgrade Kotlin examples to adk-kotlin 0.8.0
The Kotlin examples project is pinned to adk-kotlin 0.7.0, which predates the
BigQuery agent analytics plugin and the JSON Schema constraint fields on
`Schema`. Bump the pin to 0.8.0 so snippets for those features can be written.
Only the three version strings change. Checked the 0.8.0 POM before bumping:
it still resolves Ktor 2.3.13 and kotlin-stdlib 2.1.20, so the explicit Ktor
pins and the 2.1.20 Kotlin/KSP plugin versions stay correct, and 0.8.0 removes
no API that the current snippets use.
Not compile-verified locally - no JDK 17 on hand, and the Gradle wrapper
rejects the JDK 26 that is. The PR check only builds .kt files changed in the
PR, so it will not cover this either; the first snippet PR on top of this one
is what will actually exercise the new version.
* Bump the Kotlin install instructions to 0.8.0
The dependency blocks readers copy from still pinned 0.5.0 - three releases
behind, and behind the examples project itself. Anyone following the quickstart
got an SDK without context caching, the Vertex AI memory and session services,
or the BigQuery analytics plugin, while the snippets on those same pages are
written against a newer API.
Verified on Maven Central that 0.8.0 is published for every artifact named
here: -core, -processor, -webserver, and -litertlm.
Only install instructions change. The `Kotlin v0.x` support badges are
deliberately left alone: they record the release a feature landed in, not the
current version.
* Format localhost URLs as inline code in quickstarts
* Correct module paths and stale notes in snippet comments
* Reword "and later" to "and higher" in snippet notes
* docs: update GOOGLE_GENAI_USE_VERTEXAI to GOOGLE_GENAI_USE_ENTERPRISE in configs and models
* docs: update GOOGLE_GENAI_USE_VERTEXAI in deployment and setup guides
* docs: update GOOGLE_GENAI_USE_VERTEXAI and Client parameter in integrations and streaming docs
* docs: update GOOGLE_GENAI_USE_VERTEXAI in tutorials and examples
---------
Co-authored-by: Joe Fernandez <931947+joefernandez@users.noreply.github.com>
* adding go getting started to 2.0 docs
* updating graphs docs for go; adding in workflow example go snippets
* Updating HiTL docs for Go 2.0
* updating Go getting started guide for v2
* Updating Routes docs for Go v2
* Updating data handling docs for Go 2.0
* Updating dynamic workflows docs for Go 2.0
* fix(docs): set ADK Go 2.0 GA date on the 2.0 landing page
* fix(docs): standardize ADK Go 2.0 install/import on /v2 @ v2.0.0
* updating announcement banner
* routes snippets updates
* 2.0 install instructions clean-up
* updating collaboration docs for go v2 + new example snippet
---------
Co-authored-by: Karol Piotrowicz <kpiotrowicz@google.com>
* wip: temporary staging
* Consolidate Google Cloud and Agent Platform connection info
* remove gcp-mentions file
* adding links to central GCP connection page
* minor updates
* responded to review comments
* Update version for ADK Kotlin to 0.2.0
* Update version for ADK Kotlin examples to 0.2.0
* Update install steps on multi-tool-agent page
* Update ADK Kotlin API reference docs to 0.2.0
* Remove runner parameter from AdkWebServer constructor
* Add Kotlin to hero / front page
* Add quickstart page for Kotlin
* Complete Kotlin quickstart guide and fix hero code sample (#2)
* Replace GitHub repo links with language icons in header (#3)
* Fix header icon FOUC and homepage font weight regression (#4)
* Testing staging pipeline
* Revert test edit (for staging pipeline)
* Update language icon tooltips to indicate GitHub destination (#5)
* Add link to ADK Kotlin release notes (#7)
* Initial commit of ADK Kotlin API reference docs (#6)
* Add script to generate ADK Kotlin API reference docs (#8)
* Update links and link checker ignore list (temporarily) (#9)
* Add ADK Kotlin for Android getting started guide to Advanced setup page (#10)
* Add advanced setup page with steps to "Use ADK Kotlin in Android projects"
* Update temp link checker rules
* Add placeholder folder for adk-samples (#13)
* adding linter/compilation checks for kotlin snippets (#12)
* adding linter/compilation checks for kotlin snippets
* Add Kotlin validation scripts
* Initial commit of Kotlin sample agents for adk-samples (#15)
* Adding kotlin snippet for llm agents (#16)
* Adding kotlin snippets to Events (#17)
* Pull changes to docs/events/index.md from glaforge-kotlin-snippets
* fixing kotlin event timestamp and longRunningToolIds
* Fix language tags (#19)
* Fix language tags
* Update
* Fix wrapping
* Fix wrapping (again)
* Fix wrapping/format
* Fix language tag on integration page
* Enable check_paths in PyMdown Snippets Extension to make the build fail if a snippet can't be found (#20)
* Update mkdocs config (#21)
* Fix broken links, update URLs to adk.dev, and improve (temp) lychee config (#22)
* Add Kotlin/maven badge to README (#23)
* Adding Kotlin snippets for artifacts (#18)
* Pull Kotlin snippets for artifacts from glaforge-kotlin-snippets
* Add comprehensive Kotlin snippets for artifacts
* Refactor artifacts documentation to use external Kotlin snippets
* Update Kotlin model to gemini-flash-latest
* Fix GCS initialization in Kotlin artifact snippet
* afixi failing test with capital-agent added to files_to_check
* Fix snippet label syntax for MkDocs build
* Configure proper Gradle project for Kotlin snippets and fix dependencies
* Add KSP support and generated sources to Kotlin snippets build
* fixing capital_agent turnComplete
* Fix syntax error in build.gradle.kts by removing invalid placeholders (#25)
* Adding Kotlin snippets to google-gemini.md (#27)
Pulling kotlin changes to google-gemini.md from glaforge-kotlin-snippets
* Add a warning about not adding an api key to production code. (#28)
* Add a warning about not adding an api key to production code.
* Update note
---------
Co-authored-by: Kristopher Overholt <koverholt@google.com>
* Add ADK Demo App sample showcasing Gemini-powered agents (#29)
This sample demonstrates how to use the Google ADK (Agent Development Kit) in an Android application to create a chat interface powered by a Gemini-based "Fun Facts" agent. The implementation features:
* Integration with the Kotlin ADK core and processor libraries.
* A `FunFactsAgent` defined using `LlmAgent` and the Gemini model.
* A `ChatViewModel` utilizing `InMemoryRunner` for asynchronous message streaming.
* A modern UI built with Jetpack Compose and Material 3.
* Build configuration logic for secure API key management via environment variables or `local.properties`.
* Update Kotlin docs and samples to align with adk-kotlin API changes (#30)
Rename GeminiModel to Gemini, @AdkTool/@AdkParam to @Tool/@Param,
adkTools() to generatedTools(), replace DebugRunner with InMemoryRunner,
fix AgentLoader import path, use SingleAgentLoader, bump Kotlin to
2.3.21 and KSP to 2.3.7, and update Android minSdk from 24 to 26.
* adding kotlin info to READMEs (#14)
* Reorganize Android sample agent and add READMEs (#31)
* Move Android sample agent
* Update repo README, add Android README, update sample agent README
* Minor edit to language support tags (#32)
* Remove blog post link (#33)
Will re-add after it's published
* Remove examples link (#34)
* Adding Kotlin snippets for Sessions docs (#26)
* initial kotlins snippets additions to sessions docs
* Updating memory docs with kotlin snippets
* Adding kotlin snippets to session state docs.
* update model to gemini-flash-latest
* sessions examples clean-up
* fixing sessions snippet markers
* adding kotlin session snippets to files to test
* adding callback to memory_example
* Fixing capital agent snippet (#35)
Fixing file name
Updating adkTool > Tool
Updating GeminiModel > Gemini
* Adding kotlin snippets for tools docs (#36)
* adding function tool kotlin snippets
* adding function_tools snippets to files to test
* Adding kotlin snippets to observability docs (#37)
* initial kotlin observability updates
* adding observability snippets to file check (#38)
* Adding Kotlin snippets to Callbacks docs (#39)
* kotlin callbacks snippets
* adding callbacks snippets to file check
* Align Kotlin and KSP versions with published 0.1.0 artifacts (#40)
* switch CLI entry points from InMemoryRunner to ReplRunner (#41)
* Switch CLI entry points from InMemoryRunner to ReplRunner
* Fix wording
* Update API reference docs for Kotlin, 2026-05-18 (#42)
* Remove ADK on Android note until published (#43)
* Update Kotlin code samples (#44)
* Rename GeminiModel to Gemini in Kotlin snippets and docs
* Remove broken SessionKey call and use sessionId directly in AgentTool snippet
* Rewrite Go hero snippet to use llmagent API
* Use isFinalResponse with safe access in CapitalAgent snippet
* Use Role.USER constant instead of raw string in SetupExample
* Use full semver v0.1.0 in Kotlin language support tags
* Remove Android setup steps, moving to new property (#45)
* Tutorial Kotlin agent (#46)
* Adding multi-tool-agent snippet and updating tutorial
* Fixing Go language order on tutorial page
* adding multi tool agent example to files to test
* Inline Kotlin get-started code sample
* Kotlin Multi agents snippets (#47)
* Multi-agent kotlin snippets
* Fixing docs tags in multiagent example
* Fix Kotlin language support tags, code samples, and google-gemini.md cleanup (#48)
* Add Kotlin v0.1.0 to language support tags across docs
* Fix MultiToolAgent.kt model string and argument style
* Update MultiAgentExample.kt to use gemini-flash-latest model string
* Fix google-gemini.md: add Kotlin sample, remove unsupported Java tabs
* Remove explicit apiKey from CallbackBasic.kt for consistency
* Standardize Gemini() constructor to use named args in all snippets
* Remove adk-samples directory (moved to google/adk-samples#1969)
* Remove adk-samples directory (moved to google/adk-samples#1969) (#49)
* Update API reference docs for ADK Kotlin 0.1.0 (#50)
* Remove adk-samples directory (moved to google/adk-samples#1969)
* Update API reference docs for ADK Kotlin 0.1.0
* Remove kotlin lycheeignore config (#51)
* Remove adk-samples directory (moved to google/adk-samples#1969)
* Remove Kotlin .lycheeignore config links
---------
Co-authored-by: Toni Klopfenstein <2359976+ToniCorinne@users.noreply.github.com>
Co-authored-by: Jolanda Verhoef <JolandaVerhoef@users.noreply.github.com>
* docs: home page
* updates based on feedback
* respond to review feedback
* docs: update gemini selector strings to "flash-latest"
* Update homepage.css
* Replace google.github.io/adk-docs URLs and /adk-docs/ paths with adk.dev
Migrate all hardcoded documentation references to use the new custom
domain. Update root-relative links to remove the /adk-docs/ subpath
prefix since the site will be served from the root of adk.dev.
* Additional fixes
* doc: A2A support in ADK Java
* doc: fix spelling for the Agent2Agent protocol name
* doc: addressing Kris' comments on the A2A Java documentation
* docs: update ADK Java to version 1.0.0
Technical overview page provides insights on ADK's working concepts.
Adding URL link to provide information for user while like know concepts before deep diving into code.
* fix: update remaining references to use ADK Gemini Live API Toolkit naming
fix: update remaining references to use ADK Gemini Live API Toolkit naming
* fix: update about page to use ADK Gemini Live API Toolkit naming and add link
fix: update about page to use ADK Gemini Live API Toolkit naming and add link
---------
Co-authored-by: Joe Fernandez <joefernandez@users.noreply.github.com>
* fix: change the tool name from ADK Bidi-streaming to ADK Gemini Live API Toolkit
fix: change the tool name from ADK Bidi-streaming to ADK Gemini Live API Toolkit
* fix: Rename "Bidi-streaming" to "Gemini Live API Toolkit" in nav, landing page, quickstart, and feature matrix
Updates mkdocs.yml navigation, streaming landing page card titles/links, quickstart cross-reference, and feature matrix entries.
* docs: update source references for ADK v1.26.0
Update all ADK source code references to point to the v1.26.0 commit
with corrected line numbers for drifted references.
---------
Co-authored-by: Joe Fernandez <joefernandez@users.noreply.github.com>
* doc: Reference version 0.5.0 of ADK for Java
* doc: Update references of version 0.6.0 of ADK for Java instead of older versions
---------
Co-authored-by: Joe Fernandez <joefernandez@users.noreply.github.com>
* fix(deploy): simplifying Agent Engine deployment
* revise and update ae deploy doc structure
* respond to review comments
* docs: break up Models page into multiple pages
- Create page per model and access method
- Push Models topic up to top level TOC entry
* updates based on review feedback
* fix broken links due to page move
* consistency updates and review input updates
* update gemini-2.0-flash to 2.5
* respond to review comments
* docs: update Python API docs to 1.22.0 (#1129)
* build(deps): bump golang.org/x/crypto (#987)
Bumps the go_modules group with 1 update in the /tools/feature-matrix directory: [golang.org/x/crypto](https://github.com/golang/crypto).
Updates `golang.org/x/crypto` from 0.42.0 to 0.45.0
- [Commits](https://github.com/golang/crypto/compare/v0.42.0...v0.45.0)
---
updated-dependencies:
- dependency-name: golang.org/x/crypto
dependency-version: 0.45.0
dependency-type: indirect
dependency-group: go_modules
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Sita Lakshmi Sangameswaran <sitalakshmi@google.com>
* Update model version from gemini-2.0 to gemini-2.5, since gemini-2.0-flash will be deprecated on Feb 5,2026. (#1132)
Co-authored-by: Joe Fernandez <joefernandez@users.noreply.github.com>
* Changes model MODEL_2_0_FLASH to MODEL_2_5_FLASH as gemini-2.0 is deprecating (#1131)
* Update model constants to use GEMINI 2.5
* Corrected model name
---------
Co-authored-by: Joe Fernandez <joefernandez@users.noreply.github.com>
* Add Agent Runtime pages for Web Interface and Command Line; reorganize existing Agent Runtime pages (#1130)
* Add pages for adk web, adk run, reorganize runtime pages
* Minor edit
* Updates based on review
* docs: break up Models page into multiple pages
- Create page per model and access method
- Push Models topic up to top level TOC entry
* minor update
* add placeholder file
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Polong Lin <polong-lin@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Sita Lakshmi Sangameswaran <sitalakshmi@google.com>
Co-authored-by: llalitkumarrr <llalitkumarrr@google.com>
Co-authored-by: Dinesh Thumma <160909147+DineshThumma9@users.noreply.github.com>
Co-authored-by: Kristopher Overholt <koverholt@google.com>
* docs: ADK TS fixes
- remove duplicate Go tab
- TS tag for Types of Callbacks
- fix TS tab rendering and ordering problem
* docs: fix language ordering consistency issues
* Deleted redundant files.
* Deleted redundant files.
* Deleted redundant files.
* Deleted redundant files.
* Deleted redundant files.
* Deleted redundant files.
* Delete .gitignore
Deleted redundant files.
* Delete .gitignore
Deleted redundant files.
* Delete .gitignore
* Delete .gitignore
* Delete .gitignore
* Revert changes to .gitignore
* Revert changes to .gitignore
* Revert changes to .gitignore
* Revert changes to .gitignore
* Revert changes to .gitignore
* Revert changes to .gitignore
* Add MCP Tools TS example
* Removed unnecessary changes
* Removed extra slashes
* Added the custom agent sample.
* Corrected an error in the package.json file.
* Updated custom-agent.md
* Made small fixes.
* Add Session TS examples
* Added the typescript code snippets for multi agent.
* added the code sample for loop agent
* Added the code sample for loop agent
* Added the code sample for parallel agent
* Fixed a few issues and bugs
* Added the code sample for sequential agent
* Renamed run back to runAsync
* Updated the capital agent code sample.
* Corrected the snippet
* Renamed run() to runAsync()
* Add Runtime TS examples
* Fixed the snippets after library updates.
* Fixed the sample code after library changes.
* Added final touchups and fixes.
* Updated the code based on recent library changes.
* Updated package.json
* Updated package.json
* Updated package.json
* Updated the code with runAsync and package.json
* Updated the typescript sample.
* Updated after_tool_callback.ts with runAsync
* Updated after_model_callback.ts
* Updated before_model_callback.ts
* Updated before_tool_callback.ts
* Created before_agent_callback.ts
* Update before_agent_callback.ts
Changed the condition
* Update before_model_callback.ts
Changed the condition
* Update after_model_callback.ts
Changed the condition
* Update after_tool_callback.ts
Changed the condition
* Update after_agent_callback.ts
Changed the condition
* Update callback_basic.ts
Changed the condition
* Update storyflow_agent.ts
Changed the condition
* Update sequential_agent_code_development_agent.ts
Changed the condition
* Updated before_agent_callback.ts
* Removed unnecessary comment.
* Updated comment
* Renamed run to runAsync
* Added artifact code snippets.
* Fixed .link-checker-config.json
* Added tsconfig.json
* Update .gitignore with node modules files
* Added 7 typescript code snippets
* Cleaned up and corrected the snippets for plugins
* Update index.md
Undid the changes in artifacts/index.md
* Escaped properly.
* Add Long Running Function Tool TS examples
* Resolved code review feedback
* Fixed the code sample per git comments.
* Fixed the code per git comments.
* Fixed the md file per git comments.
* Fixed the issues per git comments.
* Fixed issues per github comments.
* Fixed the issues per PR comments.
* Fixed issues per PR comments.
* Added a code sample for HITL
* Fixed the indentations in the typescript code
* Used createPartFromBase64 when appropriate.
* Switched to use createUserContent.
* docs: Add JavaScript Quickstart, short unified format
* Added a simulated user delay to the code sample.
* Made some cosmetic improvements
* Added the code snippet with HITL with policy
* Made cosmetic modifications to multi-agents.md
* Added more tutorial for the HITL with policy
* Modularized the main function and added helper functions.
* Resolved code review feedback
* Resolved code review feedback
* Resolved code review feedback
* Fixed minor things in the typescript code per PR comments.
* Fixed the import for Event and used createEventActions.
* Simplified functionResponse code.
* Corrected the Event import and used createEventActions.
* Updated ADK versions in package.json.
* Final review of all changes & Add Safety TS example
* Make tsconfig.json files consistent
* Generated the API Reference for typescript
* Resolved code review feedback
* feat: Add Typescript API reference to docs
This commit adds the generated TypeDoc documentation for the Typescript ADK to the documentation site.
It also updates the main API reference page to include a link to the new Typescript API reference.
* docs: update TypeScript quickstart
* docs: Add version tags for Build Agents topics
- add version tags
- move TS content to second position (after Python)
* docs: Add MCP Toolbox for databases TS SDK Documentation
* Update mcp-toolbox-for-databases.md
* use typescript code block
* minor changes
* Update mcp-toolbox-for-databases.md
* Auto generated the typescript API reference.
* Added the TS code snippets for context.
* Fixed TS code snippets for context.
* Modified the sample based on the comment.
* docs: adding TypeScript language tags (2 of 3)
- Update all Run Agents section topics
- change all TS tags to v0.2.0 per eng agreement
* docs: Add TypeScript language support tags, Components (3 of 3)
- add TS language support tags
- re-order TS examples to be second
- minor fixes: remove trailing spaces
* Added callback samples for typescript to the markdown files.
* Updated adk version in quickstart
* Updated google/adk version for typescript.
---------
Co-authored-by: manchan <manchan@google.com>
Co-authored-by: Mandy Chan <75594070+slothwriter@users.noreply.github.com>
Co-authored-by: Joe Fernandez <joefernandez@google.com>
Co-authored-by: Joe Fernandez <joefernandez@users.noreply.github.com>
Co-authored-by: Twisha Bansal <58483338+twishabansal@users.noreply.github.com>
* Add mkdocs-llmstxt and related config
* Remove existing llms.txt and llms-full.txt from repo
* Add docs page for llms.txt
* Minor edit
* Minor edit
* Add *.md to glob syntax in mkdocs-llmstxt config
* Add explicit URLs in API reference section to avoid build warnings
* Fix all build warnings related to bad cross-links and incorrect anchor links
* Suppress INFO logs about absolute links - the CI link checker will catch any issues
* Fix remaining build warnings
* Add Gemini CLI instructions
* Fix link to bidi tutorial