Metadata-Version: 2.5
Name: bevor-sdk
Version: 0.1.1
Summary: Typed wrappers for the Bevor REST API
Classifier: Development Status :: 3 - Alpha
Requires-Python: >=3.13
Requires-Dist: httpx<1,>=0.28
Requires-Dist: pydantic<3,>=2.12
Requires-Dist: xxhash<5,>=4.0
Description-Content-Type: text/markdown

# bevor-sdk

Python SDK for the [Bevor](https://bevor.io) API: smart contract security analysis for Solidity.

> **Research preview.** The API and this SDK may change between minor versions until 1.0.

## Install

```bash
uv add bevor-sdk
# or
pip install bevor-sdk
```

Requires Python 3.13+.

## Quickstart

Create an API key in the Bevor dashboard, then:

```python
import asyncio

from bevor_sdk import AsyncBevorClient


async def main() -> None:
    async with AsyncBevorClient(api_key="bvr_...") as client:
        code = await client.codes.create_paste({"content": open("Vault.sol").read()})

        created = await client.analyses.create_root({"code_id": code.id})
        analysis = created.analysis

        run_result = await client.analyses.run(analysis.id, with_streaming=True)

        async for event in run_result.stream_completion(client):
            print(event)

        findings = await client.analyses.list_findings(analysis.id)
        for finding in findings.results:
            print(finding.level, finding.name)


asyncio.run(main())
```

A synchronous client with the same interface is available as `BevorClient`.

## Documentation

Full API reference and guides: https://bevor.io/docs

## License

MIT
