> ## Documentation Index
> Fetch the complete documentation index at: https://secndai.manicule.dev/llms.txt
> Use this file to discover all available pages before exploring further.
> For every page in one file, fetch https://secndai.manicule.dev/llms-full.txt (large).
> To search and read these docs as tools, connect the MCP server at https://secndai.manicule.dev/api/mcp.
> Every agent surface: https://secndai.manicule.dev/.well-known/llms-manifest.json

# SDKs (/sdk)

<!-- agent-signals: reading_time_min: 1 · est_tokens: 248 · updated: 2026-11-12 -->
Related: [Cookbooks](/cookbooks.md), [Patterns](/patterns.md), [Question types](/primitives.md)

> Use a thin typed client or call the HTTP API directly.

The Python SDK imports as `secnd`; the TypeScript package is `@secnd/sdk`. Both send the same request object to `/v1/decide`, expose typed errors, and retry `429` and server errors with bounded backoff.

These are local workspace packages. Registry publication is not assumed. The Python distribution is currently named `secnd-sdk`; its import name remains `secnd`.

Build the TypeScript workspace from the repository root before installing its local package:

```bash
npm run build --workspace @secnd/sdk
npm install ./packages/sdk-ts
```

Install Python from the repository root into your project's environment:

```bash
uv pip install ./packages/sdk-python
```

Use the language-specific pages for constructor options, asynchronous calls, and error handling. Model weights are not part of either package.

See [Python](/sdk/python) for sync and async clients, or [TypeScript](/sdk/typescript) for cancellation and typed requests.
