‹ 首页

db-redis

@evolution-foundation · 收录于 5 天前 · 上游提交 2 个月前

Inspect Redis instances configured in .env (DB_REDIS_N_*). Use when the user asks to read keys, check cache state, list keys by pattern, or query info/dbsize on a Redis server. Picks connection by label (e.g. 'cache-dev', 'queue-prod') or numeric index. Read-only in v1 — no SET/DEL/FLUSH exposed.

适合你,如果经常需要查看 Redis 实例中的数据或状态

/ 通过 npx 安装 校验哈希
npx oh-my-skill add evolution-foundation/evo-nexus/db-redis
/ 通过 bash 安装
curl -fsSL https://oh-my-skill.com/install.sh | bash -s -- evolution-foundation/evo-nexus/db-redis
/ 已经装过?验证本机副本,不用重装
npx oh-my-skill verify evolution-foundation/evo-nexus/db-redis
安装目标可用 --agent / --scope 或 --to 明确指定;省略时只会在唯一已存在的 agent 目录上自动选择,零命中或多命中会停止并提示。content_hash 缺失或不一致均拒装。
509GitHub stars
~1.1K最小装载
~1.1K含声明引用
~3.6K文本包总量
索引托管

怎么用

商店整理自技能原文 · 版本 7f5dd76 · 表述以原文为准
它做什么

安装后,Claude 可以检查你在 .env 文件中配置的 Redis 实例。它能列出所有连接、进行健康检查、按模式列出键(使用 SCAN 而非 KEYS)、读取单个键(自动识别类型并返回 TTL)、查看服务器信息和数据库大小。所有操作均为只读。

什么时候触发

当你要求查看 Redis 键、检查缓存状态、按模式列出键或查询服务器信息时触发。

装好后可以这样说
Claude 会执行健康检查(PING)并报告 RTT。
Claude 会返回该键的值、类型和 TTL。
技能原文 SKILL.md作者撰写 · Apache-2.0 · 7f5dd76

db-redis

Inspect Redis instances declared in .env. Same numbered block pattern as every other db-* and SOCIAL_*_N_* integration.

Setup — one-time, per instance

Add a block to .env (gitignored):

DB_REDIS_1_LABEL=cache-dev
DB_REDIS_1_HOST=redis.dev.internal
DB_REDIS_1_PORT=6379
DB_REDIS_1_DB=0                        # numeric DB index (default 0)
# DB_REDIS_1_USERNAME=                 # optional (Redis 6+ ACL)
DB_REDIS_1_PASSWORD=...
# DB_REDIS_1_TLS=false                 # default false
# DB_REDIS_1_ALLOW_WRITE=false         # default false (no write verbs in v1 anyway)
# DB_REDIS_1_QUERY_TIMEOUT=30
# DB_REDIS_1_MAX_ROWS=1000

Full URL alternative (wins when both are set):

DB_REDIS_2_LABEL=queue-prod
DB_REDIS_2_URL=rediss://user:pw@host:6380/0

LABEL is always required.

Usage

All commands output JSON on stdout (safe to pipe). Errors go to stderr.

List configured connections
python3 .claude/skills/db-redis/scripts/db_client.py accounts
Health-check (PING, reports RTT)
python3 .claude/skills/db-redis/scripts/db_client.py test cache-dev
List keys (production-safe — uses SCAN, never KEYS *)
# All keys (up to MAX_ROWS)
python3 .claude/skills/db-redis/scripts/db_client.py keys cache-dev

# Pattern + limit
python3 .claude/skills/db-redis/scripts/db_client.py keys cache-dev 'user:*' 50
Read a single key (auto-detects type)
python3 .claude/skills/db-redis/scripts/db_client.py get cache-dev user:123

Handles string, list, set, hash, zset, stream automatically. Includes TTL in seconds (null if persistent).

Server info
# All sections
python3 .claude/skills/db-redis/scripts/db_client.py info cache-dev

# Specific section (memory, clients, replication, stats, persistence, ...)
python3 .claude/skills/db-redis/scripts/db_client.py info cache-dev memory
Database size (number of keys)
python3 .claude/skills/db-redis/scripts/db_client.py dbsize cache-dev
Output shape

get on a string key:

{
  "ok": true,
  "label": "cache-dev",
  "key": "user:123",
  "type": "string",
  "value": "alice",
  "ttl_seconds": 3600
}

keys:

{
  "ok": true,
  "query_id": "uuid-v4",
  "label": "cache-dev",
  "pattern": "user:*",
  "keys": ["user:1", "user:2", "user:3"],
  "row_count": 3,
  "truncated": false,
  "execution_time_ms": 8
}
Guardrails
  • Read-only verbs only in v1 — GET, SCAN (via keys), TYPE, TTL, LRANGE/SMEMBERS/HGETALL/ZRANGE/XRANGE (via get), INFO, DBSIZE, PING. No SET/DEL/FLUSHDB/FLUSHALL exposed. ALLOW_WRITE reserved for future write commands.
  • SCAN instead of KEYSkeys uses scan_iter with count=200 to avoid blocking the server on production instances.
  • Result capkeys stops at MAX_ROWS. Collection readers (LRANGE/SMEMBERS/ZRANGE/XRANGE inside get) also cap at MAX_ROWS.
  • Decoding — responses decoded as UTF-8 (decode_responses=True). Raw bytes not supported in v1; if you need binary values, store them base64-encoded or ask for a follow-up.
Error codes
  • no_connections, not_found, ambiguous, config_error, usage — same as other db-* skills
  • driver_missingredis (python) not installed
  • connection_failed — network, auth, TLS, or timeout
  • invalid_args — bad limit argument
Workflow
  1. accounts to confirm the label.
  2. dbsize or info memory for a quick overview before listing.
  3. keys <label> '<pattern>' to find what you're looking for — always use a narrow pattern on prod instances.
  4. get <label> <key> to read individual values. TTL is included so you know if the value is ephemeral.
Dependencies
  • Python 3.10+
  • redis (python client) — not pre-installed; uv pip install redis on first use. Works against Redis 5+, Redis Stack, Valkey, and managed services (Upstash, Redis Cloud, AWS ElastiCache, Google Memorystore).
Deep-dive references

Redis isn't covered by PlanetScale's database-skills. Authoritative sources:

按 Apache-2.0 许可原样转载,未经改动 · 在 GitHub 查看 →

评论

登录即可评论;带「已验证安装」的,是发布者名下有本店的安装或持有记录。