name: rate-limiter-designer description: Design and implement rate limiting strategies allowed-tools:
- Read
- Write
- Edit
- Glob
- Grep
- Bash
Rate Limiter Designer Skill
Overview
This skill designs and implements rate limiting strategies including token bucket, sliding window, and quota systems to protect APIs while providing fair access.
Capabilities
- Implement token bucket and leaky bucket algorithms
- Configure per-key and per-user limits
- Design quota and usage systems
- Generate rate limit HTTP headers
- Implement distributed rate limiting
- Configure burst allowances
- Design rate limit tiers
- Handle rate limit exceeded responses
Target Processes
- Platform API Gateway Design
- Authentication and Authorization Patterns
- Developer Portal Implementation
Integration Points
- Redis for distributed state
- Rate limiting middleware
- API gateway plugins
- CDN rate limiting
- Database-backed quotas
Input Requirements
- Rate limit requirements
- Tier definitions
- Burst allowances
- Distribution strategy
- Header conventions
Output Artifacts
- Rate limiting implementation
- Quota management system
- Rate limit headers
- Tier configuration
- Admin management API
- Usage tracking
Usage Example
skill:
name: rate-limiter-designer
context:
algorithm: sliding-window
storage: redis
tiers:
- name: free
requests: 100
window: 1h
burst: 10
- name: pro
requests: 10000
window: 1h
burst: 100
headers:
limit: X-RateLimit-Limit
remaining: X-RateLimit-Remaining
reset: X-RateLimit-Reset
responses:
exceeded:
status: 429
retryAfter: true
Best Practices
- Use sliding window for accuracy
- Include burst allowances
- Return standard rate limit headers
- Provide clear Retry-After values
- Implement distributed limiting
- Design fair quota systems