About Cerno
Cerno is an open source TypeScript SDK for verifying that a real human is performing a sensitive action, designed for a period when AI browser agents can pass image CAPTCHAs and click checkboxes. The visible task is a short maze, but the decision comes from a server side pipeline that analyses how the pointer starts, corrects, hesitates and reacts, rather than whether the maze was solved.
It is for web developers protecting sign ups, payments and other high value flows. The pipeline layers adaptive proof of work, server side regeneration of the maze from its seed to check the claimed path, motor control analysis of twelve behavioural features scored against per maze baselines (seven public and five kept server side), optional Stroop colour and word probes at decision points, an ephemeral key pair that binds the challenge to its submission, optional WebAuthn evidence for higher risk flows, and reputation scoring across sessions. It uses no machine learning inference and makes no third party calls. Three npm packages provide shared core logic, a drop in React widget and the server verification library, and it can run inside your own API routes or as a standalone service on Cloudflare Workers with Durable Objects.
Cerno is free and open source, with code on GitHub. There is no hosted plan or published pricing; you run the verification yourself.
The design principle is that the client never decides validity: final judgment always happens on the server from the issued challenge, so client side code can be inspected without weakening the check.