AI agent guardrails

Generative AI Agent Guardrails

SigmaShake (ssg) checks every AI agent tool call against your rules before it runs — so risky actions can be blocked or rewritten in milliseconds, without a sandbox.

Live demo

See it in action

Works with the agents your team already uses

Claude CodePreToolUse hook integration
CursorMCP Server Integration
CodexMCP Server Integration
VSCode CopilotMCP Server Integration
Gemini CLIMCP Server Integration
AntigravityMCP Server Integration
Pi Coding AgentMCP Server Integration
New to AI

Put the brakes on before you hit the gas.

AI agents run shell commands, edit files, and call external APIs. That means they can cause real damage before you realise what happened. SSG is the seatbelt you put on first.

An AI agent wiped a developer's entire project folder while "cleaning up temporary files." It matched a pattern it shouldn't have. There was no undo.

An AI assistant ran up a $400 cloud bill overnight by repeatedly calling a paid API while trying to "retry on error." Nobody noticed until the invoice arrived.

An AI sent emails to a customer list without being asked to. It was completing a task "helpfully." The replies came in fast.

Watch a live block · terminal replay

AI Agent Guardrails: Live, Audited, Under 2ms

See SigmaShake in action

Deterministic guardrails intercept data loss, secret leaks, and privilege escalation from any AI coding agent. Watch a live block, then dig into the rule, the audit log, and the benchmarks.

1: INSTALL

One line, every platform.

curlcurl -fsSL install.sigmashake.com | sh

30 seconds. Zero config. One install command, self-contained binary. Prefer the install chooser (shows the ToS warning). The one-liner without -y prompts for consent; add -y only after you accept the Terms of Service.

2: DEPLOY

Covers every agent your team uses.

Claude Code
Cursor
Codex
VSCode Copilot
Gemini CLI
Antigravity
Pi Coding Agent

Policy applies uniformly across Claude Code, Cursor, Codex, Gemini CLI, Copilot, and more.

3: PROTECT

Every decision is deterministic.

  • $rm -rf /DENY
  • $sudo apt-get updateASK
  • $curl https://api.example.com/dataFORCE

DENY blocks. ASK prompts. FORCE refuses the original risky action and returns a safe substitute or required safer path, all in under 2ms.

Watch a live block

Pick a scenario. The terminal replays an AI agent trying it; SSG intercepts before the command runs.

Browse 230+ public rulesets on hub.sigmashake.com →
force-safe-tools: Force Safe Tools
force-safe-tools: Force Safe ToolsScroll to play
For engineerssee the rule DSL, live dashboard, benchmarks & onboarding
Quick Onboarding: ssg CLI
Quick Onboarding: ssg CLIScroll to play
rule prefer-graphify-over-recursive-search {
  enabled true
  priority 80
  severity high
  FORCE execution
  IF command CONTAINS "grep -r"
  SUBSTITUTE "graphify query \"<what you were searching for>\""
  MESSAGE "Recursive shell search is FORCED to the graphify knowledge graph for code/architecture/relationship queries (faster, scoped). Escape hatch for literal/regex/log/config/secret searches: use ripgrep (rg) or a non-recursive search."
}
priority / severity

Determines conflict precedence and the active audit log volume.

ALLOW / DENY / ASK / FORCE

The raw execution action dynamically enforced upon matching.

IF command ...

The AST condition intercepting the raw agent process payload.

Eval Latency & Scaling Benchmarkrefreshed Jun 2026
Under 2 ms end-to-end daemon eval (measured p50 0.39 ms · ssg 0.29.156, n=500) · ~246× faster than CLI · flat at capacity
AMD Threadripper 3990X · 128 threads
64 GB DDR4 · ~43 MB RSS per eval
Bun 1.3.11 · Linux x64
▶
CLI ModePer-eval process spawn
95.8msmedian latency (p50)
p50
95.8ms
p95
139.3ms
p99
166.5ms
Process RSS~43 MB
Startup overhead~73 ms (Bun spawn)
Decisions120 allow60 block20 log
⚡
Daemon ModePersistent Unix socket
<2msend-to-end daemon · measured p50 0.39 ms · ssg 0.29.156, n=500
~246×faster than CLI
p50
0.39ms
p95
0.76ms
p99
1.42ms
Iterations1,000
Rules in memoryPre-loaded, no file I/O
ProtocolUnix socket (no TCP)

Scaling: Latency vs Rule Count

1,000 iterations + 50 warmup per tier · Unix socket RTT included · daemon p50 sub-ms at every tier · p99 stays under 2 ms (variance ±0.5 ms)

RulesCLI p50CLI p95CLI RSSDaemon p50Daemon p95
1095.4 ms120.5 ms42 MB0.23 ms0.35 ms
5094.8 ms104.2 ms47 MB0.17 ms0.34 ms
10097.9 ms113.0 ms42 MB0.23 ms0.35 ms
20096.9 ms126.2 ms44 MB0.13 ms0.26 ms
500100.3 ms122.0 ms43 MB0.17 ms0.32 ms
100,000276.4 ms340.9 ms95 MB0.16 ms0.29 ms

CLI latency is dominated by Bun process startup (~73 ms), while rule count barely moves the needle up to 500 rules. At 100K rules, rule-file I/O pushes CLI to ~276 ms. Daemon p50 stays flat in the 0.1–0.4 ms band; sub-ms measurement noise dominates, so the ordering of tiers is not meaningful. Engine p99 stays < 20 µs at every tier up to 100,000 rules; end-to-end daemon p99 (including Unix socket RTT) stays under 2 ms.

curl -fsSL install.sigmashake.com | sh

Join engineering teams reducing AI-agent incident risk deterministically across every agent in their stack.

Free to download · $5/month to use · see /install for the chooser and ToS warning. GHCR pulls accept the Terms of Service.

Measured vs modeled · SHAKEDOWN

Scored 100 on our published SHAKEDOWN corpus

Choosing what guards your agents is a critical decision, so we made it measurable. The question that matters: does policy fire at the tool-call boundary without breaking real work? Honest-agent / integration-dependent. Not a sandbox. SigmaShake scored 100 on our published SHAKEDOWN corpus. Every bar is labeled measured or modeled. Don't trust the chart. Reproduce it.

SigmaShake SSG + hardening overlay (measured)100
Sandbox runtime NVIDIA OpenShell (modeled from public docs)49.5
Policy kernel MS AGT (modeled from public docs)21.1
Skill-based guardrail (modeled from public docs)19.3
Prompt guard (modeled from public docs)18.1
SHAKEDOWN score = Containment × (1 − FalseBlock) × 100. Higher is better; the score only holds if it catches attacks and leaves legitimate work alone.
🎯
Scored 100 on the published corpus
100% of published SHAKEDOWN attack tasks blocked at 0% false-block (3,396 / 3,396 malicious, 0 / 1,510 benign eval cells, overlay-only, 2026-06-10). Honest-agent / integration-dependent. Not a sandbox.
⚡
Eval latency (not a containment score)
Deterministic native evaluation in under 2 ms: no model inference, no GPU, no token cost. Latency is not containment. Don't read the speed figure as a SHAKEDOWN result.
🧭
Guides, not just blocks
ALLOW · DENY · ASK · FORCE with guidance. FORCE refuses the original risky action and returns a safe substitute or required safer path for the agent to use next.
See measured vs modeled results SSG row measured (overlay-only run, submitter: sigmashake-bench) · competitor rows modeled from public docs · SHAKEDOWN authored by SigmaShake · full results

How SigmaShake Compares

SigmaShake vs prompt engineering vs sandboxed execution

Local-first · pre-execution·Deterministic, zero-overhead, universal across agents

The real difference isn’t a benchmark number; it’s where the check runs. SigmaShake is local-first and gates the tool call before it executes, on your machine. LLM output filters (Lakera, Guardrails AI, NVIDIA NeMo Guardrails) inspect the model’s response after the agent has already decided to act. Microsoft also ships a free, MIT-licensed Agent Governance Toolkit for policy enforcement worth evaluating alongside SSG. The two table columns below show the older infrastructure-level approaches (DIY prompts and sandboxed containers); those output-filter and toolkit options are distinct, complementary layers, not shown as scored columns.

⚡
Native Eval Engine
< 2ms · local eval
Native binary via installer or GHCR. No cluster required, no token burn. Pro is $5/mo. Impossible to replicate with prompt engineering.
🔌
Agent-Agnostic
7 agents · 1 surface
Claude Code hooks + MCP across Cursor, Codex, VSCode Copilot, Gemini CLI, Antigravity & Pi Coding. One install governs them all.
🌐
Rule Hub Network Effect
Community · Compounding
A public .rules registry where every new rule strengthens the ecosystem. Competitors start from zero community.
CriterionSigmaShakeNative rule engineDIY configPrompt engineeringSandboxed containersDocker / K8s isolation
Architecture✓StandaloneNative binary (installer or GHCR) · $5/mo Pro~Text & StaticPrompt eng. + string match✕HeavyDocker + K3s cluster
Performance✓< 2msInstant evaluation✕SlowToken generation latency✕100+ msContainer startup overhead
Scale Limit✓100,000+Rules evaluated in < 2ms✕~dozensContext window limit✕CPU-boundNetwork / compute bottleneck
Reliability✓100%Deterministic hooks✕Best effortAI forgets, easy to bypass~StrongHard to tune in production
Operating Cost✓$5/moLocal eval · Pro unlocks Hub sync✕HighPer-request token spend✕HighAlways-on compute
Device Protection✓ActiveGatekeeps every tool call✕NoneProne to prompt injection~IsolatedOnly inside the container
Rule Ecosystem✓Public Hubhub.sigmashake.com✕NoneCopy-paste, no sharing✕NoneManual YAML policies
Install SigmaShake →30 seconds · install chooser · curl -fsSL install.sigmashake.com | sh (no -y; review ToS)
Measured, not marketed · MITRE ATT&CK-mapped

SHAKEDOWN: the published policy-eval corpus

378 malicious + 152 benign task shapes (corpus v1.3.0) · tap to expand

Don't trust the chart. Reproduce it. SHAKEDOWN replays a published corpus of destructive, persistence, credential-access, defense-evasion, and supply-chain tool calls through SSG on supported integrations, scoring blocks against legitimate work left alone. SigmaShake scored 100 on that corpus. Honest-agent / integration-dependent. Not a sandbox. Fully local, no GPU, no token cost.

378
Malicious tasks
52
ATT&CK techniques
6/14
ATT&CK tactics
12
Threat categories
9
Harness × model
Across the ATT&CK kill chain:Initial AccessPersistenceDefense EvasionCredential AccessExfiltrationImpact
Full methodology, live leaderboard & ATT&CK matrix Reproduce it · sigmashake-bench · bun run src/cli.ts run --overlay-only --hardened --all-harnesses

Community Rules, Ready to Install

Pre-built rulesets for TypeScript, Python, Rust, Security, Docker, and more.
Signed, version-controlled, and installable with one command.

ssg hub pull rules-agentic-ai
230+Public rulesets
2,300+Rules
100,000+Rules capacity in under 2 ms
MITRE ATLAS · AML.M0020

Generative AI Guardrails, enforced at the tool-call boundary

SigmaShake maps to MITRE ATLAS mitigation AML.M0020 and implements its rule-based-validator form: typed IF/THEN rules and regex evaluate every proposed tool call before execution and return ALLOW, DENY, ASK, or FORCE, with every decision audited.

Mapped ATLAS techniques (tap to expand)

Simple, Predictable Pricing

One flat plan, billed monthly. Cancel anytime.

Free to download · $5/month to use · billed monthly

Enterprise

Custom

When procurement asks.

  • Everything in Pro
  • Extended audit retention
  • Team policy sharing & SSO / SAML
  • Priority support with response-time SLA (hours defined in your SOW)
  • Supports On-Prem Deployments
  • Source code access for the licensed version of ssg & SigmaShake Desktop is available to customers who purchase or sign a binding purchase commitment. Scoped to that version only; updates are not included.
  • Custom adapter development
Enterprise Guide →

Honest Answers to Hard Questions

Direct answers to questions skeptical engineers actually ask.

Isn't this just a PreToolUse hook or MCP server with regex?

Yes, the enforcement mechanism integrates natively via agent hooks or MCP servers (supporting Claude Code, Codex, Antigravity, Gemini, and more), and that's intentional. What SigmaShake adds on top of a hand-rolled hook script: a community rule library you don't have to write from scratch, an Ed25519-signed bundle so you can trust rules from the Hub, a per-row signed audit log (every governance event individually signed for tamper-evidence), fleet-wide policy sync across many machines, and a dashboard UI for approvals and profiling. If you only need one rule on one machine, a raw script is fine. SigmaShake is for teams that want the whole system.

Can't an agent just bypass the rules with encoding or whitespace tricks?

A motivated attacker with shell access: yes. An honest agent making a mistake, a misconfigured automation, or a junior dev who accidentally wrote a destructive command: no. SigmaShake is a guardrail for the 95% case, preventing accidental harm from agents that are trying to do the right thing but might not know all your constraints. It is not a sandbox and does not claim to be. For adversarial isolation, compose it with OS-level sandboxing (Docker, seccomp, Apple Sandbox); they address different parts of the threat surface.

How is this different from Lakera, Guardrails AI, or NeMo Guardrails?

Those products filter LLM output. They run after the model responds, checking whether generated text is safe. SigmaShake gates agent tool calls. It runs before the action executes, checking whether the thing the agent is about to do is allowed. The threat models are complementary, not competing. An LLM output filter won't stop an agent from running rm -rf; a tool-call gate will.

Is the Hub a supply-chain risk?

Every ruleset on the Hub is content-hashed and Ed25519-signed before distribution. The bundle is verified at load time; if tampered with, it won't run. Rulesets are plain DSL text, readable before install. You can audit exactly what a ruleset does before pulling it: ssg hub inspect <ruleset-id>.

Can I run this without sending anything to the cloud?

Yes for evaluation. ssg evaluates every tool call locally — the gate itself does not call home. Hub pulls, fleet sync (Pro+), and audit export (Pro+) are optional. Separately, Desktop/daemon may send a license heartbeat when licensed, and an anonymous usage heartbeat only after explicit opt-in (same model as the Desktop privacy copy). Local-only mode: install via the native installer or GHCR image, run ssg init, keep telemetry opted out, and skip Hub/fleet. Evaluation stays on-box either way.

Claude Code already asks before running commands. Why pay for this?

Claude Code's built-in permission prompts are a good start, but they're binary (allow or skip) and require your attention for every action. SigmaShake adds four things you can't get from a raw hook: (1) Defaults without writing a script: the baseline preset ships 20 rules on day one covering the most common destruction, secret-leak, and supply-chain patterns; (2) Audit trail: every evaluation is signed and stored, so you can see exactly what was blocked and why; (3) Fleet-wide policy: one rule set pushed to every developer machine, enforced without each developer writing and maintaining their own hook; (4) Multi-agent coverage: the same rules enforce across Claude Code, Cursor, Codex, Gemini CLI, and any other MCP-compatible agent simultaneously.

Will this slow down or break my agent?

In daemon mode (the default after ssg init), evaluation stays under 2 ms end-to-end over a Unix-socket hop — imperceptible in any interactive session. Cold-start (if the daemon isn't running) takes ~73–104 ms for the first call, then stays at socket-hop latency. The false-block rate on ordinary development work is measured by the SHAKEDOWN benchmark: the “agent-safety-baseline” preset blocks 0 out of 894 benign tasks. See the benchmark page for the full false-block report. If a rule fires on something legitimate, you can add an exception in one command: ssg rules exception add <rule-id> <value>.

Does writing it in CLAUDE.md stop a destructive AI coding agent?

A CLAUDE.md instruction is a probabilistic nudge: Claude Code usually follows it, but the model can ignore or misread it under prompt pressure, a long context window, or an adversarial injection. No enforcement sits in the path between the instruction and the tool call. ssg adds a deterministic gate that evaluates every tool call before it runs and returns ALLOW, DENY (runtime: block), ASK, FORCE, LOG, or SHADOW with no LLM involved in enforcement. FORCE refuses the original risky action and returns a safe substitute or required safer path for the agent to use next. Adding a permissions block to CLAUDE.md sets intent; guardrails enforce it. Test a rule now at showcase.sigmashake.com, or install SigmaShake Desktop for a full local GUI. It is free to download and costs $5/month to use.

Community

Talk to other engineers using SSG

Share your rules, get help, and follow what's shaking next.