bot-prevention

Integrate Cloudflare Turnstile with a database-backed rate limiter for web forms.

Updated Aug 27, 2026
One-click install
npx skills add https://github.com/120ventures/claude-skills --skill bot-prevention
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: bot-prevention
Source: https://github.com/120ventures/claude-skills/tree/main/bot-prevention
Command: npx skills add https://github.com/120ventures/claude-skills --skill bot-prevention

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill provides robust bot protection for web forms by integrating Cloudflare Turnstile and adding DB-based rate limiting to deter automated abuse without npm dependencies.

Core Features & Use Cases

  • Turnstile integration on auth and non-auth forms with a single setup.
  • Edge Function verification for non-auth forms and DB-backed usage tracking for rate limiting.
  • Includes guidance for environment configuration, dashboards, and migration patterns for persistent usage control.

Quick Start

Install the Turnstile widget, configure site key and secret keys, wire up frontend token handling, and deploy an edge function for verification or enable Supabase CAPTCHA on auth endpoints.

Frequently Asked Questions about bot-prevention

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add Cloudflare Turnstile and rate limiting to Supabase auth forms?

You can integrate Cloudflare Turnstile and DB-backed rate limiting by configuring environment keys, enabling Supabase CAPTCHA settings on auth endpoints, and using a Postgres table to track persistent usage limits for bot protection.

What is the best way to protect non-auth web forms from bot abuse without npm dependencies?

Protecting non-auth web forms from bot abuse without npm dependencies involves installing the Cloudflare Turnstile widget on the frontend and deploying a Supabase edge function to verify tokens and enforce DB-backed rate limits.

Does Cloudflare Turnstile work with Supabase edge functions for captcha verification?

Cloudflare Turnstile works with Supabase edge functions for captcha verification by passing the frontend token to an edge function that validates it against your secret key before applying DB-backed rate limiting.

How do I set up persistent rate limiting for a waitlist form using Supabase?

Setting up persistent rate limiting for a waitlist form using Supabase requires creating a Postgres table to track usage, applying migration patterns for usage control, and verifying Cloudflare Turnstile tokens via an edge function before database insertion.

When do I need a Postgres table for rate limiting instead of using standard edge rate limits?

A Postgres table for rate limiting is needed when you require persistent usage limits that survive across edge function instances, ensuring durable bot protection for authentication flows and non-auth forms like contact or waitlist pages.