upstash-ratelimit-js — скилл для Claude Code: лимиты запросов
Скилл подключает ИИ-агента к SDK @upstash/ratelimit: помогает поставить лимит запросов в API-роуте, middleware Next.js или на edge-рантайме.
npx skills add upstash/skills --skill upstash-ratelimit-js -a claude-codeЧто делает upstash-ratelimit-js
Скилл описывает работу с @upstash/ratelimit — TypeScript/JavaScript SDK поверх Upstash Redis. Агент получает инструкции по трём алгоритмам: fixed window, sliding window и token bucket. Выбор между ними — первое, на чём спотыкаются: sliding window даёт ровнее счёт на границах окна, fixed window дешевле по командам Redis.
Внутри набора несколько файлов. algorithms.md разбирает поведение алгоритмов, pricing-cost.md — цену и расход команд Redis, features.md — префиксы, кастомные ключи и поведенческие опции, methods-getting-started.md — справочник по методам SDK, traffic-protection.md — защита от абьюза и ботов. Быстрый старт выглядит так: создаёте Redis с url и token, затем Ratelimit с нужным лимитером и вызываете limiter.limit("user-id").
Для работы нужны учётные данные Upstash Redis — url и token. Без них пример из скилла не запустится, поэтому ключи стоит завести до того, как просить агента писать код. Лимитировать можно по пользователю, IP, API-ключу или тенанту, задавая префиксы и свои ключи.
Какие задачи решает
- поставить лимит на API-роут и отдавать 429 при превышении
- выбрать между fixed window, sliding window и token bucket
- ограничить запросы по IP, пользователю или API-ключу
- защитить форму входа и регистрации от брутфорса
- прикинуть расход команд Redis на лимитирование
Примеры запросов агенту
- Добавь rate limit на этот API-роут через @upstash/ratelimit, 5 запросов на 10 секунд
- Сделай лимитер в middleware Next.js по IP и верни 429 при превышении
- Какой алгоритм выбрать для лимита по API-ключу — sliding window или token bucket?
Как установить upstash-ratelimit-js
1Через Skills CLI (Vercel)
npx skills add upstash/skills --skill upstash-ratelimit-js -a claude-code2Вручную: положить файлы
~/.claude/skills/upstash-ratelimit-js/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/upstash-ratelimit-js/
1Через Skills CLI (Vercel)
npx skills add upstash/skills --skill upstash-ratelimit-js -a codex2Вручную: положить файлы
.agents/skills/upstash-ratelimit-js/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add upstash/skills --skill upstash-ratelimit-js -a cursor2Вручную: положить файлы
.cursor/skills/upstash-ratelimit-js/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install upstash/skills upstash-ratelimit-js2Вручную: положить файлы
.github/skills/upstash-ratelimit-js/SKILL.md1Через Skills CLI (Vercel)
npx skills add upstash/skills --skill upstash-ratelimit-js -a gemini-cli2Командой платформы
gemini skills install https://github.com/upstash/skills --path skills/upstash-ratelimit-jsВручную: положить файлы
.devin/skills/upstash-ratelimit-js/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add upstash/skills --skill upstash-ratelimit-js -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора10
Похожие
Рядом в теме «Бэкенд и API»
Всё по теме «Бэкенд и API» →Вопросы о upstash-ratelimit-js
Как установить upstash-ratelimit-js в Claude?
Выполните npx skills add upstash/skills --skill upstash-ratelimit-js -a claude-code. Скилл окажется в ~/.claude/skills/upstash-ratelimit-js/SKILL.md.
Что делает upstash-ratelimit-js?
Даёт агенту справочник по SDK @upstash/ratelimit: алгоритмы, методы, префиксы и кастомные ключи, оценка стоимости команд Redis, защита от абьюза.
Что нужно, чтобы скилл заработал?
Учётные данные Upstash Redis — url и token. В примере быстрого старта они передаются в конструктор Redis.
Исходный текст
SKILL.md · MIT
---
name: upstash-ratelimit-js
description: Rate limiting for serverless and edge apps with the @upstash/ratelimit TypeScript/JavaScript SDK backed by Upstash Redis. Use when adding a rate limiter or throttling to an API route, Next.js middleware, Vercel Edge, Cloudflare Workers, or any HTTP endpoint; returning 429 Too Many Requests; choosing between fixed window, sliding window, and token bucket algorithms; limiting per user, IP, API key, or tenant with prefixes and custom keys; protecting login, signup, form, or AI endpoints from abuse, bots, and brute force; using deny lists, ephemeral caching, analytics, timeouts, and multi-region rate limits; or estimating the Redis command cost of rate limiting. Also use when the user says rate limit, rate-limiting, throttle, quota, request limits, or traffic protection.
license: MIT
metadata:
author: Upstash
homepage: https://upstash.com
---
# Rate Limit TS SDK
## Quick Start
- Install the SDK and connect to Redis.
- Create a rate limiter and apply it to incoming operations.
Example:
```ts
import { Ratelimit } from "@upstash/ratelimit";
import { Redis } from "@upstash/redis";
const redis = new Redis({ url: "<url>", token: "<token>" });
const limiter = new Ratelimit({ redis, limiter: Ratelimit.slidingWindow(5, "10s") });
const { success } = await limiter.limit("user-id");
if (!success) {
// throttled
}
```
## Other Skill Files
- **algorithms.md**: Describes all available rate‑limiting algorithms and how they behave.
- **pricing-cost.md**: Explains pricing, Redis cost implications, and operational considerations.
- **features.md**: Lists SDK features such as prefixes, custom keys, and behavioral options.
- **methods-getting-started.md**: Full method reference for the SDK's API and getting started guide.
- **traffic-protection.md**: Guidance on applying rate limiting for traffic shaping, abuse prevention, and protection patterns.
© Upstash · MIT · upstash/skills