Metadata-Version: 2.4
Name: yebo-sdk
Version: 1.0.0
Summary: Yebo Python SDK - Authorization infrastructure for AI agents
Author-email: Francis Banda <hello@yebo.dev>
License: MIT
Project-URL: Homepage, https://yebo.dev
Project-URL: Documentation, https://yebo.dev/docs
Project-URL: Repository, https://github.com/Unclefole/yebo
Keywords: yebo,authorization,ai-agents,mcp,execution-control,payments
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT 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
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Security
Classifier: Topic :: Software Development :: Libraries
Requires-Python: >=3.8
Description-Content-Type: text/markdown

# Yebo Python SDK

Authorization infrastructure for AI agents. Every action is verified before execution.

## Install

```bash
pip install yebo-sdk
```

## Quick Start

```python
from yebo import Yebo

yebo = Yebo(api_key="yk_live_...", gateway="https://gateway.yebo.dev")

# Check if an action is allowed
decision = yebo.preflight(
    capability="payment",
    amount=5000,
    counterparty="acme-vendor",
    subject_identity="user-123",
)
print(decision["decision"])  # ALLOW | REQUIRE_APPROVAL | DENY

# Submit for authorization
mandate = yebo.authorize(
    capability="payment",
    amount=5000,
    counterparty="acme-vendor",
    subject_identity="user-123",
)
print(mandate["mandate_id"])  # mnd_...

# Verify authorization
result = yebo.verify(mandate_id=mandate["mandate_id"])
print(result["valid"])  # True

# Get receipt
receipt = yebo.receipt(mandate_id=mandate["mandate_id"])
```

## Local Policy Evaluation (No Gateway)

```python
from yebo import Yebo

yebo = Yebo(api_key="test")

# Evaluate locally against threshold rules
result = yebo.protect(
    action_type="payment",
    amount=200,
    vendor="Acme Corp",
)
print(result["decision"])  # ALLOW
print(result["reason"])    # Amount $200.00 is below the auto-approve threshold of $500.00
```

## Links

- [Website](https://yebo.dev)
- [Documentation](https://yebo.dev/docs)
- [Developer Portal](https://yebo.dev/developer)
- [Sandbox](https://yebo.dev/sandbox)
