К основному содержанию
скилл CX Codex

api-rate-limiting · aj-geddes — скилл для Claude Code: что делает и как установить

Помогает настроить ограничение частоты запросов к API через token bucket, sliding window и Redis. Защищает эндпоинты от брутфорса и перегрузок трафика.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add aj-geddes/useful-ai-prompts --skill api-rate-limiting -a claude-code
Открыть на GitHub

Что делает api-rate-limiting

Скилл содержит алгоритмы ограничения запросов: токен-ведро (token bucket), скользящее окно (sliding window) и фиксированное окно. Внутри описаны готовые стратегии для контроля лимитов по IP-адресу, пользователю или конкретному эндпоинту.

В справочных материалах разобраны реализация на Python с Flask, интеграция с Redis для кластеров и отправка служебных заголовков, включая Retry-After. Для продакшена документация прямо запрещает хранить счётчики только в оперативной памяти сервера.

Какие задачи решает

  • защитить эндпоинты от брутфорса и DoS-атак
  • настроить распределённое ограничение частоты запросов через Redis
  • внедрить тарифные лимиты для разных уровней подписки
  • добавить HTTP-заголовки лимитов и Retry-After в ответы API

Примеры запросов агенту

  • Настрой ограничение запросов по IP через алгоритм скользящего окна в Flask.
  • Реализуй токен-ведро с хранением состояния в Redis для защиты эндпоинта авторизации.
  • Добавь заголовки лимитов и Retry-After в ответы API.

Как установить api-rate-limiting

1Через Skills CLI (Vercel)

npx skills add aj-geddes/useful-ai-prompts --skill api-rate-limiting -a claude-code

2Вручную: положить файлы

~/.claude/skills/api-rate-limiting/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/api-rate-limiting/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о api-rate-limiting

Как установить api-rate-limiting в Claude Code?

Выполните в терминале команду npx skills add aj-geddes/useful-ai-prompts --skill api-rate-limiting -a claude-code.

Что делает скилл api-rate-limiting?

Он предоставляет готовые шаблоны алгоритмов token bucket и sliding window для защиты эндпоинтов от спама и перегрузок. С его помощью также распределяют квоты по тарифам клиентов.

Можно ли использовать хранение счётчиков в оперативной памяти в продакшене?

Руководство запрещает хранить состояние только в памяти на проде, потому что при нескольких инстансах приложения подсчёт ломается. Для распределённых систем авторы предписывают использовать Redis.

Исходный текст

SKILL.md · MIT
---
name: api-rate-limiting
description: >
  Implement API rate limiting strategies using token bucket, sliding window, and
  fixed window algorithms. Use when protecting APIs from abuse, managing
  traffic, or implementing tiered rate limits.
---

# API Rate Limiting

## Table of Contents

- [Overview](#overview)
- [When to Use](#when-to-use)
- [Quick Start](#quick-start)
- [Reference Guides](#reference-guides)
- [Best Practices](#best-practices)

## Overview

Protect APIs from abuse and manage traffic using various rate limiting algorithms with per-user, per-IP, and per-endpoint strategies.

## When to Use

- Protecting APIs from brute force attacks
- Managing traffic spikes
- Implementing tiered service plans
- Preventing DoS attacks
- Fairness in resource allocation
- Enforcing quotas and usage limits

## Quick Start

Minimal working example:

```javascript
// Token Bucket Rate Limiter
class TokenBucket {
  constructor(capacity, refillRate) {
    this.capacity = capacity;
    this.tokens = capacity;
    this.refillRate = refillRate; // tokens per second
    this.lastRefillTime = Date.now();
  }

  refill() {
    const now = Date.now();
    const timePassed = (now - this.lastRefillTime) / 1000;
    const tokensToAdd = timePassed * this.refillRate;

    this.tokens = Math.min(this.capacity, this.tokens + tokensToAdd);
    this.lastRefillTime = now;
  }

  consume(tokens = 1) {
    this.refill();

    if (this.tokens >= tokens) {
      this.tokens -= tokens;
      return true;
    }
// ... (see reference guides for full implementation)
```

## Reference Guides

Detailed implementations in the `references/` directory:

| Guide | Contents |
|---|---|
| [Token Bucket Algorithm](references/token-bucket-algorithm.md) | Token Bucket Algorithm |
| [Sliding Window Algorithm](references/sliding-window-algorithm.md) | Sliding Window Algorithm |
| [Redis-Based Rate Limiting](references/redis-based-rate-limiting.md) | Redis-Based Rate Limiting |
| [Tiered Rate Limiting](references/tiered-rate-limiting.md) | Tiered Rate Limiting |
| [Python Rate Limiting (Flask)](references/python-rate-limiting-flask.md) | Python Rate Limiting (Flask) |
| [Response Headers](references/response-headers.md) | Response Headers |

## Best Practices

### ✅ DO

- Include rate limit headers in responses
- Use Redis for distributed rate limiting
- Implement tiered limits for different user plans
- Set appropriate window sizes and limits
- Monitor rate limit metrics
- Provide clear retry guidance
- Document rate limits in API docs
- Test under high load

### ❌ DON'T

- Use in-memory storage in production
- Set limits too restrictively
- Forget to include Retry-After header
- Ignore distributed scenarios
- Make rate limits public (security)
- Use simple counters for distributed systems
- Forget cleanup of old data

© aj-geddes · MIT · aj-geddes/useful-ai-prompts

Похожие скиллы

Все скиллы по теме «Бэкенд и API» →

Сначала — api-rate-limiting от других авторов.

api-rate-limiting secondsky Скилл помогает добавить ограничение частоты запросов к API: алгоритмы token bucket, sliding window и вариант на Redis. Пригодится, когда открываешь публичный API или делишь доступ по тарифам. CX Codex +1 491установок implementing-api-rate-limiting-and-throttling mahipal Скилл внедряет алгоритмы sliding window и token bucket через Redis, защищая эндпоинты API от перебора паролей и исчерпания ресурсов. CX Codex +1 348установок rate-limiting-abuse-protection patricio0312rev Скилл добавляет в проект ограничение частоты запросов: политики на маршрут, лимиты по IP и пользователю, скользящее окно и понятные ответы об ошибке. CX Codex +1 319установок setup-rate-limiting davila7 Слэш-команда разбирает проект и собирает систему ограничения запросов к API: алгоритмы, квоты по пользователям, хранение счётчиков. 247установок api-gateway-backend-security-and-rate-limiting официальный google Настраивает аутентификацию клиентов и доступ API Gateway к бэкендам, а также квоты по проектам. Пригодится для защиты Cloud Run и разбора ошибок квот. CX Codex 360установок marketplace-rate-limiting vtex Учит агента обрабатывать 429 от VTEX API: экспоненциальный backoff с джиттером, чтение заголовков лимитов, circuit breaker и очередь запросов. CX Codex +1 1 000установок api-security-hardening secondsky Скилл со слоями защиты для REST API на Express: лимиты запросов и валидация ввода. Пригодится перед выкладкой API в прод. CX Codex +1 487установок

Из того же набора149

log-analysis Скилл для разбора логов приложений и систем: находит ошибки, повторяющиеся паттерны и первопричину сбоя. Пригодится, когда надо разобраться, почему падает сервис. CX Codex +1 657установок image-optimization Скилл подсказывает агенту, как сжать изображения и перевести их в современные форматы. Пригодится перед деплоем, когда страница тормозит на мобильных сетях. CX Codex +1 656установок requirements-gathering Помогает агенту собрать и записать требования от заказчиков до начала разработки. Пригодится на старте проекта и при планировании фич. CX Codex +1 655установок ruby-rails-application Помогает создавать приложения на Ruby on Rails по архитектуре MVC. Настраивает модели Active Record, REST-контроллеры, JWT-аутентификацию и миграции базы данных. CX Codex +1 655установок information-architecture Скилл помогает спроектировать навигацию, дерево разделов и таксономию для сайта или документации. Он задаёт четырёхэтапный процесс от карточной сортировки до тестирования дерева ссылок. CX Codex +1 634установок internationalization-i18n Скилл для перевода интерфейса на другие языки: извлечение строк, каталоги переводов, плюрализация, форматы дат и чисел, RTL. CX Codex +1 633установок github-actions-workflow Скилл для сборки GitHub Actions: тесты, сборка, сканирование безопасности и деплой прямо из репозитория. CX Codex +1 620установок backup-disaster-recovery Скилл помогает агенту спланировать резервное копирование, восстановление после сбоев и отработку отказа между регионами. CX Codex +1 620установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой