[TERMINAL · SKILLS]
> mounting /skills...
> indexing 295 manifests...
> linking agents: claude · codex · gemini · cursor
> ready.
[░░░░░░░░░░░░░░░░░░░░░░░░░░░░] 0%
Terminal.skills
Skills/redis
>

redis

Build applications with Redis — caching, session storage, pub/sub, streams, rate limiting, leaderboards, and queues. Use when tasks involve in-memory data storage, real-time messaging, distributed locking, or performance optimization with caching layers.

#redis#caching#database#pub-sub#queues
terminal-skillsv1.0.0
Works with:claude-codeopenai-codexgemini-clicursor
Source
Trust Score
93/ 100
1.81×
Impact

Validation

Quality
93/ 100
Does it follow best practices?
5 PASS · 1 WEAK
Security
Passed
No known issues
Content review + injection scan
Impact
1.81×
48% → 87% agent success
Avg across 2 eval scenarios
Scored 5/13/2026 · skill v1.0.0
$
✓ Installed redis v1.0.0

Getting Started

  1. Install the skill using the command above
  2. Open your AI coding agent (Claude Code, Codex, Gemini CLI, or Cursor)
  3. Reference the skill in your prompt
  4. The AI will use the skill's capabilities automatically

Example Prompts

  • "Review the open pull requests and summarize what needs attention"
  • "Generate a changelog from the last 20 commits on the main branch"

Documentation

Build fast, scalable applications with Redis as a cache, message broker, session store, or real-time data engine.

Setup

Docker (quickstart)

bash
# Redis 7 with persistence
docker run -d --name redis -p 6379:6379 \
  -v redis-data:/data \
  redis:7-alpine redis-server --appendonly yes --requirepass "your-password"

Connection

python
"""redis_client.py — Redis connection with connection pooling."""
import redis

# Single connection
r = redis.Redis(host="localhost", port=6379, password="your-password", db=0,
                decode_responses=True)  # Auto-decode bytes to strings

# Connection pool (recommended for production)
pool = redis.ConnectionPool(
    host="localhost", port=6379, password="your-password",
    max_connections=20,  # Match your app's concurrency
    decode_responses=True,
)
r = redis.Redis(connection_pool=pool)

# Verify connection
r.ping()  # Returns True
javascript
// redis-client.js — Node.js connection with ioredis
import Redis from 'ioredis';
const redis = new Redis({
  host: 'localhost', port: 6379, password: 'your-password',
  maxRetriesPerRequest: 3,
  retryStrategy: (times) => Math.min(times * 50, 2000),
});

Caching Patterns

Cache-Aside (most common)

python
"""cache_aside.py — Cache-aside pattern with automatic expiration."""
import json

def get_user(user_id: int) -> dict:
    """Fetch user from cache, falling back to database.

    Args:
        user_id: The user's ID.

    Returns:
        User dict from cache or database.
    """
    cache_key = f"user:{user_id}"
    cached = r.get(cache_key)
    if cached:
        return json.loads(cached)

    # Cache miss — fetch from database
    user = db.query("SELECT * FROM users WHERE id = %s", user_id)
    r.setex(cache_key, 3600, json.dumps(user))  # Cache for 1 hour
    return user

def update_user(user_id: int, data: dict):
    """Update user in database and invalidate cache.

    Args:
        user_id: The user's ID.
        data: Fields to update.
    """
    db.execute("UPDATE users SET ... WHERE id = %s", user_id)
    r.delete(f"user:{user_id}")  # Invalidate — next read repopulates

Write-Through Cache

python
"""write_through.py — Write-through: update cache and DB together."""

def save_product(product_id: str, data: dict):
    """Save product to both database and cache atomically.

    Args:
        product_id: Product identifier.
        data: Product data dict.
    """
    # Write to DB first (source of truth)
    db.execute("INSERT INTO products ... ON CONFLICT UPDATE ...", data)

    # Then update cache
    r.setex(f"product:{product_id}", 7200, json.dumps(data))  # 2h TTL

Session Storage

python
"""session_store.py — HTTP session storage in Redis."""
import secrets, json

SESSION_TTL = 86400  # 24 hours

def create_session(user_id: int, metadata: dict = None) -> str:
    """Create a new session and return the session token.

    Args:
        user_id: Authenticated user's ID.
        metadata: Optional session metadata (IP, user-agent, etc.).
    """
    token = secrets.token_urlsafe(32)
    session_data = {"user_id": user_id, "created_at": time.time(), **(metadata or {})}
    r.setex(f"session:{token}", SESSION_TTL, json.dumps(session_data))
    # Track active sessions per user for "log out everywhere"
    r.sadd(f"user_sessions:{user_id}", token)
    return token

def get_session(token: str) -> dict | None:
    """Validate and return session data, extending TTL on access.

    Args:
        token: Session token from cookie/header.
    """
    data = r.get(f"session:{token}")
    if not data:
        return None
    r.expire(f"session:{token}", SESSION_TTL)  # Sliding expiration
    return json.loads(data)

def destroy_all_sessions(user_id: int):
    """Invalidate all sessions for a user (password change, security breach).

    Args:
        user_id: The user whose sessions to destroy.
    """
    tokens = r.smembers(f"user_sessions:{user_id}")
    if tokens:
        r.delete(*[f"session:{t}" for t in tokens])
    r.delete(f"user_sessions:{user_id}")

Rate Limiting

Sliding Window

python
"""rate_limiter.py — Sliding window rate limiter using sorted sets."""
import time

def is_rate_limited(key: str, limit: int, window_seconds: int) -> bool:
    """Check if a key has exceeded its rate limit.

    Args:
        key: Identifier (e.g., IP address, API key, user ID).
        limit: Maximum requests allowed in the window.
        window_seconds: Window size in seconds.

    Returns:
        True if rate limited, False if request is allowed.
    """
    now = time.time()
    window_start = now - window_seconds
    pipe = r.pipeline()
    rk = f"ratelimit:{key}"

    pipe.zremrangebyscore(rk, 0, window_start)  # Remove expired entries
    pipe.zadd(rk, {f"{now}": now})              # Add current request
    pipe.zcard(rk)                               # Count requests in window
    pipe.expire(rk, window_seconds)              # Auto-cleanup

    results = pipe.execute()
    count = results[2]
    return count > limit

For smoother rate limiting, consider a token bucket implementation using a Lua script that tracks tokens and refill timestamps in a Redis hash.

Pub/Sub

python
"""pubsub.py — Real-time messaging with Redis pub/sub."""
import threading

def publish_event(channel: str, event: dict):
    """Publish an event to a channel.

    Args:
        channel: Channel name (e.g., "notifications:user:123").
        event: Event data dict — serialized to JSON.
    """
    r.publish(channel, json.dumps(event))

def subscribe_to_events(pattern: str, callback):
    """Subscribe to channels matching a pattern.

    Args:
        pattern: Glob pattern (e.g., "notifications:*").
        callback: Function called with (channel, data) for each message.
    """
    ps = r.pubsub()
    ps.psubscribe(pattern)

    def listener():
        for msg in ps.listen():
            if msg["type"] == "pmessage":
                callback(msg["channel"], json.loads(msg["data"]))

    thread = threading.Thread(target=listener, daemon=True)
    thread.start()
    return ps  # Return for cleanup: ps.punsubscribe()

Streams (persistent messaging)

Unlike pub/sub, streams persist messages and support consumer groups. Use XADD to add events, XGROUP CREATE to create consumer groups, and XREADGROUP/XACK to consume and acknowledge messages. Set maxlen on XADD to cap stream memory.

Distributed Locking

python
"""distributed_lock.py — Distributed lock using Redis (Redlock pattern)."""

def acquire_lock(name: str, timeout: int = 10) -> str | None:
    """Acquire a distributed lock.

    Args:
        name: Lock name (e.g., "process:invoice:12345").
        timeout: Lock expiration in seconds (prevents deadlocks).

    Returns:
        Lock token if acquired, None if already held.
    """
    token = secrets.token_urlsafe(16)
    acquired = r.set(f"lock:{name}", token, nx=True, ex=timeout)
    return token if acquired else None

# Lua script ensures atomic check-and-delete (only owner can release)
RELEASE_SCRIPT = """
if redis.call('GET', KEYS[1]) == ARGV[1] then
    return redis.call('DEL', KEYS[1])
end
return 0
"""

def release_lock(name: str, token: str) -> bool:
    """Release a lock (only if we own it).

    Args:
        name: Lock name.
        token: Token returned by acquire_lock.
    """
    return r.eval(RELEASE_SCRIPT, 1, f"lock:{name}", token) == 1

Leaderboards

Use sorted sets (ZADD, ZREVRANGE, ZREVRANK) for real-time leaderboards. ZADD sets scores, ZREVRANGE returns top N entries, and ZREVRANK gets a member's rank.

Production Configuration

Key settings: maxmemory 2gb, maxmemory-policy allkeys-lru, appendonly yes, appendfsync everysec. Always set a maxmemory limit to prevent out-of-memory crashes.

Guidelines

  • Use SETEX/SET ... EX with TTLs for all cache keys -- keys without expiration leak memory
  • Pipeline multiple commands when doing batch operations -- reduces round trips
  • Use Lua scripts for atomic multi-step operations (check-and-set, compare-and-delete)
  • Prefer Streams over pub/sub when message persistence matters -- pub/sub drops messages if no subscriber is listening
  • Key naming convention: use colons as separators (user:123:profile, cache:product:456)
  • Monitor memory usage with INFO memory -- Redis is in-memory, running out kills the process
  • Use SCAN instead of KEYS * in production -- KEYS blocks the server on large datasets
  • Connection pooling is essential -- creating a new connection per request adds 1-2ms latency
  • Redis is single-threaded for commands -- one slow Lua script blocks everything

Information

Version
1.0.0
Author
terminal-skills
Category
Development
License
Apache-2.0

Use Cases

>Build a Customer Health Scoring System
>Build a Type-Safe API with Redis Caching
>Implement Caching and Full-Text Search Infrastructure
>Build a Real-Time Analytics Dashboard
>Build a Reliable Webhook Processing Pipeline
>Build an AI-Powered Log Anomaly Detector
>Build an API Gateway with Plugin System
>Build a Data Pipeline with Schema Evolution
>Build a Distributed Task Queue with Priorities
>Build a GraphQL API with Schema Stitching
>Build a Real-Time Analytics Dashboard with ClickHouse
>Build a Serverless Image Optimization CDN
>Build a User Activity Feed with Fanout
>Build Event Sourcing for Financial Transactions
>Build a GraphQL API with DataLoader and Caching
>Build OAuth SSO Integration with Multiple Providers
>Build Self-Healing Infrastructure with Health Checks
>Build an ML Model Serving Pipeline
>Build a Real-Time Multiplayer Game Server
>Build a Server-Sent Events Real-Time Dashboard
>Build a Tenant-Aware Job Scheduler
>Build an AI Content Moderation Pipeline
>Build a Data Export Pipeline with Streaming
>Build Database Connection Pooling with Health Checks
>Build a Drag-and-Drop Kanban Board
>Build an Email Notification System with Templates
>Build Secrets Management with Automatic Rotation
>Build a Webhook Delivery System with Retries
>Build a Background Job Monitoring Dashboard
>Build File Upload with Presigned URLs
>Build an Idempotent API with Request Deduplication
>Build Multi-Region Data Replication
>Build a Rate Limiter with Sliding Window
>Build a Smart Caching Layer with Invalidation
>Build an Event-Sourced Fintech Ledger with CQRS
>Build a Real-Time Fraud Detection Pipeline
>Build a White-Label SaaS Platform with Tenant Theming
>Implement End-to-End Encryption for User Data
>Build an AI-Powered Customer Onboarding Flow
>Build an Automated Incident Response System
>Build a Data Mesh with Self-Serve Analytics
>Build a Developer Portal with API Marketplace
>Build a Distributed Rate Limiter for an API Gateway
>Build an ML Feature Store for Production Recommendations
>Build a Cost-Aware Kubernetes Autoscaler
>Build an Intelligent Document Processing Pipeline
>Build a Real-Time Collaborative Spreadsheet
>Build AI-Powered Search with Semantic Ranking
>Build an Automated API Versioning and Deprecation System
>Build an Automated Data Quality Monitoring System
>Migrate a Production Database with Zero Downtime
>Build a GDPR-Compliant Data Deletion Pipeline
>Build an LLM Gateway with Fallback and Cost Control
>Build a Secure File Sharing Platform with Audit Trail
>Build an AI Code Review Bot for Pull Requests
>Build AI-Powered Customer Support Triage
>Build a Config-Driven Notification System
>Build a Multi-Region Deployment with Edge Routing
>Build a Payments Reconciliation Engine
>Build Real-Time Collaboration with CRDTs
>Build a Self-Healing Kubernetes Operator
>Build an A/B Testing Platform with Statistical Rigor
>Build an Automated Compliance Evidence Collector
>Build a Distributed Task Scheduler with Exactly-Once Execution
>Build a Headless CMS with Live Preview
>Build an Internal Feature Marketplace for Platform Teams
>Build a Smart Email Routing and Auto-Response System
>Build an AI Document Extraction Pipeline
>Build a Data Pipeline Orchestrator with Lineage Tracking
>Build a Real-Time Permissions System with Zanzibar
>Build a WebSocket Gateway for Real-Time Features
>Build an Automated Load Testing Framework
>Build an Immutable Audit Log for Regulated Industries
>Build a Mobile Push Notification Service
>Build a Real-Time Collaborative Code Editor
>Build a Serverless Image Processing Pipeline
>Build Unified Search Across Multiple Data Sources
>Build an AI Meeting Summarizer with Action Items
>Build an Event-Sourced Shopping Cart
>Build a Graceful Degradation System for Microservices
>Build a Real-Time Fraud Scoring API
>Build AI Search Autocomplete with Embeddings
>Build a Bulk Data Export System
>Build a Developer Portal with API Key Management
>Build a Distributed Cron Job Scheduler
>Build Event-Driven Notification Preferences
>Build Event-Sourced Inventory Management
>Build GraphQL Subscriptions for a Live Dashboard
>Build an Internal Feature Request Voting System
>Build a Privacy Consent Management Platform
>Build an AI-Powered Customer Segmentation Engine
>Build an Automated Incident Response Runbook
>Build a Container Orchestration Dashboard
>Build an Infrastructure Cost Allocation System
>Build an Automated Security Scanner for Dependencies
>Build a Database Query Performance Analyzer
>Build an Event-Driven Notification Orchestrator
>Build Multi-Environment Configuration Management
>Build a Real-Time Collaborative Whiteboard
>Build a Webhook Signature Verification System
>Build an A/B Testing Platform
>Build an AI Agent with Tool Calling
>Build an API Analytics Dashboard
>Build an Audit Trail with Immutable Log
>Build a Bulk Import System
>Build a Calendar Booking System
>Build a Checkout Flow with Stripe
>Build a Changelog API with In-App Announcements
>Build Container Health Monitoring
>Build a Content Moderation Pipeline
>Build a CSV Export with Streaming
>Build Custom Domain Mapping for SaaS
>Build Disaster Recovery with Automated Failover
>Build a Drag-and-Drop Kanban Board
>Build an Email Verification Flow
>Build Error Tracking with Source Maps
>Build a File Manager with S3
>Build Full-Text Search with PostgreSQL
>Build a Gamification System with Points and Badges
>Build Geolocation-Based Service Routing
>Build an In-App Notification Center
>Build Magic Link Authentication
>Build an MCP Server for Internal Tools
>Build a Dynamic Pricing Engine
>Build a Multi-Step Form Wizard
>Build an Observability Stack with OpenTelemetry
>Build an Order Tracking System
>Build a Product Recommendation Engine
>Build a RAG Pipeline with Vector Search
>Build an RBAC Permission System
>Build a Rich Text Editor with Collaboration
>Build a Session Management System
>Build a Slack Bot for Team Automation
>Build Soft Delete with Restore and Retention
>Build a Subscription Management System
>Build a Survey Builder with Analytics
>Build a Tax Calculation Engine
>Build Tenant Data Isolation for Multi-Tenant SaaS
>Build a Threaded Comment System
>Build a Two-Factor Authentication System
>Build Usage Metering for SaaS Billing
>Build a User Onboarding Flow with Progress Tracking
>Build a Video Transcoding Pipeline
>Build a Waitlist with Referral Boost
>Build a Webhook Relay System
>Build a Workflow Engine with State Machines
>Build a Cookie Consent Manager
>Build an E-Signature System
>Build a Media Asset Library
>Build a Dynamic OG Image Generator
>Build a Privacy Dashboard for Data Subject Requests
>Build a QR Code Generator API
>Build a URL Shortener with Analytics
>Build a Bot Detection System
>Build a Chargeback Protection System
>Build a Health Check Endpoint System
>Build Multi-Currency Pricing
>Build an On-Call Rotation Manager
>Build a Performance Budget Monitor
>Build an Announcement Banner System
>Build an API Playground
>Build a Dark Mode Theme System
>Build a Digest Email System
>Build Feature Tour Onboarding
>Build an IP Geolocation Service
>Build SMS OTP Verification
>Build an Affiliate Tracking System
>Build a Coupon and Discount Engine
>Build a Leaderboard System
>Build a Payment Link Generator
>Build a Poll and Voting System
>Build a Social Feed System
>Build an SSO Provider
>Build a Device Management System
>Build a Dunning and Failed Payment Recovery System
>Build E-Commerce Product Search
>Build a Geo-Fencing System
>Build an Invite-Only Access System
>Build a Link Preview Generator
>Build a PDF Template Engine
>Build a Dynamic Pricing Engine
>Build a Screenshot API
>Build a Shipping Rate Calculator
>Build a Terms Acceptance Tracker
>Build a Warehouse Inventory System
>Build a Digital Asset Management System
>Build a Data Subject Request Handler
>Build an OAuth Provider
>Build a Proration Billing System
>Build an Email Template Builder
>Build a Web Push Notification Service
>Build a CAPTCHA Verification System
>Build a GraphQL Playground
>Build an i18n Translation Management System
>Build an In-App Messaging System
>Build an IP Blocking Firewall
>Build a Sandbox Environment System
>Build a Tooltip Guide System
>Build an API Key Management System
>Build a Circuit Breaker Pattern
>Build a Config Management Service
>Build an Event Sourcing System
>Build a Distributed Task Queue
>Build a Multi-Step Approval Workflow
>Build Real-Time Collaboration Cursors
>Build a Tenant Onboarding Wizard
>Build an AI Agent Orchestration Loop
>Build Browser Automation for AI Agents
>Build a Context Database for AI Agents
>Build a Generative UI Framework
>Build a Real-Time News Aggregation Dashboard
>Build a Voice Synthesis API
>Build an AI Workflow Builder
>Build a DNS Domain Management System
>Build an LLM Prompt Management System
>Build a Semantic Search Engine
>Build a Streaming Data Pipeline
>Build a Video Transcoding Queue
>Build a Workspace CLI Tool
>Build an Automated Research Agent
>Build a Data Lineage Tracker
>Build a Document AI Extraction Pipeline
>Build an Edge Function Runtime
>Build an Infrastructure Health Monitor
>Build an LLM-Powered Stock Analyzer
>Build a Prompt Management Platform
>Build an RSS Feed Aggregation Service
>Build a Structured LLM Output Parser
>Build an Auto-Scaling Engine
>Build a Data Masking Engine
>Build a Database Sharding Layer
>Build a Dependency Graph Analyzer
>Build a Credential Vault
>Build a Dynamic Form Builder
>Build a Sitemap Generator
>Build a Usage Metering and Billing Engine
>Build an API Mock Server
>Build a File Format Converter API
>Build a Markdown Collaborative Editor
>Build a Rolling Deployment Engine
>Build a Bidirectional Data Sync Engine
>Build an Entity Extraction Pipeline
>Build a Spreadsheet Formula Engine
>Build a Transactional Outbox Pattern
>Build an Error Boundary System
>Build a Tenant Isolation Testing Framework
>Build a PDF Merge and Fill Service
>Build a Subscription Lifecycle Manager
>Build a Workspace Automation CLI
>Build an Embeddable Chat Widget
>Build an Inbound Email Processor
>Build a Token Bucket Rate Limiter
>Build an Admin Impersonation System
>Build a Cron Job Dashboard
>Build a Custom Domain SSL Provisioner
>Build an Outgoing Webhook Builder
>Build an API Usage Analytics Dashboard
>Build a Content Recommendation Engine
>Build a Data Retention Manager
>Build Geo-Aware CDN Routing
>Build an Image CDN Proxy
>Build an NPS Feedback System
>Build a Release Note Widget
>Build a Team Permission Matrix
>Build a Slow Query Analyzer
>Build a Tenant Usage Dashboard
>Build an AI Text Classification API
>Build an API Idempotency Layer
>Build an API Gateway Plugin System
>Build a Feature Flag Audit System
>Build a Content Calendar System
>Build a Worker Pool Manager
>Build a Payment Reconciliation Engine
>Build a Compliance Audit Checklist System
>Build a Media Transcoding Pipeline
>Build a Virtual Scroll Table
>Build a Content Moderation Queue
>Build a Distributed Lock Manager
>Build a Team Invitation System
>Build a Changelog RSS Feed
>Build a Database Query Profiler
>Build an AI Agent Evaluation Framework
>Build a Notification Template Engine
>Build Interactive API Documentation
>Build a Request Tracing System
>Build an API Key Rotation Scheduler
>Build a Resource Usage Limiter
>Build a Config Drift Detector
>Build a Webhook Event Log
>Build AI-Powered Search Ranking
>Build Feature Usage Analytics
>Build Smart Notification Batching
>Build Automated Backup Verification
>Build an API Error Budget Tracker
>Build an API Contract Changelog
>Build a Customer Data Export System
>Build a Deployment Rollback Manager
>Build a Scheduled Report Generator
>Build an IP Reputation Scoring System
>Build an API Sandbox Environment
>Build an Event Bus System
>Build a Long-Running Task Tracker
>Build a Progressive Web App Shell
>Build a User Session Manager
>Build a Database Connection Health Monitor
>Build a Customer Self-Service Portal
>Build a Secrets Scanner
>Build a Workflow State Machine
>Build a Database Index Advisor
>Build Smart Cache Invalidation
>Build a Content Versioning System
>Build a QR Code Generator Service
>Build an API Response Cache Layer
>Build a Database Read Replica Router
>Build a Session Replay System
>Build an AI Image Alt Text Generator
>Build an AI Prompt Chain Executor
>Build an AI Voice Transcription Service
>Build Browser Stealth Automation
>Build a Customer Feedback Analyzer
>Build a Dark Launch System
>Build a Design Editor Canvas
>Build GEO-SEO Optimization
>Build a GraphQL Federation Gateway
>Build a Database Archival System
>Build a Serverless Function Deployer
>Build a Webhook Debug Tool
>Build a Knowledge Graph Builder
>Build a Customer Onboarding Checklist
>Build an API Health Dashboard
>Build a CI/CD Pipeline Orchestrator
>Build an API Monetization Platform
>Build Web3 Wallet Integration
>Build an App Store Screenshot Generator
>Build a Context Compression Engine
>Build an Agent Security Framework
>Build an IoT Device Dashboard
>Build a Kubernetes Operator
>Build a Social Media Scheduler
>Build an Email Deliverability Monitor
>Build an SEO Audit Tool
>Build a Feature-Rich Discord Bot
>Build a Real-Time Multiplayer Game Backend with Rooms and Leaderboards
>Build a High-Throughput AI Batch Processing Pipeline
>Build a Semantic Cache Layer for LLM Calls