Skip to content
TESSERA PROXY
BlogJoin waitlist
Reverse proxy · rules from your code

Security rules written from your code. Approved by you.

Tessera is a reverse proxy that reads your repository, drafts a policy for every endpoint and field, and blocks requests that don't fit. When a known CVE applies to your code, a policy rule can stop the attack at the proxy while your team works on the fix.

Gate · samplepassed
GET /api/orders
Attack probability0.03 · pass
How it works

How it works

  1. I

    Intercept.

    Tessera is a reverse proxy that sits in front of your server. Every request passes Tessera before your application sees it. No SDK, no code changes.

    Request → Tessera → your app
    Incoming · last second
    GET/api/orders10.4.12.88
    POST/api/login185.220.101.4
    GET/api/search?q=77.88.21.3
    PUT/api/avatar91.198.4.17
    Step1 / 4
  2. II

    Check.

    Fast, rule-based checks look at the shape of each request: field formats, SQL injection patterns, URLs, logins and abuse limits. Each endpoint gets only the checks it needs.

    Only the checks each endpoint needs
    Checks · POST /api/login
    Schemaemail ≤ 254, password ≤ 128
    File typen/a · no uploads
    Injection shapesSQL injection, XSS, null bytes
    Rate12 requests / min
    Step2 / 4
  3. III

    Decide.

    Requests that break the policy are blocked on the spot, with no AI involved. Suspicious ones, and a small sample of clean ones, get a second opinion from the AI classifier, which rates how likely an attack is.

    Blocks above your threshold
    Verdicts
    GET /api/ordersPassed
    PUT /api/avatarRouted to AI classifier
    POST /api/loginBlocked
    Step3 / 4
  4. IV

    Adapt.

    Tessera discovers which endpoints are under attack and looks closer there. It asks the AI classifier about more of their requests, then eases off when things calm down.

    Looks closer where attacks happen
    Share sent to AI classifier · per endpoint
    /api/login92%
    /api/search61%
    /api/avatar44%
    /api/orders12%
    /health2%
    Step4 / 4
Policies

A policy for every endpoint and field, drafted from your code.

Tessera reads your linked GitHub repository in a sandbox with no network, adds a redacted scan of your environment and known CVEs, and drafts a policy for every endpoint and field.

  • Read from your code
    Routes, fields, dependencies and CVEs become the checks for each endpoint.
  • Approved before it runs
    Every policy is a saved version. You approve it, reject it, or edit it in plain language, and every approval traces back to a person.
  • Signed, then pulled
    The proxy runs only policies with a valid Ed25519 signature, and keeps the last good one if the dashboard is unreachable.
tessera.policy/v3Sample outputed25519 signed
tessera fetch
$ tessera fetch
── fetch ───────────────── project 65f1c0de9a3b4e2d1c0f7a91
■ downloaded from https://dashboard.tessera.example.com
■ signature, content hash and tenant verified
■ every tool in the bundle built
■ PASSED stored policy v7 in Redis
replaced v6
global 4 steps
environment 2 steps
endpoints 38 endpoints
→ running proxies switch to v7 within 30 seconds
# stored policy · POST /api/login
method: POST path: /api/login
requestTools: [request_size, rate_limit]
fields:
email: { location: body, tools: [string_length, xss] }
password: { location: body, tools: [string_length] }
# proxy log
■ ALLOW SAFE · not sampled
Demo

Trace one request through Tessera.

Follow an attack on Adminer, CVE-2025-43960, from the collector in your CI to the 403 at the proxy. Edit the policy, swap the request, move the threshold: the outcome changes with you.

Illustrative scenario with mocked data, modelled on the Tessera architecture. Nothing leaves your browser.

GitEnvironmentDependenciesAPI routesCVEsPolicy writerPolicy builderCheck selectorApprovalClientEntryClean-upYour appPlanRunVerdictSamplingAI classifierDecisionYour settingsSample rateMetricsThreshold

Nodes in this step

Step 1 of 15 · Learn the app

Collect the environment, read the repository

The runs in your CI and scans how your app is set up, then uploads a redacted report. Your source code never travels with it: the Tessera dashboard fetches the commit from your linked GitHub repository into a disposable sandbox with no network.

Why it matters: Secrets are redacted before anything leaves your network, and anything sent to an AI model is redacted again.

collector · GitHub Actions
$ tessera analyze-env --target https://app.example.com --project-path .
── analyze-env ───────────── 1 target · tenant acme-app
target https://app.example.com
project /home/runner/work/app
upload https://dashboard.tessera.example.com
── results ────────────────────────────
■ PASSED nmap web ports open on app.example.com
■ PASSED httpx /adminer/ · 200 · Adminer 4.8.1
■ PASSED nuclei 1 finding
■ PASSED trivy 2 findings in composer.lock
■ PASSED lynis host hardening report
■ report sent · redacted · project acme-app
→ dashboard: github.com/acme/app @ 3f9c2ab → sandbox with no network
Why Tessera

Block the CVE today. Patch it next sprint.

Tessera reads your code in a sandbox, blocks attacks on known CVEs and stops suspicious requests before they reach your application.

  • Safe code analysis

    Your repository is read in a sandbox with no network, and secrets are redacted before anything leaves it.

  • Blocks known CVEs

    When a known CVE applies to your code, a policy rule can stop the attack at the proxy, even before a patch exists.

  • Helps block suspicious actions

    A request that looks wrong for your code can be stopped, whether or not a CVE is involved.

What Tessera doesn't do

  • New vulnerabilities

    It matches published vulnerabilities. It does not discover new ones.

  • Volumetric DDoS

    Keep your CDN or your provider's protection for that.

  • Business-logic flaws

    A well-formed request that does the wrong thing is a job for code review, tests and pentests.

  • Browser-side attacks

    Stored XSS shown later, or tampered third-party scripts, need CSP and script monitoring.

  • Infrastructure

    The collector reports open ports and config findings. It doesn't fix them.

  • Account takeover

    Rate limits and bot checks help, but they don't replace MFA.

  • Fixing your code

    Tessera buys time. The fix is still yours.

  • Compliance

    Tessera can be one technical measure you show an auditor. It doesn't make you compliant.

We are still testing Tessera against real attacks on our own systems.

Dashboard

Projects, policies and proxies. The dashboard is never in the request path.

The hosted control plane is where you link repositories, approve policies, manage credentials and watch your proxies. If it goes down, the proxies keep enforcing the last good signed policy.

Dashboard

Projects and shared configuration for acme.

Projects
3
Active API keys
4
GitHub installations
1
Members
5

System overview

Healthy

Key metrics across all projects.

3Projects2 with an active bundle
1 / 4

Projects

3 total

Each project is one protected application with its own policy and bundle.

  • storefront
    https://shop.acme.dev · bundle v7 · heartbeat 12 s ago
    Healthy
  • admin-api
    https://admin.acme.dev · bundle v3 · v4 activated
    Restart required
  • payments
    https://pay.acme.dev · policy v1 pending approval
    Needs attention

Global AI classifier integration

Connected

Shared by all projects. Proxies fetch it with a deployment key that has the jev-credentials:read scope.

API key

Source repositories

Linked

Analysis source is fetched from GitHub through a linked installation.

  • acme/storefront
  • acme/admin-api
  • acme/payments

Credentials

Collector keys upload analyses. Deployment keys let proxies pull bundles and report health.

Collector keys
2 active
Deployment keys
2 active
Preview with sample data, not from a real deployment.
FAQ

Questions teams ask first.

How we handle your code
Is Tessera a WAF?

In one sense, yes: it sits in front of your app and blocks attacks. The difference is where the rules come from. A WAF ships general rules for every app, while Tessera drafts a policy for your endpoints and fields from your code, and you approve it.

Do I have to replace my CDN or WAF?

No. Tessera runs behind your CDN or load balancer, in front of your app. Keep what handles DDoS and caching today.

Where does the proxy run?

The proxy runs on your server, next to your app, with Redis. The control plane is hosted by us and never sits in the request path. TLS certificates and request data stay with you, except the fields sent to the AI classifier.

Do I need to change my code?

No SDK and no code changes. Tessera is a reverse proxy, so your app doesn't know it's there.

What does the AI see?

For analysis, redacted excerpts of your code inside a sandbox with no network, and a manifest lists every line sent to the model provider. At runtime, the AI classifier gets request fields, not IPs, identifiers, headers or cookie fields. It only sees suspicious requests and a small sample of clean ones.

Can I use it without sharing my code?

Yes. Write your own policy and import it, and the analysis step never runs.

Will it block real users?

Policy violations are blocked by deterministic rules, with no AI involved. The AI classifier only returns a probability, and blocks only above a threshold you set and can lock. Under attack the threshold tightens toward the floor you set, never past it.

Who approves the rules?

Your team. Every policy is a saved version you approve, reject or edit in plain language, and every approval traces back to a person. Policies reach the proxy only when you pull a signed one with tessera fetch.

What if your dashboard goes down?

The proxy keeps enforcing the last good signed policy. The dashboard is never in the request path.

Which stacks does it support?

Parsers are modelled on the documented behaviour of 30 stacks and 18 servers, with real-server testing in progress. They copy quirks like PHP turning a.b into a_b, and the proxy scans every possible reading of a value.

Do I need GitHub?

Code analysis reads from GitHub today. On GitLab or elsewhere, import your own policy.

Does it help with audits?

Every policy version records who approved it, and the proxy logs its blocks. That's evidence for an auditor or a customer's security questionnaire. Tessera alone doesn't make you compliant.

News

Progress notes from the build.

  1. pre-alpha

    Tessera debuts at HackYeah 2026

    Tessera was created during the HackYeah 2026 event. We designed sketches of architecture and started the development process.

Have a CVE you can't patch yet, or a pentest report waiting on fixes?

Join the waitlist and we'll email you the details of a pilot on your own app.

Join the waitlist