{"name": "Continuous agent-speed defense for public surfaces", "provider": "TextForAgents LLC", "version": "1.0.0", "what_it_does": "Runs a defensive probing loop against your OWN verified public surfaces at attacker tempo: daily diff probes and a re-probe on every deploy, using identity-aware probes that re-check gated candidates at the end of every run. Every verdict is per-identity/per-count \u2014 never a surface-wide clean bill \u2014 and carries the remediation clock (attacker-discoverable to verified-closed). Per finding it generates a virtual patch (a WAF rule, as data, for your own WAF/proxy) and verifies closure by re-running the discovering probe with a fresh identity; every closure claim states its scope. Plus an exposure-verdict API: what does an agent attacker currently find on this surface, and since when?", "prices": {"single": "$49/mo per surface \u2014 daily diff + deploy-triggered probes, virtual patches, closure verification, verdict-API access", "operator": "$299/mo per operator \u2014 up to 10 surfaces, fleet roll-up of findings and remediation clocks", "verdict": "$25/verdict (x402) \u2014 one scoped changed-surface diff verdict, no subscription", "trial": "first exposure verdict free, one time per operator account"}, "pay_to": "0xAc2E243a075fEe442e4c6864DcF880eb4e3A3862", "how_to_start": "POST /register {\"operator\": \"your-name\"} -> token (shown once); POST /surfaces enrolls a surface and issues an ownership-verification token (no probing before verification passes); POST /surfaces/verify completes verification; POST /subscribe {\"plan\": \"single\"|\"operator\"} is x402-gated at $49/surface or $299; POST /run probes; POST /verdict is the $25 one-off (first one free).", "endpoints": {"register": "POST /register", "surfaces": "POST /surfaces, GET /surfaces", "verify_surface": "POST /surfaces/verify", "pause": "POST /surfaces/pause", "subscribe": "POST /subscribe", "run": "POST /run", "verdict": "POST /verdict", "closures_verify": "POST /closures/verify", "deploy_hook": "POST /deploy-hook", "verdicts": "GET /verdicts", "findings": "GET /findings", "rollup": "GET /rollup", "account": "GET /account", "revoke": "POST /tokens/revoke", "mcp": "POST /mcp", "openapi": "GET /openapi.json", "llms": "GET /llms.txt", "x402_discovery": "GET /.well-known/x402", "health": "GET /health", "terms": "GET /terms", "privacy": "GET /privacy"}, "limits": ["No surface is probed before ownership/authorization verification for that surface passes; unverified surfaces are refused and the refusal is logged.", "Verdicts are per-identity/per-count only, carrying {identity, calls_made, findings, clean_through_call}; no surface-wide clean/secure verdict exists anywhere in the product.", "v1 is the deterministic diff-first loop only \u2014 no LLM probe leg is enabled, priced, or implied.", "Lab measurements are fixture-scale; production per-surface-month cost is re-measured from launch and reported against the pricing sheet.", "The lab's enumeration closure was per-caller only; production enumeration protection limits per-surface AND per-network in aggregate.", "Virtual patches are rules AS DATA for your own WAF/proxy \u2014 the product never modifies your production configuration directly.", "Probing is rate-capped per surface, confined to the enrolled surface's check paths, and pausable per surface."], "support": "support@textforagents.com"}