Repository navigation
Feature Request: Native FirestoreSessionService for production-ready persistent sessions #3776
Description
Is your feature request related to a problem? Please describe.
The Python ADK currently lacks a straightforward, serverless, and "happy path" solution for persistent session management in a Google Cloud environment. This presents a challenge for developers moving agents from local testing to production.
The current core options have limitations for this specific use case:
InMemorySessionService: Excellent for local dev, but not viable for production as state is lost on restart and cannot be shared across instances.VertexAiSessionService: While powerful, it introduces a high barrier to entry (requires deploying a "Reasoning Engine" and complex setup).DatabaseSessionService: Requires managing a SQL database (PostgreSQL/MySQL), which adds infrastructure overhead compared to a serverless NoSQL solution.
There is currently no native, serverless option in the core library that allows for immediate, low-config persistence on Google Cloud.
Describe the solution you'd like
I request the addition of a native FirestoreSessionService implementation as a core part of google.adk.sessions.
Why this solution is needed:
- A Clear Production Path: Firestore is a scalable, serverless, and widely used Google Cloud database. It provides a simple "happy path" for developers needing persistent sessions without managing infrastructure.
- Ease of Use: Enabling Firestore and configuring it is a well-understood process, offering a much lower barrier to entry than the Reasoning Engine or a full SQL database setup.
- Parity & Demand: This aligns with similar requests in other ADK languages (e.g., Java ADK Issue #497) and addresses a common developer need for simple cloud persistence.
Describe alternatives you've considered
- Using
DatabaseSessionService: This works but forces the developer to provision and manage a SQL database instance, which is often overkill for simple session state storage. - Using
VertexAiSessionService: Considered, but the setup complexity for Reasoning Engine is too high for simple persistence needs. - Third-party extensions: I am aware of
adk-ext, but this functionality is fundamental enough to the Google Cloud ecosystem that it warrants inclusion in the coregoogle/adk-pythonlibrary to ensure standard support and maintenance.
Additional context
This request mirrors the "FirestoreSessionService/VertexAiSessionService gap" issue currently open in the Java ADK repository: google/adk-java#497
As noted in that issue, the demand for this is high enough that AI models often hallucinate the existence of FirestoreSessionService because it feels like a missing piece of the standard library.
Guidance on Repository Placement:
I would appreciate guidance on whether this implementation belongs in this core google/adk-python repository or in google/adk-python-community.
- My reading of the Contributing Guide suggests that integrations often go to the community repo.
- However, I noticed that
FirestoreSessionServicewas recently considered for the Java core library.
Given that Firestore is a fundamental "happy path" for GCP deployments, I believe it fits best in core to ensure feature parity and standard support, but I defer to the maintainers' judgment.
Activity
mohan-ganesh commentedon Dec 7, 2025
Thanks for tagging me @mohammadshamma —this shortcoming actually led to a new contribution! I’ve added the FirestoreSessionService to the ADK here:
https://github.com/google/adk-java/tree/main/contrib/firestore-session-service
Give it a spin and let me know what you think.
mohammadshamma commentedon Dec 8, 2025
@mohan-ganesh, my request is for an equivalent FirestoreSessionService implementation in the Python ADK.
feat: add FirestoreSessionService for serverless session persistence
feat: add FirestoreSessionService for serverless session persistence
klateefa commentedon Feb 11, 2026
@mohammadshamma Thank you for submitting this feature request. It’s currently under review by our team, and I’ll keep you posted on any updates. We appreciate your input!
Thanks.
mohammadshamma commentedon Feb 11, 2026
I ended up vibing an implementation of a firebase session store for my personal project. It doesn't see a lot of traffic but it seems to work. If anyone in the community is interested in picking it up, I'll put sometime into spinning it off and out of my project's repo. It would be good to get others using it to harden and proof the implementation.
mohammadshamma commentedon Feb 13, 2026
Here is a firestore based session service implementation that is known to work with google adk v1.20.0: https://github.com/mohammadshamma/google-adk-firestore-session
feat: add FirestoreSessionService for serverless session persistence
DeanChensj commentedon Jun 26, 2026
Hi @mohammadshamma, thank you for the suggestion! This feature is actually now supported. You can use the
FirestoreSessionServiceclass ingoogle.adk.integrations.firestorewhich implements session persistence on top of Google Cloud Firestore. We are closing this issue, but please feel free to reopen it or open a new one if you have further questions. Thanks!