Skip to main content

Community extensions for the Strands Agents SDK

Project description

strands-agents-extensions

Community extensions for the Strands Agents SDK — session managers and plugins in one package with optional extras.

Installation

Install the base package:

pip install strands-agents-extensions

Install with specific extras:

# SQLite session manager
pip install strands-agents-extensions[sqlite]

# All plugins
pip install strands-agents-extensions[plugins]

# All session managers
pip install strands-agents-extensions[session-managers]

# Everything
pip install strands-agents-extensions[all]

Quick Start

Session Managers

from strands_agents_extensions.session_managers import SQLiteSessionManager

# Create a SQLite-backed session manager
session_manager = SQLiteSessionManager(
    session_id="chat-session-001",
    db_path="sessions.db",
)

# Use with Strands Agent
agent = Agent(
    session_manager=session_manager,
    # ... other config
)

Plugins

from strands_agents_extensions.plugins import BudgetPlugin, RateLimiterPlugin

# Add budget control to your agent
budget_plugin = BudgetPlugin(max_cost_per_session=10.0)

# Add rate limiting
rate_limiter = RateLimiterPlugin(model_calls_per_minute=60)

agent = Agent(
    plugins=[budget_plugin, rate_limiter],
    # ... other config
)

Available Extras

Extra Description Dependencies
sqlite SQLite session manager None (stdlib)
budget Budget control plugin litellm<=1.82.6
rate-limiter Rate limiting plugin None
redaction PII redaction plugin None
fallback Model fallback plugin None
session-managers All session managers sqlite
plugins All plugins budget + rate-limiter + redaction + fallback
all Everything session-managers + plugins

Available Components

Session Managers

  • SQLiteSessionManager: Local SQLite-backed session storage with full conversation history

Plugins

  • BudgetPlugin: Track and enforce token budget limits
  • RateLimiterPlugin: Control request rate to avoid API throttling
  • MessageRedactionPlugin: Automatically redact PII from messages
  • ModelFallbackPlugin: Implement model fallback strategies on failures

Development

Running Tests

This project uses Hatch for environment management and pytest for testing.

# Install Hatch if you don't have it
pip install hatch

# Run all tests
hatch run test

# Run with verbose output
hatch run test -v

# Run a specific test file
hatch run test tests/plugins/test_budget.py

# Run tests matching a pattern
hatch run test -k test_budget

If you already have a virtual environment with dev dependencies installed, you can run pytest directly:

pytest tests/

License

Apache-2.0

Contributing

Contributions welcome! This is a community-maintained package for extending the Strands Agents SDK.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

strands_agents_extensions-0.1.1.tar.gz (29.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

strands_agents_extensions-0.1.1-py3-none-any.whl (21.2 kB view details)

Uploaded Python 3

File details

Details for the file strands_agents_extensions-0.1.1.tar.gz.

File metadata

  • Download URL: strands_agents_extensions-0.1.1.tar.gz
  • Upload date:
  • Size: 29.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for strands_agents_extensions-0.1.1.tar.gz
Algorithm Hash digest
SHA256 d37256ef039563eda0508761da31e4bda48b176f868d29f441d1271142ce47c6
MD5 e3f4ba6cafd6394476e2bfe60e2abf7d
BLAKE2b-256 5013ea512c581627fbddd52fc12229021fc2f715b1e3143760fd995bfd4f514a

See more details on using hashes here.

File details

Details for the file strands_agents_extensions-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: strands_agents_extensions-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 21.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for strands_agents_extensions-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 51f728587a4e47d88dd17a9580495e7a141fe2ea1bfe0d4aed329906073ca012
MD5 38381c33fe1a9535f0292870b36c4a8d
BLAKE2b-256 2ea0e7bebe17b321e6324443dfeed3340117b9aed0686ef035639e765eb51092

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page