Metadata-Version: 2.4
Name: modal-proxy
Version: 0.1.0
Summary: Abstraction layer over Modal SDK for mng: supports direct, testing, and remote modes
Requires-Python: >=3.11
Requires-Dist: concurrency-group==0.1.8
Requires-Dist: imbue-common==0.1.8
Requires-Dist: mng==0.1.8
Requires-Dist: modal==1.3.1
Requires-Dist: resource-guards==0.1.1
Description-Content-Type: text/markdown

# modal-proxy

Abstraction layer over the [Modal](https://modal.com) SDK for [mng](../mng/README.md).

This library defines a `ModalInterface` ABC that captures every interaction mng_modal has with Modal. Three implementations are planned:

1. **DirectModalInterface** -- calls the Modal Python SDK directly (the current behavior, extracted from mng_modal)
2. **TestingModalInterface** -- fakes Modal behavior locally (volumes become directories, sandboxes become process groups) for integration testing without remote calls
3. **RemoteModalInterface** -- proxies calls to a web server, enabling a managed service that translates user credentials into real Modal API calls

## Usage

The `ModalInterface` is intended to be injected into `ModalProviderInstance` (in mng_modal) rather than having mng_modal call the Modal SDK directly.
