Metadata-Version: 2.4
Name: adk-extra-services
Version: 0.1.1
Summary: Additional service implementations for Google ADK
Author-email: ADK Community <community@adk-extensions.org>
License: Apache-2.0
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: google-adk
Requires-Dist: google-generativeai>=0.8.5
Requires-Dist: boto3>=1.28.0
Requires-Dist: typing-extensions>=4.0.0
Requires-Dist: motor>=3.3.0
Requires-Dist: redis>=5.0.0
Requires-Dist: python-dotenv>=1.0.0
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
Requires-Dist: black; extra == "dev"
Requires-Dist: flake8; extra == "dev"
Requires-Dist: mypy; extra == "dev"
Requires-Dist: isort; extra == "dev"
Requires-Dist: python-dotenv>=1.0.0; extra == "dev"
Provides-Extra: test
Requires-Dist: pytest>=8.0.0; extra == "test"
Requires-Dist: pytest-asyncio>=0.25.0; extra == "test"
Requires-Dist: pytest-mock>=3.14.0; extra == "test"
Requires-Dist: testcontainers>=3.10.0; extra == "test"
Provides-Extra: docs
Requires-Dist: sphinx>=7.2.0; extra == "docs"
Requires-Dist: furo>=2023.9.10; extra == "docs"
Requires-Dist: myst-parser>=2.0.0; extra == "docs"
Dynamic: license-file

# ADK Extra Services

[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](LICENSE)
[![Python Tests](https://github.com/edu010101/adk-extra-services/actions/workflows/ci.yml/badge.svg)](https://github.com/edu010101/adk-extra-services/actions/workflows/ci.yml)

> Extensions and additional services for the [Agent Development Kit (ADK)](https://github.com/google/adk-python)

ADK Extra Services provides production-ready implementations of common services needed for building robust AI agents with the Google ADK framework.

## 🚀 Installation

```bash
pip install adk-extra-services
```

## 🛠️ Development Setup

If you want to contribute to the project or modify the source code, follow these steps:

1. Clone the repository:
   ```bash
   git clone https://github.com/edu010101/adk-extra-services.git
   cd adk-extra-services
   ```

2. Check out our [Contributing Guidelines](CONTRIBUTING.md) for detailed setup instructions and development workflow.


## 📖 Services

### 🔄 [Sessions](examples/sessions/README.md)

Persistent session storage implementations for ADK agents.

#### Available Services:
- **MongoDBSessionService**: Persistent session storage using MongoDB
  ```python
  from adk_extra_services.sessions import MongoSessionService

  mongo_service = MongoSessionService(
    mongo_url="mongodb://your_mongo_uri:your_mongo_port",
    db_name="adk_test"
  )
  ```

- **RedisSessionService**: High-performance session storage using Redis
  ```python
  from adk_extra_services.sessions import RedisSessionService

  redis_service = RedisSessionService(redis_url="redis://your_redis_uri:your_redis_port")
  ```

For complete usage examples and API documentation, see the [Sessions Guide](examples/sessions/README.md).

### 📦 [Artifacts](examples/artifacts/README.md)

Storage and management of agent artifacts.

#### Available Services:
- **S3ArtifactService**: Store and manage artifacts in AWS S3 or compatible storage (Compatible with MinIO, DigitalOcean Spaces, Wasabi, Backblaze B2, and others)

  ```python
  from adk_extra_services.artifacts import S3ArtifactService

  s3_artifact_service = S3ArtifactService(
    bucket_name="your_bucket_name",
    endpoint_url="https://{your-bucket-name}.s3.{region}.amazonaws.com",
  )
  ```

- **AzureBlobStorageService**: ⚙️ Store and manage artifacts in Azure Blob Storage (in development)
  ```python
  # Coming soon!
  from adk_extra_services.artifacts import AzureBlobStorageService
  ```

For complete usage examples and API documentation, see the [Artifacts Guide](examples/artifacts/README.md).

## 🤝 Contributing

Contributions are welcome! Please see our [Contributing Guidelines](CONTRIBUTING.md) for details.

## 📄 License

This project is licensed under the Apache 2.0 License - see the [LICENSE](LICENSE) file for details.

