Framework Integrations
TapPass works with any framework that uses the OpenAI or Anthropic SDK. Set the base URL and every call routes through governance.
Zero-code (environment variables)
Section titled “Zero-code (environment variables)”# OpenAI-compatible tools (Copilot, Cursor, CrewAI, LangChain, LlamaIndex)export OPENAI_BASE_URL=https://tappass.example.com/v1export OPENAI_API_KEY=tp_...
# Anthropic tools (Claude Code, Cline)export ANTHROPIC_BASE_URL=https://tappass.example.comexport ANTHROPIC_API_KEY=tp_...Your existing tools work unchanged. Every call routes through governance.
Supported frameworks
Section titled “Supported frameworks”| Framework | Integration |
|---|---|
| OpenAI SDK | OpenAI(base_url="https://tappass.example.com/v1", api_key="tp_...") |
| LangChain | ChatOpenAI(base_url=agent.gateway_url, api_key=agent.api_key) |
| CrewAI | agent.configure_environment() sets env vars for CrewAI |
| LlamaIndex | OpenAI(api_base=agent.gateway_url, api_key=agent.api_key) |
| Pydantic AI | OpenAIModel(base_url=agent.gateway_url, api_key=agent.api_key) |
| Anthropic / Claude | ANTHROPIC_BASE_URL=https://tappass.example.com |
| FastAPI | Inject Agent as a dependency |
| Any HTTP client | POST /v1/chat/completions with Bearer token |
| VS Code / Cursor | Set base URL in extension settings |
See the tappass-examples repo for working code for each framework.
Python SDK
Section titled “Python SDK”from tappass import Agent
agent = Agent("https://tappass.example.com", "tp_...")
# Governed chatresponse = agent.chat("What are the GDPR requirements?")print(response.content)
# Streamingfor chunk in agent.stream("Write a compliance report"): print(chunk, end="", flush=True)
# Govern existing tools (CrewAI, LangChain, LlamaIndex)tools = agent.govern([search, send_email])