Metadata-Version: 2.4
Name: caracal-sdk
Version: 0.1.0
Summary: Standalone Python SDK for Caracal authority enforcement
Author: Caracal Contributors
License-Expression: Apache-2.0
Project-URL: Homepage, https://github.com/Garudex-Labs/caracal
Project-URL: Documentation, https://github.com/Garudex-Labs/caracal/tree/main/sdk/python-sdk
Project-URL: Repository, https://github.com/Garudex-Labs/caracal
Project-URL: Issues, https://github.com/Garudex-Labs/caracal/issues
Keywords: caracal,authority,delegated-actions,security,sdk
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Security
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: httpx>=0.25.0

# Caracal Python SDK

This directory contains the canonical Python SDK implementation.

## Installation

```bash
pip install caracal-sdk
```

Optional extras:

```bash
# Async helpers
pip install "caracal-sdk[async]"

# Integration with caracal-core runtime
pip install "caracal-sdk[core]"
```

## Layout

- `src/caracal_sdk/`: Open-source SDK surface and transport adapters
- `src/caracal_sdk/enterprise/`: Enterprise-only extension points

## Goals

- Keep SDK surface area minimal and explicit
- Preserve parity with the Node SDK in `sdk/node-sdk/`
- Support CLI/TUI integrations with stable core abstractions
- Ship as a standalone package independent of core internals

## Runtime Endpoint

By default, the SDK targets `http://localhost:${CARACAL_API_PORT:-8000}`.

To target a different containerized runtime endpoint (broker or enterprise),
set:

```bash
export CARACAL_API_PORT=8000
export CARACAL_API_URL=http://localhost:8000
```

or pass `base_url` directly when constructing `CaracalClient`.
