What problem does it solve? Redis bugs almost always come from non-atomic read-then-write sequences, missing TTLs, stale caches, and locks released by the wrong process. This Skill provides correct, production-tested patterns for the most common Redis use cases so you avoid race conditions, stampedes, and silent data loss. ## Core Features & Use Cases - Data structure selection: Maps use cases (sessions, leaderboards, feeds, counters) to the right Redis structure with naming conventions. - Caching patterns: Cache-aside, write-through, tag-based invalidation, and stampede protection via locks or probabilistic early expiry. - Rate limiting: Fixed-window and atomic sliding-window implementations in Lua, including the boundary-double-spend flaw. - Distributed locks: Token-based acquire/release with Lua check-and-delete, TTL sizing, and idempotency guidance. - Streams vs pub/sub: Consumer groups, acknowledgement, and pending-entry recovery for at-least-once delivery. - Use Case: You are adding a rate limiter to an API. The Skill gives you the atomic sliding-window Lua script and explains why the naive INCR/EXPIRE approach lets clients exceed the limit at window boundaries. ## Quick Start Ask the AI to implement a Redis sliding-window rate limiter for 100 requests per minute per user using an atomic Lua script.