Metadata-Version: 2.4
Name: cerebelum-sdk
Version: 0.2.0
Summary: Python SDK for Cerebelum workflow orchestration engine
License: MIT
Project-URL: Homepage, https://github.com/ZeaCl/cerebelum
Project-URL: Repository, https://github.com/ZeaCl/cerebelum-python
Project-URL: Documentation, https://github.com/ZeaCl/cerebelum-python#readme
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: grpcio>=1.60
Requires-Dist: protobuf>=4.25
Provides-Extra: dev
Requires-Dist: pytest>=7.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.23; extra == "dev"

# Cerebelum Python SDK

Python SDK for **Cerebelum** — a deterministic workflow orchestration engine built on Elixir/OTP.

## Install

```bash
pip install cerebelum-sdk
```

Or from source:

```bash
git clone https://github.com/ZeaCl/cerebelum-python.git
cd cerebelum-python
pip install -e .
```

## Quick Start

```python
from cerebelum import step, workflow

@step
def hello(inputs):
    name = inputs.get("name", "World")
    return f"Hello, {name}!"

@workflow
def my_workflow(wf):
    wf.timeline(hello)

# Execute locally (no engine needed)
result = my_workflow.execute({"name": "Carlos"})
print(result.final_result)  # "Hello, Carlos!"
```

## Distributed Mode

Requires [Cerebelum Engine](https://github.com/ZeaCl/cerebelum) running with gRPC enabled.

```python
from cerebelum import DistributedExecutor

executor = DistributedExecutor(core_url="localhost:50051")
result = await executor.execute(my_workflow, {"name": "Carlos"})
```

## Examples

See `examples/` directory for complete tutorials.

## License

MIT — see [Cerebelum Engine](https://github.com/ZeaCl/cerebelum) for details.
