Token导航 LogoToken导航TokenDH.com
研究检索敏感数据github未标认证来源可访问许可证需确认审计通过

bot-protection机器人保护

Agent Skill

bot-protection 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

509

周安装

21

GitHub Stars

19

下载量

166
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:bot-protection(机器人保护)
来源仓库:https://github.com/finsilabs/awesome-ecommerce-skills
仓库路径:skills/bot-protection
安装命令:
npx skills add https://github.com/finsilabs/awesome-ecommerce-skills --skill bot-protection
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/finsilabs/awesome-ecommerce-skills --skill bot-protection

简介

bot-protection 提供针对电商平台的三大 bot 威胁防护:数据整理、抢购和凭证填充。

  • 适用场景包括部署 Cloudflare 防御层、WAF 配置、CAPTCHA 验证和行为分析,保护商店免受恶意攻击。
  • 核心能力包括平台级防御、防火墙设置和高风险动作验证,适用于大多数商家的最低摩擦保护方案。
  • 安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

Bot Protection

Overview

Commerce stores face three major bot threats: scrapers that harvest pricing and inventory data for competitors, scalper bots that buy limited-inventory items instantly, and credential-stuffing bots that test stolen usernames and passwords. Effective bot protection layers platform-level defenses, a WAF (Web Application Firewall), CAPTCHA for high-risk actions, and optional behavioral analysis. For most merchants, Cloudflare provides the most effective and lowest-friction protection — it sits in front of your store regardless of platform.

When to Use This Skill

  • When launching limited-edition products prone to scalping (sneakers, concert tickets, gaming consoles)
  • When competitors are systematically scraping your product prices or inventory levels
  • When account login pages show signs of credential stuffing (high failure rates from distributed IPs)
  • When checkout funnel analytics show suspiciously fast completion times (sub-5-second checkout)
  • When your infrastructure is overwhelmed by bot traffic consuming catalog API resources

Core Instructions

Step 1: Determine the merchant's platform and choose the right tool

PlatformBuilt-in Bot ProtectionRecommended Additional Layer
ShopifyShopify includes basic bot detection and rate limitingEnable Cloudflare (free plan) in front of your Shopify store for WAF rules and bot management
WooCommerceNone built in — the login and checkout forms are fully exposedWordfence (free) for login protection; Cloudflare for WAF and rate limiting
BigCommerceBasic DDoS protection includedCloudflare for advanced bot management; BigCommerce supports custom scripts for CAPTCHA
High-traffic drops (any platform)NoneCloudflare Waiting Room (Business/Enterprise) or Queue-it for managed queue
Custom / HeadlessMust buildCloudflare + custom rate limiting + behavioral analysis

Step 2: Set up foundational bot protection


Step 2a: Enable Cloudflare (works for all platforms)

Cloudflare's free plan provides significant bot protection at the DNS level without touching your application code.

  1. Add your domain to Cloudflare at cloudflare.com (free plan works for most stores)
  2. Update your domain's nameservers to the Cloudflare nameservers provided
  3. In Cloudflare dashboard:

- SSL/TLS → Overview: set to "Full (Strict)" - Security → WAF → Managed rules: enable Cloudflare Managed Ruleset (free) and OWASP Core Ruleset - Security → Bots → Bot Fight Mode: enable (free) — blocks known bot user agents

  1. For additional protection, create custom WAF Rules (Security → WAF → Custom Rules): # Block requests with no User-Agent header (not http.user_agent contains " " and not cf.client.bot) # Rate limit catalog API scraping # Under Security → WAF → Rate Limiting Rules: # Path: /products/* or /api/products/* # Rate: 100 requests per minute per IP # Action: Block for 1 hour

Cloudflare Bot Management (Business plan, ~$200/month): For stores with serious scalping or scraping problems, Cloudflare Bot Management uses machine learning to score every request and challenge or block suspicious traffic without impacting legitimate shoppers.


Step 2b: Add CAPTCHA to high-risk forms

Use Cloudflare Turnstile (free, privacy-preserving, invisible-first) on login and checkout forms. Turnstile uses passive signals before showing a visible challenge — most legitimate users never see a CAPTCHA.

Adding Turnstile to a Shopify store:

  1. Sign up for Cloudflare Turnstile at cloudflare.com/products/turnstile (free)
  2. Create a new site, select "Managed" mode, note your site key and secret key
  3. In Shopify, customize your theme to add the Turnstile widget to the login and checkout forms:

- Use a Shopify theme app extension or edit the theme directly - Add <script src="https://challenges.cloudflare.com/turnstile/v0/api.js" async defer></script> and a <div class="cf-turnstile" data-sitekey="YOUR_SITE_KEY"> to the login form

  1. Verify the token server-side in your custom app or use a Shopify Function

Adding Turnstile to WooCommerce:

  1. Install the Cloudflare Turnstile WordPress plugin (search "Cloudflare Turnstile" in the plugin directory)
  2. Enter your site key and secret key
  3. Configure which forms to protect: login, registration, checkout, comment forms

Server-side token verification:

async function verifyTurnstile(token: string, ip: string): Promise<boolean> {
  const res = await fetch('https://challenges.cloudflare.com/turnstile/v0/siteverify', {
    method: 'POST',
    body: new URLSearchParams({
      secret: process.env.TURNSTILE_SECRET_KEY!,
      response: token,
      remoteip: ip,
    }),
  });
  const data = await res.json();
  return data.success === true;
}

Step 2c: Set up a Waiting Room for product drops (high-demand launches)

For limited-inventory launches where you expect traffic spikes and scalpers:

Cloudflare Waiting Room (Business/Enterprise plan):

  1. In Cloudflare dashboard, go to Traffic → Waiting Room
  2. Click Create
  3. Configure:

- Hostname: your store domain - Path: the product URL pattern (e.g., /products/limited-* or /collections/drop) - Total active users: maximum concurrent users allowed through (e.g., 500) - New users per minute: admission rate (e.g., 100 per minute)

  1. Customize the waiting room page with your branding
  2. Cloudflare queues excess traffic fairly; bot traffic is filtered by Cloudflare's bot detection before entering the queue

Step 2d: Platform-specific protections

Shopify — Per-customer purchase limits: Shopify does not enforce per-customer purchase limits natively for limited products. Options:

  • Use a Shopify app like Locksmith or Order Limits by MLveda to restrict purchase quantity per customer
  • On Shopify Plus: use Shopify Functions to enforce limits at checkout

WooCommerce — Login brute-force protection:

  1. Install Wordfence Security (free)
  2. Enable brute-force protection under Wordfence → Login Security
  3. Enable two-factor authentication for admin accounts

WooCommerce — CAPTCHA on checkout:

  1. Install Google Recaptcha for WooCommerce (free) or the Cloudflare Turnstile plugin
  2. Configure to protect: login, registration, checkout, and lost password forms

Custom / Headless — Application-layer rate limiting

For custom storefronts, add rate limiting at the middleware or edge layer:

// Next.js Edge Middleware — rate limiting per IP per route
import { NextRequest, NextResponse } from 'next/server';
import { Ratelimit } from '@upstash/ratelimit';
import { Redis } from '@upstash/redis';

const redis = Redis.fromEnv();
const limiters = {
  checkout: new Ratelimit({ redis, limiter: Ratelimit.slidingWindow(10, '1 m'), prefix: 'rl_checkout' }),
  catalog:  new Ratelimit({ redis, limiter: Ratelimit.slidingWindow(100, '1 m'), prefix: 'rl_catalog' }),
};

export async function middleware(request: NextRequest) {
  const ip = request.ip ?? request.headers.get('x-forwarded-for') ?? '127.0.0.1';
  const pathname = request.nextUrl.pathname;

  const limiter = pathname.startsWith('/checkout') ? limiters.checkout
    : pathname.startsWith('/products') ? limiters.catalog
    : null;

  if (limiter) {
    const { success } = await limiter.limit(ip);
    if (!success) return new NextResponse('Too Many Requests', { status: 429 });
  }

  return NextResponse.next();
}

Per-customer purchase limits (custom):

async function enforcePurchaseLimit(customerId: string, productId: string, limit = 1) {
  const count = await db.orders.countByCustomerAndProduct(customerId, productId);
  if (count >= limit) throw new Error(`Purchase limit of ${limit} per customer reached`);

  // Atomic lock to prevent race conditions at high concurrency
  const lockKey = `purchase_lock:${customerId}:${productId}`;
  const acquired = await redis.set(lockKey, '1', 'EX', 30, 'NX');
  if (!acquired) throw new Error('Purchase already in progress');
}

Best Practices

  • Layer multiple defenses — no single technique stops all bots; combine Cloudflare WAF, Turnstile CAPTCHA, and application-level rate limiting
  • Use invisible CAPTCHAs first — Cloudflare Turnstile and hCaptcha passive mode challenge only suspicious requests; visible CAPTCHAs on every checkout hurt conversion
  • Fingerprint sessions, not just IPs — bots rotate IPs via residential proxies; supplement IP-based rules with behavioral signals and session characteristics
  • Enforce per-product purchase limits at the database level — client-side limits are trivially bypassed; enforce with a server-side check or database constraint
  • Monitor your bot-to-human ratio — set up a Cloudflare Analytics or Datadog dashboard tracking the ratio of blocked requests to total requests; spikes indicate new bot campaigns
  • Pre-announce high-demand drops with a waitlist — collecting emails in advance lets you give waitlist members priority access, making the queue fairer and reducing demand at the moment of launch

Common Pitfalls

ProblemSolution
Rate limits blocking legitimate flash sale trafficSet higher rate limits for authenticated customers with purchase history; apply strict limits only to unauthenticated requests
Turnstile CAPTCHA breaking checkoutTest Turnstile in "Always passes" mode during setup; ensure your server-side verification endpoint is working before enabling in production
Waiting room not activating for a product dropConfigure Cloudflare Waiting Room 24 hours before the drop and test with a staging URL; ensure the path pattern matches the product URL
Purchase limit bypass via multiple accountsRequire phone verification for high-demand product purchases; link purchase limits to verified phone numbers or identity, not just accounts
Wordfence blocking legitimate WooCommerce customersReview blocked IP logs in Wordfence; allowlist legitimate customers and adjust sensitivity settings

Related Skills

  • @fraud-detection
  • @account-security
  • @secure-checkout
  • @flash-sale-engine
  • @monitoring-alerting-commerce

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

35.99%
按下载量换算60

Claude

31.56%
按下载量换算52

Cursor

16.99%
按下载量换算28

Gemini CLI

9.4%
按下载量换算16

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills