Skip to main content
Most teams should use a provider wrapper. It keeps your native provider SDK and adds Averta checkpoints around supported calls.

Integration Paths

If your agent usesStart herePackage
OpenAI JavaScript SDKOpenAI quickstart@averta-security/sdk-openai
OpenAI Python SDKOpenAI quickstartaverta-openai source beta
Anthropic JavaScript SDKAnthropic quickstart@averta-security/sdk-anthropic
Another provider or a custom runtimeCustom integrationsRaw API, @averta-security/sdk-core, or averta-core source beta

Use OpenAI When

  • your agent already uses the OpenAI JavaScript or Python SDK
  • you want guarded responses.create(...) calls
  • you use Chat Completions and want the same wrapper model
  • you need streaming support with the current OpenAI wrapper limits

Use Anthropic When

  • your agent already uses @anthropic-ai/sdk
  • you use messages.create(...)
  • you need tool exposure, tool-call, tool-result, and output checks around Messages
There is no Anthropic Python wrapper in the current SDK packages.

Use Custom Only When

  • your provider does not have a first-class Averta wrapper
  • you need to normalize provider payloads yourself
  • you are building a reusable adapter for your platform
  • your runtime language cannot use the JavaScript or Python packages
If the wrapper supports your provider path, use it. Rebuilding the lifecycle manually when a wrapper exists is extra code with more places to get policy enforcement wrong.

Next Steps

OpenAI

Protect OpenAI JavaScript or Python agent calls.

Anthropic

Protect Anthropic Messages calls with wrapAnthropic(...).

Checkpoints

Understand the shared lifecycle.

Custom integrations

Build a custom adapter or call the raw API.

Raw API

Integrate Averta from any programming language.