Metadata-Version: 2.5
Name: aice-data-brain
Version: 0.1.2
Summary: Python SDK for the AICE Data Brain multi-source data connection + query layer
Author-email: Adanian Labs <engineering@adanianlabs.io>
License: MIT
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Typing :: Typed
Requires-Python: >=3.11
Requires-Dist: aice-core<0.4,>=0.3.0
Provides-Extra: dev
Requires-Dist: pytest-asyncio>=0.24; extra == 'dev'
Requires-Dist: pytest>=8.3; extra == 'dev'
Requires-Dist: respx>=0.21; extra == 'dev'
Description-Content-Type: text/markdown

# aice-data-brain

Python SDK for the [Data Brain](../../../aice_packages/data_brain/) a
multi-source connection layer that preprocesses, inspects, and answers
questions over arbitrary data sources without exposing raw credentials to the
model.

```python
from aice_data_brain import DataBrainClient

client = DataBrainClient(base_url="https://db.example.com", api_key="sk-…")

# Connection lifecycle
client.connections.preprocess("postgres", config={"dsn": "…"})
client.connections.process("postgres", connection_id="cn_123")
client.connections.inspect("postgres", connection_id="cn_123")

# Query
result = client.connections.query(
    "postgres",
    connection_id="cn_123",
    query="SELECT * FROM events LIMIT 10",
)

# Describe what's connected
descriptors = client.descriptors.list()
```

Endpoints covered (see `data_brain/app/api/routes/`):

* `GET  /health`
* `POST /connections/{connection_type}/preprocess`
* `POST /connections/{connection_type}/process`
* `POST /connections/{connection_type}/cleanup`
* `POST /connections/{connection_type}/query`
* `POST /connections/{connection_type}/inspect`
* `GET  /descriptors/…` (list available data descriptors)
