Metadata-Version: 2.4
Name: boxrun-sdk
Version: 0.3.0
Summary: Python SDK for BoxRun — lightweight VM execution platform
Project-URL: Homepage, https://github.com/boxlite-ai/boxrun
Project-URL: Documentation, https://github.com/boxlite-ai/boxrun/blob/main/docs/sdk.md
Project-URL: Repository, https://github.com/boxlite-ai/boxrun
Project-URL: Issues, https://github.com/boxlite-ai/boxrun/issues
Author-email: BoxLite <hello@boxlite.ai>
License: Apache-2.0
Keywords: ai-agent,boxrun,microvm,sandbox,vm
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software 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: Typing :: Typed
Requires-Python: >=3.10
Requires-Dist: httpx-sse>=0.4
Requires-Dist: httpx>=0.27
Description-Content-Type: text/markdown

# boxrun-sdk

Python SDK for [BoxRun](https://github.com/boxlite-ai/boxrun) — ultra-lightweight sandbox platform for developers and AI agents.

## Install

```bash
pip install boxrun-sdk
```

## Quick Start

```python
import asyncio
from boxrun_sdk import BoxRunClient

async def main():
    async with BoxRunClient() as client:
        box = await client.create("ubuntu:24.04", name="dev")

        result = await box.exec(["echo", "hello"])
        print(f"Exit code: {result.exit_code}")

        async for event in box.exec_stream(["apt-get", "update"]):
            if event.type == "log":
                print(event.data, end="")

        await box.remove()

asyncio.run(main())
```

## Documentation

- [SDK Reference](https://github.com/boxlite-ai/boxrun/blob/main/docs/sdk.md)
- [Examples](https://github.com/boxlite-ai/boxrun/tree/main/examples)
- [REST API](https://github.com/boxlite-ai/boxrun/blob/main/docs/api.md)

## License

Apache-2.0
