#!/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())