Metadata-Version: 2.4
Name: wayleave
Version: 0.1.0
Summary: Identify AI agents from Python. Client and WSGI/ASGI middleware for the hosted Wayleave Identity API. Zero dependencies.
License: MIT
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

# wayleave (Python)

Identify AI agents from Python. Zero dependencies. Fails open.

```python
from wayleave import Client
c = Client(os.environ["WAYLEAVE_API_KEY"])
r = c.identify("https://api.you.com/data", request_headers, ip=client_ip)
r.lane, r.verified, r.operator      # 'verified_agent', True, 'Example Labs'
```

Flask / Django (WSGI): `app.wsgi_app = WayleaveWSGI(app.wsgi_app, c, block=("suspected_bot",))`
FastAPI / Starlette (ASGI): `app.add_middleware(WayleaveASGI, client=c)` → `request.state.wayleave`

Observe by default. People are never blocked. If Wayleave is unreachable,
lane is "unknown" and your app keeps serving. Tests: `python -m unittest` (needs Node for the harness).
