Description
Extend `scripts/generate-client.sh` to support generating typed Python API clients from the OpenAPI spec. Currently only TypeScript clients are generated (for Aurelius frontends).
Why
Many Nerva API consumers will be Python services (data pipelines, ML backends, internal tools). A typed Python client with Pydantic models and type hints provides the same developer experience that TypeScript consumers get — type safety, autocompletion, and validation.
Acceptance Criteria
Example
```python
from nerva_client import NervaClient
client = NervaClient(base_url="http://localhost:3000", token="...")
users = await client.users.list(limit=20) # typed response
```
Description
Extend `scripts/generate-client.sh` to support generating typed Python API clients from the OpenAPI spec. Currently only TypeScript clients are generated (for Aurelius frontends).
Why
Many Nerva API consumers will be Python services (data pipelines, ML backends, internal tools). A typed Python client with Pydantic models and type hints provides the same developer experience that TypeScript consumers get — type safety, autocompletion, and validation.
Acceptance Criteria
Example
```python
from nerva_client import NervaClient
client = NervaClient(base_url="http://localhost:3000", token="...")
users = await client.users.list(limit=20) # typed response
```