AI Control Plane · Governance + Savings

Guard your agents.
Cut your LLM bill in half.

SemanticGuard is the only AI control plane that pays for itself. Audit every tool call, enforce policy on the destructive ones, and cache the responses. Median 50% savings and 100% cache correctness on our public benchmark.

Governance-only tools cost you a line item. SemanticGuard funds itself with the LLM spend it eliminates. One line of code. OpenAI, Anthropic, Google, Azure, Bedrock, Mistral.

50% median savings100% cache correctnessPolicy-adjudicated tool callsFull audit trail
import { createOpenAI } from "@ai-sdk/openai";
import { withSemanticGuard } from "@semanticguard/ai-sdk";
const openai = createOpenAI({
apiKey: "sk-...",
fetch: withSemanticGuard({
apiKey: "sg-your-key-here",
}),
});
// All calls now cached + tracked automatically. Tool calls
// in the response also feed the /dashboard/agents audit.
const result = await generateText({
model: openai("gpt-4o"),
prompt: "Summarize this document...",
});

Half one · Agent Governance

Stop your agents from YOLO-executing.

Every tool call your agents make gets audited, classified by risk, and adjudicated against your policy. One env var routes Claude Code (and any Anthropic-SDK client) through us. Enterprise governance tools charge $50K/year for less.

1

Audit every tool call

Every tool your LLM emits shows up in the Agent Activity feed with tool name, args, model, and full session attribution (user, run, workspace). Zero code changes if you already proxy through us.

2

Risk-classified in real time

Deterministic classifier grades every call as read, write, or destructive. Catches escalation cases: a benign run_shell wrapping rm -rf, a create_pr targeting main, a shell exec running terraform apply.

3

Policy engine, per tenant

Allow, deny, or require approval on tool calls by pattern, risk tier, workspace, or user. Sensible defaults ship on day one (deny destructive-in-prod, approve deploys, block PRs to main). Every rule edit shows up in the audit path within seconds.

CC

One env var to audit, one hook to block

Set ANTHROPIC_BASE_URL to route Claude Code (and any Anthropic-SDK client) through us — cost, audit, and PII redaction in one env var, no code. Want to actually block destructive calls, not just record them? Add the optional guardrails hook (one npx install) for hard client-side enforcement at PreToolUse time.

HDR

Attribution built in

Send x-sg-user-id, x-sg-agent-run-id, and x-sg-workspace-tag headers to tie every action to a human and an agent session. Answers the SOC 2 question: which user, which agent, which tool, when.

soon

On the roadmap

Human-in-loop approval inbox (Slack + email), blast-radius preview before destructive calls, and an MCP-layer proxy for non-Claude-Code agents. Ship order tracked on GitHub.

Half two · Cost savings · The moat

Cut your LLM bill in half. Same gateway.

Self-validating intelligent caching with multi-layer verification and continuous AI-judged sampling. 50% median savings and 100% cache correctness on our public benchmark. This is the half no other governance tool offers.

Start with Shadow Mode to measure exactly what you would save on your real traffic. Enable caching when you are ready.

semanticguard.dev/dashboard/cost
Shadow Mode
Illustrative

Spend

$12.9K

Would Save

$8.7K

Shadow Hits

142K

Where your requests went

Total Requests
100%
Direct Match
34%
Smart Match
11%
Verified Match
15%
Cache Miss
33%

You would save by end of month

$12.8K

Enable caching to start saving. Zero risk, instant rollback.

semanticguard.dev/dashboard/cost
Caching Enabled
Illustrative

Cost

$4.2K

Saved

$8.7K

Hit Rate

67%

Cost vs Savings Over Time

$600$400$200$0May 1May 8May 15May 22May 31
Savings
Cost

Correctness

100%

Validated

847

Projected Monthly Savings

$12.8K

at $427/day from cache hits

67% saved vs without SG

How It Works

1

Add one line of code

Add fetch: withSemanticGuard() to your AI SDK config. Works with any provider.

2

Measure with Shadow Mode

See cost per request, per model, and exactly how much caching would save you. No cached responses served until you're ready.

3

Save with confidence

Enable caching. Cache hits return in under 50ms. Multi-layer verification on every hit; sampled hits also AI-judged for correctness with failures flagged.

Built for Vercel

Self-host on Vercel, in your tenant

Install the SemanticGuard Vercel integration and we deploy the proxy into your own Vercel account, connected to your own Neon and Upstash. Prompts, responses, and cache all live in your tenant. Same SDK, same one-line code change.

Encrypted in transit and at rest
Prompts stored only if you opt in
One-line SDK integration
Self-hosted in your Vercel tenant

Built for production

The only LLM cache that proves its own correctness.

Self-validating cache

Multi-layer verification on every hit; sampled cache hits also judged by your own AI for correctness with failures flagged. 100% measured on our public benchmark.

Continuous learning

Your cheapest model learns what varies in your prompts. Names, IDs, dates, and more. Anything regex misses, your AI catches.

Fail-open design

If cache is down, requests go straight to your provider. Zero downtime risk.

Your keys, your data

Upstream API keys pass through at request time, never stored. Prompts logged only if you opt in. Full security posture.

Already using built-in prompt caching?

Stack on top. Catch everything they miss.

Provider prompt caching helps when the same exact prefix shows up again within minutes. That covers a small slice of real production traffic. SemanticGuard catches the rest.

Match type

Provider built-in

Byte-identical prefix only

SemanticGuard

Same meaning, even with different names, dates, or IDs

Across providers

Provider built-in

Locked to one vendor's cache

SemanticGuard

One cache across OpenAI, Anthropic, Google, Azure, Bedrock, Mistral

Across users in your org

Provider built-in

Each session on its own

SemanticGuard

One person's question can serve another

How long it lasts

Provider built-in

Minutes, then gone

SemanticGuard

As long as the answer stays fresh. Seconds for live data, hours for daily content, days for static reference

Setup

Provider built-in

Mark breakpoints or manage cache objects

SemanticGuard

One line of code. No prompt changes

What you save

Provider built-in

Discount on input tokens only

SemanticGuard

Full request eliminated. Input and output both

Use provider caching for your static system prompts. Use SemanticGuard for everything else, especially any product where multiple users ask overlapping questions.

Built for the AI-native stack

Your AI agents already know how to use us

SemanticGuard speaks the protocols AI agents and dev tools use natively. No adapters, no glue code, no manual setup.

API

OpenAI-compatible endpoint

Same wire format as OpenAI. Any tool or agent that calls OpenAI works with SemanticGuard by changing one URL. Zero code migration.

MCP

Model Context Protocol

Built-in MCP server lets Claude, Cursor, and other AI tools query costs, cache performance, and request traces directly from your IDE.

SDK

One-line integration

TypeScript and Python SDKs with fail-open by default. If the gateway is unreachable, requests go directly to your provider. Zero downtime risk.

Machine-readable responses

Every response includes headers for cache status, latency, cost, and confidence score. Agents inspect caching behavior without parsing the body.

/v1

Health and metrics

Health check and Prometheus metrics endpoints out of the box. Plug into Grafana, Datadog, or any monitoring your agents already use.

6+

Multi-provider, one gateway

OpenAI, Anthropic, Google, Azure, AWS Bedrock, Mistral. Route all providers through one gateway. One API key, one dashboard, one cache.

Pricing

Start free with Shadow Mode. See your savings before you commit.

Free

$0

10K requests/mo

  • Shadow Mode shows potential savings
  • Identical-match cache
  • Cost analytics dashboard
  • Request tracing and logging
Get started
Popular

Pro

$49/mo

50K included, then $0.50/1K

  • Full multi-layer caching
  • Advanced pattern matching
  • Advanced analytics + projections
  • Up to 500K requests/mo
Start free, upgrade later

Enterprise

15%

of documented savings

  • $500/mo minimum commitment
  • Unlimited requests
  • We win when you save
  • AWS/GCP marketplace billing

Billed monthly on the dollars cached, with a full audit log on every invoice. If the cache doesn't deliver, you pay only the $500 floor.

Talk to sales

FAQ

Both halves of the product. On the governance side: unlimited agent action audit, the full policy engine, the Claude Code guardrails hook, and identity attribution. On the cost side: 10,000 requests per month through the caching proxy, the full cost analytics dashboard, exact-match caching, request tracing, and Shadow Mode for measuring potential savings on your real traffic before turning caching on. No credit card required.
For Claude Code (and any Anthropic-SDK client such as Cursor, Zed, or raw @anthropic-ai/sdk), the install is one env var: export ANTHROPIC_BASE_URL="https://semanticguard.dev/api/proxy/anthropic/sg-YOUR-KEY". That routes all LLM traffic through us and gives you cost tracking, semantic caching, PII redaction, and tool-call audit. User attribution is baked into the SG key (owner + tenant). Want to differentiate environments (prod vs staging) or customers? Create a separate SG key per workspace in the dashboard and use different aliases in your shell. For HARD client-side blocking of destructive tool calls on top of the audit, install the guardrails hook: npx --package=@semanticguard/ai-sdk sg-guardrails-install. The hook works even if you don't route LLM traffic through us.
No. The Claude Code hook works standalone; it calls our ingest endpoint before every tool runs and blocks based on your policies. If you also proxy LLM traffic through us, you get server-side audit for tool calls the LLM emits in its response, on top of the client-side hook. Both feed the same audit table.
SemanticGuard uses multiple caching strategies that go far beyond simple key-value matching. It understands prompt structure, detects reusable patterns across requests, and verifies every cache match before serving. Median 50% savings across our public benchmark, with 100% measured cache correctness. See /benchmark for the per-vertical breakdown. Your actual savings depend on workload mix; RAG with many distinct documents will save less than customer support with overlapping intents.
Provider caching only fires when the same exact prompt prefix shows up again within minutes, on the same provider. SemanticGuard catches the rest. Same question worded differently, same intent with different names or IDs, same user returning the next day, or a different user in your org asking the same thing. Use both together. Provider caching handles your static system prompts, SemanticGuard handles everything else.
Validation runs in two layers. (1) Every cache match goes through multi-layer verification before serving to reject obvious mismatches. (2) A configurable sample of served hits (~0.5% by default, up to 5%) is judged by your cheapest model after the fact; failures are flagged to admins so you can see if anything snuck through. Plus, your AI learns what varies in your prompts (names, IDs, dates) so the cache never confuses one person's data with another's. Our public benchmark shows 100% correctness on wording-tolerant cache returns. See /benchmark for the methodology.
Your upstream API keys are passed through to the provider at request time and never stored in plaintext. We store only a one-way hash for identification. Your data stays with your chosen vendor.
Start with Shadow Mode (free tier default). It logs every request and shows what you would save if caching were enabled. No cached responses are served until you explicitly turn on caching.
One line of code. Add fetch: withSemanticGuard() to your AI SDK provider config. No API format changes, no vendor lock-in. Works with any provider that accepts a custom fetch function.
Yes. SemanticGuard exposes an OpenAI-compatible API, so any agent framework that accepts a custom base URL works by changing one URL. It also includes a built-in MCP server for Claude, Cursor, and other AI tools to query cost and cache analytics directly.

Guard your agents. Cut your LLM bill in half.

The only AI control plane that pays for itself. Governance-only tools charge you a line item. SemanticGuard funds itself with the LLM spend it eliminates. Free tier includes 10K requests per month, the Claude Code guardrails hook, the full audit + policy engine, and Shadow Mode to preview your savings.

SemanticGuard - Self-validating semantic cache for LLM APIs. One line of code. | Product HuntFeatured on There's an AI for ThatFeatured on Shipit