Framework Adapters
Adapters turn your provider’s response or your framework’s run into an Attest trace. Use a provider adapter for one model call, a framework adapter for a full run, or the manual builder when you control the instrumentation.
| Adapter | Python | TypeScript |
|---|---|---|
| OpenAI | stable | stable |
| Anthropic | stable | stable |
| Manual | stable | stable |
| Gemini | beta | beta |
| Ollama | beta | beta |
| LangChain | beta | beta |
| CrewAI | beta | Not available |
| OpenTelemetry | beta | beta |
| Google ADK | experimental | Not available |
| LlamaIndex | experimental | Not available |
- beta: Shipped and tested, but the interface or behavior can still change in a minor release.
- experimental: Shipped without a stability commitment and without demonstrated demand; it can change or be removed in any release.
- stable: Covered by the parity and conformance suites; a change in behavior is a breaking change.
From attest-engine capabilities --json at engine 1.1.1.
For Python, install the extra for the integration you use:
uv add "attest-ai[openai]>=1.1.0" pytestThe SDK adapter guide has the complete examples and capture limits for each integration. It covers provider responses, LangChain callbacks, CrewAI, Google ADK, LlamaIndex and OpenTelemetry. A trace records the evidence available from the integration; it does not prove that every tool call or side effect was captured.
Start with the Python setup or TypeScript setup for an evaluated test. OpenAI, Anthropic and manual adapters are stable; other adapters have beta or experimental status as shown above.