Metadata-Version: 2.4
Name: stackless-sdk
Version: 0.3.0
Summary: CLI-backed Python SDK for stackless lifecycle verbs
Project-URL: Homepage, https://github.com/snowmead/stackless
Project-URL: Repository, https://github.com/snowmead/stackless
Project-URL: Issues, https://github.com/snowmead/stackless/issues
Project-URL: Documentation, https://github.com/snowmead/stackless/tree/main/sdks/python
Author: stackless contributors
License-Expression: MIT OR Apache-2.0
Keywords: cli,ephemeral,infrastructure,stackless,testing
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: Testing
Requires-Python: >=3.10
Provides-Extra: dev
Requires-Dist: pytest>=7.0; extra == 'dev'
Description-Content-Type: text/markdown

# stackless-sdk (Python)

Python SDK for [`stackless`](https://github.com/snowmead/stackless). Published as
[`stackless-sdk`](https://pypi.org/project/stackless-sdk/) on PyPI
(`import stackless`). Speaks the JSON protocol
([`../PROTOCOL.md`](../PROTOCOL.md)) via the `stackless` CLI.

The PyPI distribution is **`stackless-sdk`**; the import package remains
`stackless`.

## Install

```bash
pip install stackless-sdk
```

Editable (from this repo):

```bash
pip install -e "sdks/python[dev]"
```

## Usage

```python
from stackless import Client, Create, Resume

client = Client.system()
out = client.up(Create(on="local", file="stackless.toml", name="demo"))
print(out.origins["web"])
print(out.integrations.get("clerk", {}))
client.down("demo")
```

Binary resolution: `STACKLESS_BIN`, then `stackless` on `PATH`.

## Secrets

Successful `up --json` stdout may include integration credentials. Do not log raw
JSON in CI without redaction.

## Tests

```bash
cd sdks/python && python -m pytest
```
