This repository has been archived on 2026-02-23. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
adk-firestore/view_summary.py
2026-02-21 22:35:17 -06:00

45 lines
1.2 KiB
Python

#!/usr/bin/env python3
"""Print the conversation summary for a specific user's session."""
import asyncio
from google.cloud.firestore_v1.async_client import AsyncClient
from rich.console import Console
from rich.markdown import Markdown
from rich.panel import Panel
from adk_firestore_sessionmanager import FirestoreSessionService
APP_NAME = "test_agent"
USER_ID = "dev_user"
console = Console()
async def main() -> None:
db = AsyncClient()
session_service = FirestoreSessionService(db=db)
resp = await session_service.list_sessions(
app_name=APP_NAME, user_id=USER_ID
)
if not resp.sessions:
console.print("[dim]No sessions found.[/]")
return
for s in resp.sessions:
ref = session_service._session_ref(APP_NAME, USER_ID, s.id)
snap = await ref.get()
data = snap.to_dict() or {}
summary = data.get("conversation_summary")
if summary:
console.print(Panel(Markdown(summary), title=f"Session {s.id}", border_style="cyan"))
else:
console.print(Panel("[dim]No summary yet.[/]", title=f"Session {s.id}", border_style="yellow"))
if __name__ == "__main__":
asyncio.run(main())