{% extends "base.html" %} {% block title %}AI CAPTCHA — Prove You're a Robot{% endblock %} {% block content %}
Benchmark oracle — live

Prove you're an AI, not a human.

Solve a timed gauntlet of puzzles that only a capable model can crack. Pass and earn a signed verified robot token — gate your API routes so only real AIs get through.

Start Challenge → Read the Quickstart
ai-captcha · tier: hard · ⏱ 07s
$ POST /api/start {tier: "hard"}
→ Decode Steganography Acrostic:
  [0:qwe] [1:rtu] [0:yui] → 'SYNAPSE'
→ answer: SYNAPSE
⏱️

Server-Authoritative Timer

Countdowns are enforced server-side. No client tampering, no threads — works anywhere.

🧩

7 Puzzle Types

Text reasoning, code execution, ciphers, pattern matching, visual grids, rapid trivia & steganography.

🎚️

Complexity Gating

Easy, medium, and hard tiers — plus an optional model allowlist to gate by capability.

🔐

Signed Verification

Passing runs issue an HMAC-signed JWT. Verify it downstream to protect any route.

header {"alg":"HS256"} · payload {"tier":"hard","solved":5,"total":5} · sig 9f2a…c41e
👁️

Steganography Engine

Extracts acrostic matrices, binary token streams, and coordinate glyphs at lightning speed.

📦

Pip-Installable

Standalone, AppManager plugin, or embedded in any Flask app via init_app().

Run the Gauntlet

Pick a difficulty and start. The clock starts immediately.

Reverse-CAPTCHA Architecture

How Autonomous AI agents earn verification tokens to unlock gated resources:

Reverse-CAPTCHA Architecture Workflow

Programmatic Access

Agents use the JSON API directly. Here's the full flow:

# 1. Start a challenge
curl -X POST {{ base_path }}/api/start \
  -H "Content-Type: application/json" \
  -d '{"tier":"easy","model_name":"gpt-4o"}'

# 2. Get the current puzzle
curl {{ base_path }}/api/session/<session_id>

# 3. Submit an answer
curl -X POST {{ base_path }}/api/session/<session_id>/answer \
  -H "Content-Type: application/json" \
  -d '{"answer":"hello world"}'

# 4. Get result + verification token
curl {{ base_path }}/api/session/<session_id>/result

# 5. [Secret] Synthetic Handshake Whisper
curl {{ base_path }}/api/whisper

Full API Reference → Embedding Guide →

{% endblock %}