Skip to content

Google Firestore: implement agent demonstrating session persistence using Firestor for Java ADK#1563

Open
mohan-ganesh wants to merge 1 commit intogoogle:mainfrom
mohan-ganesh:firestore-session
Open

Google Firestore: implement agent demonstrating session persistence using Firestor for Java ADK#1563
mohan-ganesh wants to merge 1 commit intogoogle:mainfrom
mohan-ganesh:firestore-session

Conversation

@mohan-ganesh
Copy link
Copy Markdown

This is an additional for "Integration"
This commit includes an example and details of Using the Google Cloud Firestore for Session management

@netlify
Copy link
Copy Markdown

netlify bot commented Apr 5, 2026

Deploy Preview for adk-docs-preview ready!

Name Link
🔨 Latest commit 4cf1140
🔍 Latest deploy log https://app.netlify.com/projects/adk-docs-preview/deploys/69d6d46fb8bbcd0008d0d8a7
😎 Deploy Preview https://deploy-preview-1563--adk-docs-preview.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@mohan-ganesh mohan-ganesh force-pushed the firestore-session branch 3 times, most recently from 2271995 to af8f631 Compare April 6, 2026 12:56
Copy link
Copy Markdown
Collaborator

@koverholt koverholt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the PR!

I see that this is based on a pending PR in adk-java (google/adk-java#1096), so we will need to wait for that PR to get reviewed and/or merged/released before we can review and suggest edits on this docs update. I'll mark this as blocked until that happens.

Once that happens, there are a number of issues that need to be addressed in this PR for consistency and formatting, but these can wait until the upstream PR in adk-java is reviewed:

  • Use a icon/logo instead of a diagram for catalog icon
  • Fix versions throughout and update version tag with corresponding Java version
  • FirestoreDatabaseRunner requires gcs.adk.bucket.name to be configured, which is not mentioned
  • Fill in the Configuration section with actual property names and examples
  • Fix the forecast key in getCurrentTime, should be time or similar
  • Follow the established integration page structure per Contributing Guide

@mohan-ganesh
Copy link
Copy Markdown
Author

Thanks for the great feedback @koverholt ! I can certainly see the value in the information you added.
I’ve gone ahead and made the updates:

  • Added the icon and the new Use Case section.

  • Fixed the versions. (Note: I kept it as version 1.0.0 because the latest version will always be kept in sync with adk-java). The versions will be taken care as and when new versions are getting released on adk-java

https://mvnrepository.com/artifact/com.google.adk/google-adk-firestore-session-service

  • Added the prerequisite property entry and explained the reasoning behind it.

  • Included the sample property file, plus the additional custom properties for environment support.

  • Updated the key to "time" since that's what it's supposed to be

Let me know if you need any further adjustments

@koverholt
Copy link
Copy Markdown
Collaborator

Thanks for the updates! Does this functionality depend on google/adk-java#1096 being merged and released? If so, let us know and we will re-review this docs PR when that is ready to test.

@mohan-ganesh
Copy link
Copy Markdown
Author

mohan-ganesh commented Apr 8, 2026

thanks for the quick response @koverholt and this functionality is not dependent on https://github.com/google/adk-java/pull/1096

The changes https://github.com/google/adk-java/pull/1096 is about README.md on library component to reflect the latest versions on the example and documentation.. no functional changes

Copy link
Copy Markdown
Collaborator

@koverholt koverholt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the updates, a few more specific issues to address, then we can merge. Everything else LGTM.

catalog_title: Session Management with Firestore
catalog_description: Session state management for ADK agents using Google Cloud Firestore
catalog_icon: /integrations/assets/firestore-session.jpg
catalog_tags: ["sessions", "database"]
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rather than introducing two new categories, let's use either the "data" tag or "google" tag (since it uses Firestore), or both.

@@ -0,0 +1,202 @@
---
catalog_title: Session Management with Firestore
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
catalog_title: Session Management with Firestore
catalog_title: Firestore Session Service

@@ -0,0 +1,202 @@
---
catalog_title: Session Management with Firestore
catalog_description: Session state management for ADK agents using Google Cloud Firestore
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
catalog_description: Session state management for ADK agents using Google Cloud Firestore
catalog_description: Session state management for ADK agents using Firestore


!!! note

The `google-adk-firestore-session-service` version matches the core Google Agent ADK version. Ensure you use the same version for both libraries to guarantee compatibility.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The `google-adk-firestore-session-service` version matches the core Google Agent ADK version. Ensure you use the same version for both libraries to guarantee compatibility.
Ensure you use the same version for both `google-adk` and `google-adk-firestore-session-service` to guarantee compatibility.


```properties
# Firestore collection name for storing session data
adk.firestore.collection.name=adk-session
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These property names don't match the actual keys in FirestoreProperties.java. Can you confirm and fix if needed? And check this in google/adk-java#1096 as well.

  • adk.firestore.collection.name vs. firebase.root.collection.name
  • adk.gcs.bucket.name vs. gcs.adk.bucket.name
  • adk.stop.words vs. keyword.extraction.stopwords

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants