Skip to content

Conversation

@rakshith-git
Copy link

Summary

This PR adds comprehensive documentation for OpenMemory, a self-hosted, open-source memory system for AI agents that was recently added to ADK. The PR includes:

  1. Complete documentation for OpenMemory in docs/sessions/memory.md, including installation, configuration, setup instructions, and usage examples
  2. CLI usage examples showing how to use OpenMemory with --memory_service_uri flag
  3. Comparison table updates adding OpenMemory as a third memory service option alongside InMemoryMemoryService and VertexAiMemoryBankService

This documentation makes OpenMemory fully accessible to users, providing clear guidance on installation, setup, configuration, and usage patterns.

Related PRs

Link to Issue or Description of Change

2. No existing issue - documentation for existing OpenMemory feature

Problem:

Following the OpenMemory implementation in adk-python, users needed:

  • Complete documentation covering installation, setup, configuration, and usage patterns
  • Comparison with other memory services to help users choose the right option
  • Examples showing both CLI and programmatic usage
  • Self-hosted setup instructions for Docker and Node.js deployments

Solution:

This PR provides:

  • Full documentation section in docs/sessions/memory.md following the same pattern as Vertex AI Memory Bank
  • Updated comparison table with OpenMemory as a third option
  • CLI usage examples matching the implementation in adk-python
  • Self-hosted setup instructions for Docker and Node.js deployments
  • Advanced usage patterns and configuration options

Changes

Documentation Updates (docs/sessions/memory.md)

  • Updated comparison table: Added OpenMemoryService as a third column with feature comparisons

    • Updated intro text from "two distinct" to "three distinct" implementations
    • Added rows for: Persistence, Primary Use Case, Memory Extraction, Search Capability, Setup Complexity, Dependencies, When to use it
  • New OpenMemory section (after Vertex AI Memory Bank):

    • Overview: Description of OpenMemory as self-hosted, open-source memory system
    • How It Works: Explanation of two key operations (storing and retrieving memories)
    • Key Features: Multi-sector embeddings, graceful decay, server-side filtering, self-hosted, cost-effective
    • Installation: pip install google-adk[openmemory]
    • Prerequisites: Self-hosted backend setup and environment variables
    • Configuration: Two options:
      • Option 1: CLI Usage - Examples for adk web and adk api_server with URI formats
      • Option 2: Python Code - Manual instantiation examples
    • Advanced Configuration: OpenMemoryServiceConfig parameters documentation
    • Self-Hosted Setup: Docker and Node.js setup instructions with step-by-step guides
    • Advanced Usage: Multi-user isolation, app-level filtering, enriched content format
    • Sample Agent: Reference to sample agent in adk-python repository
  • Updated multi-memory service section: Added OpenMemoryService to examples and updated code samples

Technical Decisions

Documentation Structure

The documentation follows the exact same structure as Vertex AI Memory Bank, ensuring consistency and making it easy for users to compare options. The side-by-side comparison table helps users quickly identify which memory service fits their needs.

CLI Examples Alignment

All CLI examples in the documentation match the URI format implementation in adk-python:

  • openmemory://localhost:3000 format
  • Query parameter support for API keys
  • Full URL support

The examples are tested against the actual CLI implementation to ensure accuracy.

Testing Plan

Documentation Validation

  • All code examples are syntactically correct
  • All links are valid (OpenMemory docs, sample agent)
  • URI formats match CLI implementation in adk-python
  • Comparison table accurately reflects OpenMemory capabilities
  • Markdown formatting consistent with existing documentation
  • Installation steps verified against actual package structure

Manual Review

  • Documentation follows existing patterns (matches Vertex AI Memory Bank structure)
  • All installation steps are accurate
  • Setup instructions are clear and complete
  • Code examples are copy-paste ready
  • CLI examples match the implementation
  • All referenced features exist in the implementation

Checklist

  • I have read the CONTRIBUTING.md document.
  • I have performed a self-review of my own documentation.
  • Documentation follows existing patterns and style guides.
  • Code examples in documentation are tested and correct.
  • All links are valid and working.
  • Any dependent changes have been merged and published in downstream modules.

Additional Context

Documentation Structure

The documentation is organized to match Vertex AI Memory Bank:

  • Comparison table for quick decision-making
  • Configuration section with CLI and Python options
  • Setup instructions for self-hosted deployment
  • Advanced usage for power users
  • Sample agent reference for complete examples

Markdown Quality

  • ✅ Consistent formatting with existing documentation
  • ✅ Proper code block syntax highlighting
  • ✅ Valid markdown links and references
  • ✅ Consistent with Material for MkDocs theme

Related Implementation

This documentation covers the OpenMemory feature implemented in adk-python (google/adk-python#3386), including:

  • Core OpenMemoryService implementation
  • CLI URI support via openmemory:// scheme
  • Sample agent demonstrating usage
  • Configuration options and advanced features

* Updated the MemoryService section to include the new OpenMemoryService implementation.
* Enhanced the comparison table with features, use cases, and setup details for all three memory services: InMemoryMemoryService, VertexAiMemoryBankService, and OpenMemoryService.
* Added comprehensive documentation on OpenMemory, including installation, configuration, and advanced usage scenarios.
@koverholt
Copy link
Collaborator

Thanks for your contribution! Marking this as blocked for the review and discussion in the feature PR: google/adk-python#3387.

@joefernandez joefernandez changed the title docs: Expand MemoryService options in documentation docs: Add OpenMemory product as ADK MemoryService option Nov 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants