Redis-based session management for persisting and managing agent sessions in the Strands Agents SDK.
A community package for Amazon Strands Agents that provides Redis-based session persistence and management. This package allows you to store and retrieve agent conversation history and state using Redis as the backend, enabling stateful conversations across multiple interactions.
- 🔄 Session persistence with Redis
- 💾 Store and retrieve agent conversation history
- 🚀 Simple integration with Strands Agents SDK
- 🔧 Configurable
- 🐍 Python 3.12+ support
- Python 3.12+
- Strands Agents SDK 1.16.0+
- Redis 7.0.1+
pip install strands-agents strands-redis-session-managerfrom redis_session_manager import RedisSessionManager
from strands import Agent
# Initialize Redis session manager
session_manager = RedisSessionManager(
session_id='<session_id>',
redis_client=get_redis_client(),
ttl_seconds=600, # Optional[int]
...
)
# Create your agent with session management
agent = Agent(
agent_id='my-agent',
model=your_model,
session_manager=session_manager,
...
)
# Use session manager to persist conversations
# (See examples/ directory for detailed usage)- Clone the repository:
git clone https://github.com/lekhnath/strands-redis-session-manager.git
cd strands-redis-session-manager- Set up Python environment (Python 3.12+):
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate- Install dependencies:
pip install -e ".[dev]"
# or using uv
uv pip install -e .- Start Redis (using Docker):
docker compose -f compose.redis.yml up -d- Copy environment variables:
cp .env-example .env
# Edit .env with your configurationTests use fakeredis for in-memory testing, so no Redis server is required.
Run integration tests:
make test-integration
# or directly with pytest
pytest tests/integration/ -vRun all tests:
make test
# or directly with pytest
pytest tests/ -vRun tests with coverage:
make test-cov
# or directly with pytest
pytest tests/ --cov=redis_session_manager --cov-report=term-missingRun tests with HTML coverage report:
make test-cov-html
# Opens coverage report in htmlcov/index.htmlmake install # Install dependencies
make lint # Run linter
make format # Format code
make help # Show all available commandsContributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License.
Thanks to the Strands Agents team for creating an excellent SDK for building AI agents.