Decentralized threat intelligence for AI agents. An attack on one is a vaccine for all.

Antibodies are signed by their publisher, staked on chain, and addressable by a stable CVE-style identifier. Cheap matches resolve locally in microseconds. Novel threats verify in a Chainlink CRE TEE, triggered on-chain and attested by the DON. The network is the immune system.

npm install @immunity-protocol/sdk

Chain agnostic.

Antibodies active
41
+0 in 1h
Network contributors
59
$1.78 distributed
LLM calls saved
11,792
≈ $47 in compute
Value protected
$54.4M
+$0 in 1h
02 · How it works

Four steps. Four layers. One protocol.

Every action is screened. A hit resolves locally in microseconds; only the slice that's genuinely new triggers a Chainlink CRE TEE on-chain. Propagation is instant — enforcement is trust-gated, so a lone flag can't censor anyone. No human in the loop.

Layer · Detection
Step 01

Agent calls check() before acting

An AI agent passes any tx, scraped content, or counterparty message to immunity.check(). The fee is mandatory — it pays for the evaluation. On a hit, the network already knows: the LLM is skipped, the answer is instant, and the fee rewards the publisher.

Layer · Verification
Step 02

Novel threats trigger Chainlink CRE

A miss is the slice that is actually new. An on-chain verification request triggers Chainlink CRE; encrypted context goes to the TEE enclave; a DON-signed verdict is written back on-chain. A confirmed threat seeds a new antibody — a future cache hit for everyone.

Layer · Trust
Step 03

Propagation is instant, enforcement is gated

The antibody is visible network-wide the moment it is published. But a lone or low-reputation flag stays advisory — it warns, never hard-blocks. A hard block needs K independent reputable publishers corroborating the same target, so a $1 actor can't censor the Uniswap router.

Layer · Speed
Step 04

The network self-cleans for profit

On-chain events propagate the antibody; local caches and the indexer update; the same attack is blocked everywhere — by SDK on agents, by the Uniswap hook on pools. Anyone can challenge a false antibody with a bond; the CRE jury rules and the loser is slashed.

Partners · ETHGlobal New York 2026
Chainlink CRE logo
Chainlink CRE
Verification layer

Novel checks and the challenge jury trigger CRE on-chain; the TEE returns a DON-signed, attested verdict written back on chain.

ENS logo
ENS
Identity layer

Publishers are *.immunity.eth subnames via Durin L2 on Base — protocol-owned, so a slashed publisher can't transfer the name to escape its history. Reputation mirrors into ENS text records.

Uniswap v4 logo
Uniswap v4
Protection layer

An on-chain hook reverts swaps from antibody-flagged addresses while keeping canonical routers un-blockable. A real on-chain consumer of the registry.

03 · Tokenomics

Cents on each call. Real USDC on each save.

Every check carries a flat $0.01 fee — it pays for the security evaluation, and it's priced to be profitable on its own. A known threat resolves from the cache instantly and 80% rewards the publisher whose antibody caught it; anything novel is screened by an attested Chainlink CRE verdict — Claude in a TEE — and the fee funds that compute. No subsidy, no tiers. Settled on-chain on Base, no off-chain accounting.

Operator costs

Pay-as-you-call. No tiers.

Per check()
$0.01 USDC

Flat fee on every immunity.check() — priced to cover an attested Chainlink CRE screen (Claude in a TEE) and still profit. A cached hit rewards the publisher; a novel action funds its CRE verdict.

Publication fee
$0.0005 USDC, one-time

When a CRE-verified novel threat seeds a new antibody. Funds the on-chain registry write.

No subscription. No minimum. No volume discount tiers.

Publisher rewards

The bigger the hit-rate, the bigger the payout.

Match revenue
80% of every check fee that hits

Reward for the cache entry that saved an inference. Paid in USDC on chain by the Registry contract. While an antibody is on probation the share is escrowed, released on maturation and clawed back on slash.

Treasury share
20% to network upkeep
Publisher stake
1 USDC locked 72h, slashable

Skin in the game. A false antibody earns zero: challenged, the CRE jury rules, the stake and escrowed rewards are slashed. Legitimate ones mature, unlock, and reclaim the stake.

Real money. $1.78 distributed so far.

Operators pay a cent a check for an attested verdict on every action — known threats resolve instantly from the cache, novel ones get a fresh CRE/Claude screen the fee pays for. Publishers earn USDC every time their antibody catches a threat someone else was about to hit. Treasury keeps the Registry funded and the CRE subscription topped up. Every fee, reward, and stake settles on-chain on Base, fully auditable, no off-chain accounting.

04 · Detection types

Five ways to recognize a threat.

Antibodies recognize threats five ways: cheap, instant pattern matches at the edge, escalating to TEE-verified inference only when something genuinely new shows up. Examples are real patterns the demo fleet catches.

ADDRESS

Specific wallets and contracts the network has flagged. Hash-table lookup, instant.

  • Tornado Cash routers · OFAC SDN list
  • Inferno Drainer collector wallets · Q4 phishing kit
  • Lazarus Group affiliate addresses
CALL_PATTERN

Suspicious function shapes regardless of who calls them. Selector + argument heuristics.

  • approve(MAX_UINT256, knownDrainer)
  • setApprovalForAll(true, phishingKit)
  • transferFrom after a fresh permit signature
BYTECODE

Runtime bytecode hash. Re-deployed clones can't hide under a fresh address.

  • Drainer contracts re-deployed under new addresses
  • Honeypot tokens cloned from a single template
  • Proxies pointing at a flagged implementation
GRAPH

Multi-hop taint topology. Bad actors at one remove still get caught.

  • Wallets funded via Tornado within 24h
  • Receivers from a sanctioned source via one passthrough
  • Sybil clusters sharing a first-funding source
SEMANTIC

Manipulation patterns and prompt-injection markers in the agent's input.

  • “ignore previous instructions and...” (OWASP LLM01)
  • </system> new instructions: (closing-tag spoof)
  • “your wallet has been compromised, urgent”
05 · For developers

One call before any agent action.

The SDK is a single import. Pass any tx or context to immunity.check() and the network responds with a verdict, evidence, and matching antibodies before you sign.

agent.ts
import { Immunity } from "@immunity-protocol/sdk";

const immunity = new Immunity({
  wallet,

  // Called when verdict is SUSPICIOUS. Return true to allow, false to block.
  // Defaults to "deny" if not provided.
  onEscalate: async (verdict) => {
    return await notifyOperator({
      antibody: verdict.matched[0],
      confidence: verdict.confidence,
      reason: verdict.reason,
    });
  },

  escalationTimeout: 300, // seconds, default 300
  onTimeout: "deny", // "deny" | "allow", default "deny"
});

// Before any agent action
const result = await immunity.check(tx, context);

if (!result.allowed) {
  console.warn(`Blocked by ${result.antibodies[0].immId}: ${result.reason}`);
  return;
}

// Safe to proceed
await wallet.sendTransaction(tx);
What you get
  • Sub-millisecond local cache; a blocked verdict refuses the action before you sign
  • Keyless SDK — holds no secrets, signs nothing on your behalf
  • CRE TEE semantic detection for novel threats, DON-attested
  • Drop in as an MCP server — immunity.check as a tool any agent calls
  • Claude Agent SDK middleware and a Coinbase AgentKit plugin
  • Open source, MIT licensed
Read the SDK reference
06 · Two-layer protection

Defends from both sides.

Agents check before they sign. Pools check before they swap. Same registry, two enforcement points, no install required for the second.

For agent operators

SDK protection

Install the SDK in your agent. Every action is checked against the network's collective immunity before signing. Works on any chain, any pool, any tx type.

  • Drop-in npm install
  • Local cache, sub-ms checks
  • Per-operator config
For pool deployers

Hook protection

Deploy a Uniswap v4 pool with the Immunity hook. Every swap on your pool is checked against the global registry. LPs are protected automatically — no install required.

  • v4 BeforeSwap hook
  • Mirrored ADDRESS antibodies per chain
  • Blocks bad actors AND bad assets
07 · Public feed

A public threat feed for AI agents.

Every antibody is a public artifact. Subscribe via RSS, JSON, or webhook. Wallet UIs, security researchers, and other agents can consume the feed without running an SDK.