Corveil sits between your users and AI providers, giving you complete control over every request — with virtual API keys, spend tracking, guardrails, and full audit logging.
Book a Demo →Built For
Capabilities
A unified gateway that handles authentication, cost management, security, and observability.
Issue scoped keys to users and teams. Real provider credentials stay locked in your infrastructure — never exposed.
Real-time cost tracking per user, team, and API key. Set hard budget limits and get alerts before overruns.
Full request/response capture with structured metadata. Built for compliance audits and incident investigation.
Pre- and post-call filtering pipeline. PII detection, jailbreak prevention, and content moderation — inline, not bolted on.
Access 200+ models through OpenRouter, Vertex AI, and Bedrock. One endpoint, zero provider lock-in.
Drop-in replacement for any OpenAI SDK client. Streaming, function calling, and tool use — all supported.
How It Works
Deploy Corveil in front of your AI providers and gain immediate visibility and control.
Point your AI clients at Corveil's OpenAI-compatible endpoint. Add your provider credentials once.
Issue virtual API keys, set budgets, and configure guardrails. Define who can access which models.
Track spend in real time, review audit logs, and get alerts. Full visibility into every AI interaction.
Get Started
Choose the deployment method that fits your infrastructure.
helm upgrade --install corveil oci://ghcr.io/radiusmethod/corveil-helm/corveil-chart \
--set corveil.environment=development \
--set corveil.devLoginEnabled=true \
--set providers.openrouter.apiKey="sk-or-xxx"
Requires Helm 3.x and a running Kubernetes cluster.
git clone https://github.com/radiusmethod/corveil.git cd corveil docker compose up -d
Starts Corveil, PostgreSQL, and Redis with sensible defaults.
curl -sSL https://get.radiusmethod.com/corveil | sh corveil serve --port 8080
Single binary for Linux and macOS. No containers required.
Try It Out
Connect your favorite AI tool to Corveil in minutes.
# macOS brew install aichat # Linux / Windows cargo install aichat
Open your aichat config file. Run aichat --info to find its location, then add a Corveil client:
clients: - type: openai-compatible name: corveil api_base: https://your-corveil-host/v1 # must include /v1 api_key: sk-corveil-your-key-here models: - name: or-claude-haiku-4.5 - name: or-gpt-5.1
Replace your-corveil-host with your Corveil URL and sk-corveil-your-key-here with your virtual API key. List any models your key has access to — check GET /v1/models for the full list.
# One-shot query aichat -m corveil:or-claude-haiku-4.5 "Explain zero-trust architecture" # Interactive session aichat -m corveil:or-claude-haiku-4.5
Every request flows through Corveil — authenticated, logged, and governed by your guardrails and budget policies.
Corveil supports two authentication modes. Choose the one that fits your setup:
Your ANTHROPIC_API_KEY is a Corveil virtual key. Corveil authenticates the request and forwards it upstream using its own provider credentials.
export ANTHROPIC_BASE_URL="https://your-corveil-host" export ANTHROPIC_API_KEY="sk-corveil-your-key-here"
Or configure via settings.json (project .claude/settings.json or global ~/.claude/settings.json):
{
"env": {
"ANTHROPIC_BASE_URL": "https://your-corveil-host",
"ANTHROPIC_API_KEY": "sk-corveil-your-key-here"
}
}
Your own Anthropic API key or OAuth token is sent directly to Anthropic. A separate x-corveil-api-key header authenticates with Corveil for tracking and guardrails.
export ANTHROPIC_BASE_URL="https://your-corveil-host" export ANTHROPIC_CUSTOM_HEADERS="x-corveil-api-key: sk-corveil-your-key-here"
Or configure via settings.json:
{
"env": {
"ANTHROPIC_BASE_URL": "https://your-corveil-host",
"ANTHROPIC_CUSTOM_HEADERS": "x-corveil-api-key: sk-corveil-your-key-here"
}
}
These can be set in Claude Code's settings file at the project level (.claude/settings.json) or globally (~/.claude/settings.json). See the Claude Code settings documentation for details.
Replace your-corveil-host with your Corveil URL and sk-corveil-your-key-here with your virtual API key. If using env vars, reload your shell or run source ~/.zshrc.
Start Claude Code as usual — it will automatically route all requests through Corveil:
claude
Ask Claude Code a simple question. If it responds, requests are flowing through Corveil. You can confirm by checking the Corveil dashboard or logs for the incoming request.
# Check Corveil logs for the request corveil logs --tail 5
Claude Code natively supports the ANTHROPIC_BASE_URL environment variable. When set, all API requests are sent to that URL instead of the default api.anthropic.com:
Tell OpenClaw to route Anthropic requests through Corveil by setting a custom baseUrl and adding your Corveil API key as a header. This uses OpenClaw's passthrough mode — your existing Anthropic credentials are forwarded upstream automatically.
openclaw config set models.providers.anthropic '{
"baseUrl": "https://your-corveil-host",
"api": "anthropic-messages",
"headers": {
"x-corveil-api-key": "sk-corveil-your-key-here"
},
"models": [
{
"id": "claude-sonnet-4-6",
"name": "Claude Sonnet 4.6",
"reasoning": true,
"input": ["text", "image"],
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
"contextWindow": 200000,
"maxTokens": 16384
}
]
}'
Replace your-corveil-host with your Corveil URL and sk-corveil-your-key-here with the virtual API key you created. Add additional models to the models array as needed. Setting costs to 0 is recommended since Corveil tracks spend on its side.
The configuration change requires a gateway restart to take effect:
# If using the Mac app, restart from the menu bar # Otherwise: openclaw gateway restart
Check that the provider is configured and reachable:
# Check provider status openclaw channels status --probe # Send a test message openclaw message send "Hello from OpenClaw via Corveil"
If the message goes through, every request is now flowing through Corveil with spend tracking, logging, and guardrails active.
OpenClaw's passthrough mode lets Corveil sit transparently between OpenClaw and the upstream AI provider:
Marketplace
A growing ecosystem of guardrails, connectors, and workflow automations.
PII redaction, jailbreak detection, content moderation, and more — plug in the safety layers you need.
6 Built-inOpenRouter, Vertex AI, Bedrock, and Azure OpenAI. Connect to any provider through a unified interface.
4 AvailablePre-built automations for cost alerting, webhook notifications, and approval gates.
3 TemplatesCost dashboards, usage heatmaps, and model comparison tools for data-driven decisions.
Coming SoonIntegrations
SDKs, infrastructure tools, and security platforms — all supported out of the box.