Skip to content

redis-developer/adk-redis

Repository files navigation

Redis × ADK

Redis Integrations for Google Agent Development Kit


adk-redis is the Redis layer for Google ADK agents. It implements ADK's BaseMemoryService, BaseSessionService, and BaseTool interfaces against Redis, RedisVL, and the Redis Agent Memory Server. It also ships MCP toolset helpers and semantic-cache providers.

Surface What you get Backed by
Sessions BaseSessionService with auto-summarization and context-window management Agent Memory Server
Long-term memory BaseMemoryService with semantic search and recency boosting Agent Memory Server
Memory tools LLM-controlled memory CRUD operations Agent Memory Server
Search tools Vector, hybrid, range, text, and SQL search as BaseTool subclasses RedisVL
MCP search search-records / upsert-records via ADK's native McpToolset rvl mcp server
Semantic cache Skip repeat LLM calls by semantic similarity RedisVL or Redis LangCache

Full documentation


Installation

pip install adk-redis

Optional extras:

pip install 'adk-redis[memory]'      # sessions + long-term memory services
pip install 'adk-redis[search]'      # RedisVL-backed search tools
pip install 'adk-redis[sql]'         # RedisSQLSearchTool
pip install 'adk-redis[langcache]'   # managed semantic cache provider
pip install 'adk-redis[all]'         # everything above

Quick start

Prerequisites: Python 3.10+, Redis 8.4+, and (for memory features) a running Agent Memory Server. See the Quickstart for full setup steps.

from google.adk import Agent
from google.adk.runners import Runner

from adk_redis import (
    RedisLongTermMemoryService,
    RedisLongTermMemoryServiceConfig,
    RedisWorkingMemorySessionService,
    RedisWorkingMemorySessionServiceConfig,
)

session_service = RedisWorkingMemorySessionService(
    config=RedisWorkingMemorySessionServiceConfig(
        api_base_url="http://localhost:8088",
        default_namespace="my_app",
    ),
)
memory_service = RedisLongTermMemoryService(
    config=RedisLongTermMemoryServiceConfig(
        api_base_url="http://localhost:8088",
        default_namespace="my_app",
    ),
)

agent = Agent(
    model="gemini-2.5-flash",
    name="memory_agent",
    instruction="You are a helpful assistant with long-term memory.",
)

runner = Runner(
    app_name="my_app",
    agent=agent,
    session_service=session_service,
    memory_service=memory_service,
)

More examples: search tools, MCP search, semantic caching


Examples

All examples run via adk web and ship with a README and .env.example. See the Examples index for descriptions.

Category Examples
Memory and sessions simple_redis_memory · travel_agent_memory_hybrid · travel_agent_memory_tools · fitness_coach_mcp
Search redis_search_tools · redis_sql_search · redisvl_mcp_search
Caching semantic_cache · langcache_cache

Development

git clone https://github.com/redis-developer/adk-redis.git
cd adk-redis
make dev               # install with all extras + dev deps
make check             # format, lint, type-check, and test

See CONTRIBUTING.md for the full guide.


Contributing

Open an issue or submit a PR following CONTRIBUTING.md.

License

Apache 2.0. See LICENSE.


Links