关于 redis-inspect
用于调试时检查 Redis 缓存状态的命令行技能。它可读取主缓存和系统缓存中的键及常见数据类型,删除操作则需显式启用写入。
主要功能
- 01检查值、键、TTL 和键类型
- 02读取哈希、集合和列表
- 03选择主缓存或系统缓存
- 04限制结果数量并输出 JSON
- 05删除键需使用 --writable
适用场景
- 01检查用户会话是否存在
- 02查看生成状态或功能标志
- 03检查键过期时间和缓存数据
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ civitai/ civitai --skill redis-inspect安装后在 Claude Code 中输入/redis-inspect确认已加载。
附带文件.env.examplequery.mjs
详细介绍
Redis 缓存检查器
使用此技能检查 Redis 缓存状态,以便进行调试。
运行命令
node .claude/skills/redis-inspect/query.mjs <command> [options]
命令
| 命令 | 说明 |
|---|---|
get <key> | 获取字符串值 |
keys <pattern> | 查找匹配模式的键(使用 * 作为通配符) |
ttl <key> | 获取 TTL(-1 = 不过期,-2 = 不存在) |
type <key> | 获取键的类型 |
exists <key> | 检查键是否存在 |
hgetall <key> | 获取哈希中的所有字段 |
hget <key> <field> | 获取指定的哈希字段 |
scard <key> | 获取集合基数(数量) |
smembers <key> | 获取集合中的所有成员 |
llen <key> | 获取列表长度 |
lrange <key> | 获取列表元素 |
del <key> | 删除键(需要 --writable) |
info | 获取 Redis 服务信息 |
选项
| 标志 | 说明 |
|---|---|
--sys | 使用系统缓存,而非主缓存 |
--writable | 允许写入操作(del 所必需) |
--json | 输出原始 JSON |
--limit <n> | 限制结果数量(默认值:100) |
缓存类型
项目有两个 Redis 实例:
| 缓存 | 标志 | 环境变量 | 用途 |
|---|---|---|---|
| 主缓存 | (默认) | REDIS_URL | 常规缓存,集群模式,可能丢失 |
| 系统缓存 | --sys | REDIS_SYS_URL | 持久化系统值,单节点 |
主缓存(默认)
常规应用缓存。数据丢失后可以重新生成。
- 用户会话
- 缓存的查询
- 临时数据
- 速率限制计数器
系统缓存(--sys)
持久化的系统配置和状态。包含更关键的数据。
- 功能标志
- 生成限制/状态
- 系统权限
- 作业状态
- 事件配置
示例
# Find keys matching a pattern
node .claude/skills/redis-inspect/query.mjs keys "user:*" --limit 20
node .claude/skills/redis-inspect/query.mjs keys "packed:caches:*"
# Get a value
node .claude/skills/redis-inspect/query.mjs get "session:data2:123456"
# Check system cache values
node .claude/skills/redis-inspect/query.mjs --sys get "system:features"
node .claude/skills/redis-inspect/query.mjs --sys hgetall "system:entity-moderation"
# Check TTL
node .claude/skills/redis-inspect/query.mjs ttl "generation:count:123"
# Inspect a hash
node .claude/skills/redis-inspect/query.mjs hgetall "packed:caches:cosmetics"
node .claude/skills/redis-inspect/query.mjs hget "system:entity-moderation" "entities"
# Check set size
node .claude/skills/redis-inspect/query.mjs scard "queues:seen-images"
# Get server info
node .claude/skills/redis-inspect/query.mjs info
node .claude/skills/redis-inspect/query.mjs --sys info
常见键模式
主缓存
| 模式 | 说明 |
|---|---|
user:* | 用户数据 |
session:* | 会话数据 |
packed:caches:* | 打包/压缩的缓存数据 |
packed:user:* | 打包的用户缓存 |
generation:* | 与生成相关的缓存 |
tag:* | 标签缓存 |
系统缓存
| 模式 | 说明 |
|---|---|
system:* | 系统配置 |
generation:* | 生成限制/状态 |
download:limits | 下载限制 |
job:* | 作业状态 |
event:* | 事件配置 |
new-order:* | New Order 游戏状态 |
daily-challenge:* | 每日挑战配置 |
调试提示
# Check if a user's session exists
node .claude/skills/redis-inspect/query.mjs keys "session:data2:*" --limit 10
# Check generation status
node .claude/skills/redis-inspect/query.mjs --sys get "generation:status"
# Check feature flags
node .claude/skills/redis-inspect/query.mjs --sys hgetall "system:features"
# Check cache memory usage
node .claude/skills/redis-inspect/query.mjs info
写入操作
写入操作需要 --writable 标志,并需获得用户批准:
# Delete a specific key (requires approval)
node .claude/skills/redis-inspect/query.mjs del "some:key" --writable
重要提示:使用 --writable 前,务必征得用户许可。
评论
支持 Markdown