## Supported commands ![Commands Coverage: 67%](https://img.shields.io/badge/coverage-67%25-orange.svg)

> PRs welcome :heart:

| redis                       |      ioredis       |    ioredis-mock    |
| --------------------------- | :----------------: | :----------------: |
| [acl]                       | :white_check_mark: |        :x:         |
| [append]                    | :white_check_mark: | :white_check_mark: |
| [asking]                    | :white_check_mark: | :white_check_mark: |
| [auth]                      | :white_check_mark: | :white_check_mark: |
| [bgrewriteaof]              | :white_check_mark: | :white_check_mark: |
| [bgsave]                    | :white_check_mark: | :white_check_mark: |
| [bitcount]                  | :white_check_mark: | :white_check_mark: |
| [bitfield]                  | :white_check_mark: |        :x:         |
| [bitfield_ro]               | :white_check_mark: |        :x:         |
| [bitop]                     | :white_check_mark: |        :x:         |
| [bitpos]                    | :white_check_mark: |        :x:         |
| [blmove]                    | :white_check_mark: |        :x:         |
| [blmpop]                    | :white_check_mark: |        :x:         |
| [blpop]                     | :white_check_mark: |        :x:         |
| [brpop]                     | :white_check_mark: |        :x:         |
| [brpoplpush]                | :white_check_mark: | :white_check_mark: |
| [bzmpop]                    | :white_check_mark: |        :x:         |
| [bzpopmax]                  | :white_check_mark: |        :x:         |
| [bzpopmin]                  | :white_check_mark: |        :x:         |
| [client]                    | :white_check_mark: |        :x:         |
| [cluster]                   | :white_check_mark: | :white_check_mark: |
| [command]                   | :white_check_mark: | :white_check_mark: |
| [config]                    | :white_check_mark: | :white_check_mark: |
| [copy]                      | :white_check_mark: |        :x:         |
| [dbsize]                    | :white_check_mark: | :white_check_mark: |
| [decr]                      | :white_check_mark: | :white_check_mark: |
| [decrby]                    | :white_check_mark: | :white_check_mark: |
| [del]                       | :white_check_mark: | :white_check_mark: |
| [discard]                   | :white_check_mark: | :white_check_mark: |
| [echo]                      | :white_check_mark: | :white_check_mark: |
| [eval]                      | :white_check_mark: | :white_check_mark: |
| [eval_ro]                   | :white_check_mark: |        :x:         |
| [evalsha]                   | :white_check_mark: | :white_check_mark: |
| [evalsha_ro]                | :white_check_mark: |        :x:         |
| [exists]                    | :white_check_mark: | :white_check_mark: |
| [expire]                    | :white_check_mark: | :white_check_mark: |
| [expireat]                  | :white_check_mark: | :white_check_mark: |
| [expiretime]                | :white_check_mark: | :white_check_mark: |
| [failover]                  | :white_check_mark: | :white_check_mark: |
| [fcall]                     | :white_check_mark: |        :x:         |
| [fcall_ro]                  | :white_check_mark: |        :x:         |
| [flushall]                  | :white_check_mark: | :white_check_mark: |
| [flushdb]                   | :white_check_mark: | :white_check_mark: |
| [function]                  | :white_check_mark: |        :x:         |
| [geoadd]                    | :white_check_mark: |        :x:         |
| [geodist]                   | :white_check_mark: |        :x:         |
| [geohash]                   | :white_check_mark: |        :x:         |
| [geopos]                    | :white_check_mark: |        :x:         |
| [georadius]                 | :white_check_mark: |        :x:         |
| [georadius_ro]              | :white_check_mark: |        :x:         |
| [georadiusbymember]         | :white_check_mark: |        :x:         |
| [georadiusbymember_ro]      | :white_check_mark: |        :x:         |
| [geosearch]                 | :white_check_mark: |        :x:         |
| [geosearchstore]            | :white_check_mark: |        :x:         |
| [get]                       | :white_check_mark: | :white_check_mark: |
| [getbit]                    | :white_check_mark: | :white_check_mark: |
| [getdel]                    | :white_check_mark: | :white_check_mark: |
| [getex]                     | :white_check_mark: | :white_check_mark: |
| [getrange]                  | :white_check_mark: | :white_check_mark: |
| [getset]                    | :white_check_mark: | :white_check_mark: |
| [hdel]                      | :white_check_mark: | :white_check_mark: |
| [hexists]                   | :white_check_mark: | :white_check_mark: |
| [hexpire]                   | :white_check_mark: |        :x:         |
| [hget]                      | :white_check_mark: | :white_check_mark: |
| [hgetall]                   | :white_check_mark: | :white_check_mark: |
| [hincrby]                   | :white_check_mark: | :white_check_mark: |
| [hincrbyfloat]              | :white_check_mark: | :white_check_mark: |
| [hkeys]                     | :white_check_mark: | :white_check_mark: |
| [hlen]                      | :white_check_mark: | :white_check_mark: |
| [hmget]                     | :white_check_mark: | :white_check_mark: |
| [hmset]                     | :white_check_mark: | :white_check_mark: |
| [hpexpire]                  | :white_check_mark: |        :x:         |
| [hrandfield]                | :white_check_mark: | :white_check_mark: |
| [hscan]                     | :white_check_mark: | :white_check_mark: |
| [hset]                      | :white_check_mark: | :white_check_mark: |
| [hsetnx]                    | :white_check_mark: | :white_check_mark: |
| [hstrlen]                   | :white_check_mark: | :white_check_mark: |
| [hvals]                     | :white_check_mark: | :white_check_mark: |
| [incr]                      | :white_check_mark: | :white_check_mark: |
| [incrby]                    | :white_check_mark: | :white_check_mark: |
| [incrbyfloat]               | :white_check_mark: | :white_check_mark: |
| [info]                      | :white_check_mark: | :white_check_mark: |
| [keys]                      | :white_check_mark: | :white_check_mark: |
| [lastsave]                  | :white_check_mark: | :white_check_mark: |
| [lcs]                       | :white_check_mark: |        :x:         |
| [lindex]                    | :white_check_mark: | :white_check_mark: |
| [linsert]                   | :white_check_mark: | :white_check_mark: |
| [llen]                      | :white_check_mark: | :white_check_mark: |
| [lmove]                     | :white_check_mark: | :white_check_mark: |
| [lmpop]                     | :white_check_mark: | :white_check_mark: |
| [lolwut]                    | :white_check_mark: | :white_check_mark: |
| [lpop]                      | :white_check_mark: | :white_check_mark: |
| [lpos]                      | :white_check_mark: |        :x:         |
| [lpush]                     | :white_check_mark: | :white_check_mark: |
| [lpushx]                    | :white_check_mark: | :white_check_mark: |
| [lrange]                    | :white_check_mark: | :white_check_mark: |
| [lrem]                      | :white_check_mark: | :white_check_mark: |
| [lset]                      | :white_check_mark: | :white_check_mark: |
| [ltrim]                     | :white_check_mark: | :white_check_mark: |
| [mget]                      | :white_check_mark: | :white_check_mark: |
| [monitor]                   | :white_check_mark: |        :x:         |
| [move]                      | :white_check_mark: |        :x:         |
| [mset]                      | :white_check_mark: | :white_check_mark: |
| [msetnx]                    | :white_check_mark: | :white_check_mark: |
| [object]                    | :white_check_mark: | :white_check_mark: |
| [persist]                   | :white_check_mark: | :white_check_mark: |
| [pexpire]                   | :white_check_mark: | :white_check_mark: |
| [pexpireat]                 | :white_check_mark: | :white_check_mark: |
| [pexpiretime]               | :white_check_mark: | :white_check_mark: |
| [pfadd]                     | :white_check_mark: |        :x:         |
| [pfcount]                   | :white_check_mark: |        :x:         |
| [pfmerge]                   | :white_check_mark: |        :x:         |
| [ping]                      | :white_check_mark: | :white_check_mark: |
| [psetex]                    | :white_check_mark: | :white_check_mark: |
| [psubscribe]                | :white_check_mark: | :white_check_mark: |
| [psync]                     | :white_check_mark: |        :x:         |
| [pttl]                      | :white_check_mark: | :white_check_mark: |
| [publish]                   | :white_check_mark: | :white_check_mark: |
| [pubsub]                    | :white_check_mark: | :white_check_mark: |
| [punsubscribe]              | :white_check_mark: | :white_check_mark: |
| [quit]                      | :white_check_mark: | :white_check_mark: |
| [randomkey]                 | :white_check_mark: | :white_check_mark: |
| [readonly]                  | :white_check_mark: | :white_check_mark: |
| [readwrite]                 | :white_check_mark: | :white_check_mark: |
| [rename]                    | :white_check_mark: | :white_check_mark: |
| [renamenx]                  | :white_check_mark: | :white_check_mark: |
| [replconf]                  | :white_check_mark: | :white_check_mark: |
| [replicaof]                 | :white_check_mark: | :white_check_mark: |
| [reset]                     | :white_check_mark: |        :x:         |
| [role]                      | :white_check_mark: | :white_check_mark: |
| [rpop]                      | :white_check_mark: | :white_check_mark: |
| [rpoplpush]                 | :white_check_mark: | :white_check_mark: |
| [rpush]                     | :white_check_mark: | :white_check_mark: |
| [rpushx]                    | :white_check_mark: | :white_check_mark: |
| [sadd]                      | :white_check_mark: | :white_check_mark: |
| [save]                      | :white_check_mark: | :white_check_mark: |
| [scan]                      | :white_check_mark: | :white_check_mark: |
| [scard]                     | :white_check_mark: | :white_check_mark: |
| [script]                    | :white_check_mark: |        :x:         |
| [sdiff]                     | :white_check_mark: | :white_check_mark: |
| [sdiffstore]                | :white_check_mark: | :white_check_mark: |
| [select]                    | :white_check_mark: |        :x:         |
| [set]                       | :white_check_mark: | :white_check_mark: |
| [setbit]                    | :white_check_mark: | :white_check_mark: |
| [setex]                     | :white_check_mark: | :white_check_mark: |
| [setnx]                     | :white_check_mark: | :white_check_mark: |
| [setrange]                  | :white_check_mark: | :white_check_mark: |
| [shutdown]                  | :white_check_mark: |        :x:         |
| [sinter]                    | :white_check_mark: | :white_check_mark: |
| [sintercard]                | :white_check_mark: |        :x:         |
| [sinterstore]               | :white_check_mark: | :white_check_mark: |
| [sismember]                 | :white_check_mark: | :white_check_mark: |
| [slaveof]                   | :white_check_mark: | :white_check_mark: |
| [smembers]                  | :white_check_mark: | :white_check_mark: |
| [smismember]                | :white_check_mark: | :white_check_mark: |
| [smove]                     | :white_check_mark: | :white_check_mark: |
| [sort]                      | :white_check_mark: |        :x:         |
| [sort_ro]                   | :white_check_mark: |        :x:         |
| [spop]                      | :white_check_mark: | :white_check_mark: |
| [spublish]                  | :white_check_mark: |        :x:         |
| [srandmember]               | :white_check_mark: | :white_check_mark: |
| [srem]                      | :white_check_mark: | :white_check_mark: |
| [sscan]                     | :white_check_mark: | :white_check_mark: |
| [ssubscribe]                | :white_check_mark: |        :x:         |
| [strlen]                    | :white_check_mark: | :white_check_mark: |
| [subscribe]                 | :white_check_mark: | :white_check_mark: |
| [substr]                    | :white_check_mark: | :white_check_mark: |
| [sunion]                    | :white_check_mark: | :white_check_mark: |
| [sunionstore]               | :white_check_mark: | :white_check_mark: |
| [sunsubscribe]              | :white_check_mark: |        :x:         |
| [swapdb]                    | :white_check_mark: |        :x:         |
| [sync]                      | :white_check_mark: |        :x:         |
| [time]                      | :white_check_mark: | :white_check_mark: |
| [touch]                     | :white_check_mark: |        :x:         |
| [ttl]                       | :white_check_mark: | :white_check_mark: |
| [type]                      | :white_check_mark: | :white_check_mark: |
| [unlink]                    | :white_check_mark: | :white_check_mark: |
| [unsubscribe]               | :white_check_mark: | :white_check_mark: |
| [unwatch]                   | :white_check_mark: | :white_check_mark: |
| [wait]                      | :white_check_mark: |        :x:         |
| [watch]                     | :white_check_mark: | :white_check_mark: |
| [xack]                      | :white_check_mark: |        :x:         |
| [xadd]                      | :white_check_mark: | :white_check_mark: |
| [xautoclaim]                | :white_check_mark: |        :x:         |
| [xclaim]                    | :white_check_mark: |        :x:         |
| [xdel]                      | :white_check_mark: |        :x:         |
| [xdelex]                    | :white_check_mark: |        :x:         |
| [xgroup]                    | :white_check_mark: |        :x:         |
| [xinfo]                     | :white_check_mark: |        :x:         |
| [xlen]                      | :white_check_mark: | :white_check_mark: |
| [xpending]                  | :white_check_mark: |        :x:         |
| [xrange]                    | :white_check_mark: | :white_check_mark: |
| [xread]                     | :white_check_mark: | :white_check_mark: |
| [xreadgroup]                | :white_check_mark: |        :x:         |
| [xrevrange]                 | :white_check_mark: | :white_check_mark: |
| [xsetid]                    | :white_check_mark: |        :x:         |
| [xtrim]                     | :white_check_mark: |        :x:         |
| [zadd]                      | :white_check_mark: | :white_check_mark: |
| [zcard]                     | :white_check_mark: | :white_check_mark: |
| [zcount]                    | :white_check_mark: | :white_check_mark: |
| [zdiff]                     | :white_check_mark: | :white_check_mark: |
| [zdiffstore]                | :white_check_mark: |        :x:         |
| [zincrby]                   | :white_check_mark: | :white_check_mark: |
| [zinter]                    | :white_check_mark: |        :x:         |
| [zintercard]                | :white_check_mark: |        :x:         |
| [zinterstore]               | :white_check_mark: | :white_check_mark: |
| [zlexcount]                 | :white_check_mark: |        :x:         |
| [zmpop]                     | :white_check_mark: |        :x:         |
| [zmscore]                   | :white_check_mark: | :white_check_mark: |
| [zpopmax]                   | :white_check_mark: | :white_check_mark: |
| [zpopmin]                   | :white_check_mark: | :white_check_mark: |
| [zrandmember]               | :white_check_mark: |        :x:         |
| [zrange]                    | :white_check_mark: | :white_check_mark: |
| [zrangebylex]               | :white_check_mark: | :white_check_mark: |
| [zrangebyscore]             | :white_check_mark: | :white_check_mark: |
| [zrangestore]               | :white_check_mark: |        :x:         |
| [zrank]                     | :white_check_mark: | :white_check_mark: |
| [zrem]                      | :white_check_mark: | :white_check_mark: |
| [zremrangebylex]            | :white_check_mark: |        :x:         |
| [zremrangebyrank]           | :white_check_mark: | :white_check_mark: |
| [zremrangebyscore]          | :white_check_mark: | :white_check_mark: |
| [zrevrange]                 | :white_check_mark: | :white_check_mark: |
| [zrevrangebylex]            | :white_check_mark: | :white_check_mark: |
| [zrevrangebyscore]          | :white_check_mark: | :white_check_mark: |
| [zrevrank]                  | :white_check_mark: | :white_check_mark: |
| [zscan]                     | :white_check_mark: | :white_check_mark: |
| [zscore]                    | :white_check_mark: | :white_check_mark: |
| [zunion]                    | :white_check_mark: |        :x:         |
| [zunionstore]               | :white_check_mark: |        :x:         |
| [_FT.CONFIG]                |        :x:         |        :x:         |
| [_FT.DEBUG]                 |        :x:         |        :x:         |
| [_FT.SAFEADD]               |        :x:         |        :x:         |
| [bf.add]                    |        :x:         |        :x:         |
| [bf.card]                   |        :x:         |        :x:         |
| [bf.debug]                  |        :x:         |        :x:         |
| [bf.exists]                 |        :x:         |        :x:         |
| [bf.info]                   |        :x:         |        :x:         |
| [bf.insert]                 |        :x:         |        :x:         |
| [bf.loadchunk]              |        :x:         |        :x:         |
| [bf.madd]                   |        :x:         |        :x:         |
| [bf.mexists]                |        :x:         |        :x:         |
| [bf.reserve]                |        :x:         |        :x:         |
| [bf.scandump]               |        :x:         |        :x:         |
| [cf.add]                    |        :x:         |        :x:         |
| [cf.addnx]                  |        :x:         |        :x:         |
| [cf.compact]                |        :x:         |        :x:         |
| [cf.count]                  |        :x:         |        :x:         |
| [cf.debug]                  |        :x:         |        :x:         |
| [cf.del]                    |        :x:         |        :x:         |
| [cf.exists]                 |        :x:         |        :x:         |
| [cf.info]                   |        :x:         |        :x:         |
| [cf.insert]                 |        :x:         |        :x:         |
| [cf.insertnx]               |        :x:         |        :x:         |
| [cf.loadchunk]              |        :x:         |        :x:         |
| [cf.mexists]                |        :x:         |        :x:         |
| [cf.reserve]                |        :x:         |        :x:         |
| [cf.scandump]               |        :x:         |        :x:         |
| [cms.incrby]                |        :x:         |        :x:         |
| [cms.info]                  |        :x:         |        :x:         |
| [cms.initbydim]             |        :x:         |        :x:         |
| [cms.initbyprob]            |        :x:         |        :x:         |
| [cms.merge]                 |        :x:         |        :x:         |
| [cms.query]                 |        :x:         |        :x:         |
| [FT._ALIASADDIFNX]          |        :x:         |        :x:         |
| [FT._ALIASDELIFX]           |        :x:         |        :x:         |
| [FT._ALTERIFNX]             |        :x:         |        :x:         |
| [FT._CREATEIFNX]            |        :x:         |        :x:         |
| [FT._DROPIFX]               |        :x:         |        :x:         |
| [FT._DROPINDEXIFX]          |        :x:         |        :x:         |
| [FT._LIST]                  |        :x:         |        :x:         |
| [FT.ADD]                    |        :x:         |        :x:         |
| [FT.AGGREGATE]              |        :x:         |        :x:         |
| [FT.ALIASADD]               |        :x:         |        :x:         |
| [FT.ALIASDEL]               |        :x:         |        :x:         |
| [FT.ALIASUPDATE]            |        :x:         |        :x:         |
| [FT.ALTER]                  |        :x:         |        :x:         |
| [FT.CONFIG]                 |        :x:         |        :x:         |
| [FT.CREATE]                 |        :x:         |        :x:         |
| [FT.CURSOR]                 |        :x:         |        :x:         |
| [FT.DEL]                    |        :x:         |        :x:         |
| [FT.DICTADD]                |        :x:         |        :x:         |
| [FT.DICTDEL]                |        :x:         |        :x:         |
| [FT.DICTDUMP]               |        :x:         |        :x:         |
| [FT.DROP]                   |        :x:         |        :x:         |
| [FT.DROPINDEX]              |        :x:         |        :x:         |
| [FT.EXPLAIN]                |        :x:         |        :x:         |
| [FT.EXPLAINCLI]             |        :x:         |        :x:         |
| [FT.GET]                    |        :x:         |        :x:         |
| [FT.INFO]                   |        :x:         |        :x:         |
| [FT.MGET]                   |        :x:         |        :x:         |
| [FT.PROFILE]                |        :x:         |        :x:         |
| [FT.SEARCH]                 |        :x:         |        :x:         |
| [FT.SPELLCHECK]             |        :x:         |        :x:         |
| [FT.SUGADD]                 |        :x:         |        :x:         |
| [FT.SUGDEL]                 |        :x:         |        :x:         |
| [FT.SUGGET]                 |        :x:         |        :x:         |
| [FT.SUGLEN]                 |        :x:         |        :x:         |
| [FT.SYNADD]                 |        :x:         |        :x:         |
| [FT.SYNDUMP]                |        :x:         |        :x:         |
| [FT.SYNUPDATE]              |        :x:         |        :x:         |
| [FT.TAGVALS]                |        :x:         |        :x:         |
| [hexpireat]                 |        :x:         |        :x:         |
| [hexpiretime]               |        :x:         |        :x:         |
| [hgetdel]                   |        :x:         |        :x:         |
| [hgetex]                    |        :x:         |        :x:         |
| [hpersist]                  |        :x:         |        :x:         |
| [hpexpireat]                |        :x:         |        :x:         |
| [hpexpiretime]              |        :x:         |        :x:         |
| [hpttl]                     |        :x:         |        :x:         |
| [hsetex]                    |        :x:         |        :x:         |
| [httl]                      |        :x:         |        :x:         |
| [json.arrappend]            |        :x:         |        :x:         |
| [json.arrindex]             |        :x:         |        :x:         |
| [json.arrinsert]            |        :x:         |        :x:         |
| [json.arrlen]               |        :x:         |        :x:         |
| [json.arrpop]               |        :x:         |        :x:         |
| [json.arrtrim]              |        :x:         |        :x:         |
| [json.clear]                |        :x:         |        :x:         |
| [json.debug]                |        :x:         |        :x:         |
| [json.del]                  |        :x:         |        :x:         |
| [json.forget]               |        :x:         |        :x:         |
| [json.get]                  |        :x:         |        :x:         |
| [json.merge]                |        :x:         |        :x:         |
| [json.mget]                 |        :x:         |        :x:         |
| [json.mset]                 |        :x:         |        :x:         |
| [json.numincrby]            |        :x:         |        :x:         |
| [json.nummultby]            |        :x:         |        :x:         |
| [json.numpowby]             |        :x:         |        :x:         |
| [json.objkeys]              |        :x:         |        :x:         |
| [json.objlen]               |        :x:         |        :x:         |
| [json.resp]                 |        :x:         |        :x:         |
| [json.set]                  |        :x:         |        :x:         |
| [json.strappend]            |        :x:         |        :x:         |
| [json.strlen]               |        :x:         |        :x:         |
| [json.toggle]               |        :x:         |        :x:         |
| [json.type]                 |        :x:         |        :x:         |
| [search.CLUSTERINFO]        |        :x:         |        :x:         |
| [search.CLUSTERREFRESH]     |        :x:         |        :x:         |
| [search.CLUSTERSET]         |        :x:         |        :x:         |
| [tdigest.add]               |        :x:         |        :x:         |
| [tdigest.byrank]            |        :x:         |        :x:         |
| [tdigest.byrevrank]         |        :x:         |        :x:         |
| [tdigest.cdf]               |        :x:         |        :x:         |
| [tdigest.create]            |        :x:         |        :x:         |
| [tdigest.info]              |        :x:         |        :x:         |
| [tdigest.max]               |        :x:         |        :x:         |
| [tdigest.merge]             |        :x:         |        :x:         |
| [tdigest.min]               |        :x:         |        :x:         |
| [tdigest.quantile]          |        :x:         |        :x:         |
| [tdigest.rank]              |        :x:         |        :x:         |
| [tdigest.reset]             |        :x:         |        :x:         |
| [tdigest.revrank]           |        :x:         |        :x:         |
| [tdigest.trimmed_mean]      |        :x:         |        :x:         |
| [timeseries.CLUSTERSET]     |        :x:         |        :x:         |
| [timeseries.REFRESHCLUSTER] |        :x:         |        :x:         |
| [topk.add]                  |        :x:         |        :x:         |
| [topk.count]                |        :x:         |        :x:         |
| [topk.incrby]               |        :x:         |        :x:         |
| [topk.info]                 |        :x:         |        :x:         |
| [topk.list]                 |        :x:         |        :x:         |
| [topk.query]                |        :x:         |        :x:         |
| [topk.reserve]              |        :x:         |        :x:         |
| [ts.add]                    |        :x:         |        :x:         |
| [ts.alter]                  |        :x:         |        :x:         |
| [ts.create]                 |        :x:         |        :x:         |
| [ts.createrule]             |        :x:         |        :x:         |
| [ts.decrby]                 |        :x:         |        :x:         |
| [ts.del]                    |        :x:         |        :x:         |
| [ts.deleterule]             |        :x:         |        :x:         |
| [ts.get]                    |        :x:         |        :x:         |
| [ts.incrby]                 |        :x:         |        :x:         |
| [ts.info]                   |        :x:         |        :x:         |
| [ts.madd]                   |        :x:         |        :x:         |
| [ts.mget]                   |        :x:         |        :x:         |
| [ts.mrange]                 |        :x:         |        :x:         |
| [ts.mrevrange]              |        :x:         |        :x:         |
| [ts.queryindex]             |        :x:         |        :x:         |
| [ts.range]                  |        :x:         |        :x:         |
| [ts.revrange]               |        :x:         |        :x:         |
| [VADD]                      |        :x:         |        :x:         |
| [VCARD]                     |        :x:         |        :x:         |
| [VDIM]                      |        :x:         |        :x:         |
| [VEMB]                      |        :x:         |        :x:         |
| [VGETATTR]                  |        :x:         |        :x:         |
| [VINFO]                     |        :x:         |        :x:         |
| [VISMEMBER]                 |        :x:         |        :x:         |
| [VLINKS]                    |        :x:         |        :x:         |
| [VRANDMEMBER]               |        :x:         |        :x:         |
| [VREM]                      |        :x:         |        :x:         |
| [VSETATTR]                  |        :x:         |        :x:         |
| [VSIM]                      |        :x:         |        :x:         |
| [waitaof]                   |        :x:         |        :x:         |
| [xackdel]                   |        :x:         |        :x:         |

## Commands that won't be implemented

> This is just the current status, and may change in the future. If you have ideas on how to implement any of them feel free to tell us about it.

| redis     | why it doesn't make sense to emulate                                                                                                                              |
| :-------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [debug]   | This command is intended to aid in debugging redis                                                                                                                |
| [dump]    | Doesn't make sense to implement the internal data format used by RDB                                                                                              |
| [hello]   | The protocols this command is switching between (RESP2, RESP3, Redis 6) aren't in use                                                                             |
| [latency] | ioredis-mock isn't operating over the network so there is no latency to monitor                                                                                   |
| [memory]  | It's unlikely this can be emulated in a JS environment                                                                                                            |
| [migrate] | This command actually executes a DUMP + DEL on the source instance, and a RESTORE in the target. Since DUMP and RESTORE won't be implemented it includes MIGRATE. |
| [module]  | It's unlikely that we'll be able to run Redis Modules in a JS VM                                                                                                  |
| [pfdebug] | This command is intended to aid in debugging redis                                                                                                                |
| [restore] | The RDB specific format used for restores would be a massive undertaking to implement with very little gain.                                                      |
| [slowlog] | Useful when you're on redis, not so much when on ioredis-mock                                                                                                     |

[1]: https://github.com/luin/ioredis#handle-binary-data
[acl]: http://redis.io/commands/ACL
[append]: http://redis.io/commands/APPEND
[asking]: http://redis.io/commands/ASKING
[auth]: http://redis.io/commands/AUTH
[bgrewriteaof]: http://redis.io/commands/BGREWRITEAOF
[bgsave]: http://redis.io/commands/BGSAVE
[bitcount]: http://redis.io/commands/BITCOUNT
[bitfield]: http://redis.io/commands/BITFIELD
[bitfield_ro]: http://redis.io/commands/BITFIELD_RO
[bitop]: http://redis.io/commands/BITOP
[bitpos]: http://redis.io/commands/BITPOS
[blmove]: http://redis.io/commands/BLMOVE
[blmpop]: http://redis.io/commands/BLMPOP
[blpop]: http://redis.io/commands/BLPOP
[brpop]: http://redis.io/commands/BRPOP
[brpoplpush]: http://redis.io/commands/BRPOPLPUSH
[bzmpop]: http://redis.io/commands/BZMPOP
[bzpopmax]: http://redis.io/commands/BZPOPMAX
[bzpopmin]: http://redis.io/commands/BZPOPMIN
[client]: http://redis.io/commands/CLIENT
[cluster]: http://redis.io/commands/CLUSTER
[command]: http://redis.io/commands/COMMAND
[config]: http://redis.io/commands/CONFIG
[copy]: http://redis.io/commands/COPY
[dbsize]: http://redis.io/commands/DBSIZE
[decr]: http://redis.io/commands/DECR
[decrby]: http://redis.io/commands/DECRBY
[del]: http://redis.io/commands/DEL
[discard]: http://redis.io/commands/DISCARD
[echo]: http://redis.io/commands/ECHO
[eval]: http://redis.io/commands/EVAL
[eval_ro]: http://redis.io/commands/EVAL_RO
[evalsha]: http://redis.io/commands/EVALSHA
[evalsha_ro]: http://redis.io/commands/EVALSHA_RO
[exists]: http://redis.io/commands/EXISTS
[expire]: http://redis.io/commands/EXPIRE
[expireat]: http://redis.io/commands/EXPIREAT
[expiretime]: http://redis.io/commands/EXPIRETIME
[failover]: http://redis.io/commands/FAILOVER
[fcall]: http://redis.io/commands/FCALL
[fcall_ro]: http://redis.io/commands/FCALL_RO
[flushall]: http://redis.io/commands/FLUSHALL
[flushdb]: http://redis.io/commands/FLUSHDB
[function]: http://redis.io/commands/FUNCTION
[geoadd]: http://redis.io/commands/GEOADD
[geodist]: http://redis.io/commands/GEODIST
[geohash]: http://redis.io/commands/GEOHASH
[geopos]: http://redis.io/commands/GEOPOS
[georadius]: http://redis.io/commands/GEORADIUS
[georadius_ro]: http://redis.io/commands/GEORADIUS_RO
[georadiusbymember]: http://redis.io/commands/GEORADIUSBYMEMBER
[georadiusbymember_ro]: http://redis.io/commands/GEORADIUSBYMEMBER_RO
[geosearch]: http://redis.io/commands/GEOSEARCH
[geosearchstore]: http://redis.io/commands/GEOSEARCHSTORE
[get]: http://redis.io/commands/GET
[getbit]: http://redis.io/commands/GETBIT
[getdel]: http://redis.io/commands/GETDEL
[getex]: http://redis.io/commands/GETEX
[getrange]: http://redis.io/commands/GETRANGE
[getset]: http://redis.io/commands/GETSET
[hdel]: http://redis.io/commands/HDEL
[hexists]: http://redis.io/commands/HEXISTS
[hexpire]: http://redis.io/commands/HEXPIRE
[hget]: http://redis.io/commands/HGET
[hgetall]: http://redis.io/commands/HGETALL
[hincrby]: http://redis.io/commands/HINCRBY
[hincrbyfloat]: http://redis.io/commands/HINCRBYFLOAT
[hkeys]: http://redis.io/commands/HKEYS
[hlen]: http://redis.io/commands/HLEN
[hmget]: http://redis.io/commands/HMGET
[hmset]: http://redis.io/commands/HMSET
[hpexpire]: http://redis.io/commands/HPEXPIRE
[hrandfield]: http://redis.io/commands/HRANDFIELD
[hscan]: http://redis.io/commands/HSCAN
[hset]: http://redis.io/commands/HSET
[hsetnx]: http://redis.io/commands/HSETNX
[hstrlen]: http://redis.io/commands/HSTRLEN
[hvals]: http://redis.io/commands/HVALS
[incr]: http://redis.io/commands/INCR
[incrby]: http://redis.io/commands/INCRBY
[incrbyfloat]: http://redis.io/commands/INCRBYFLOAT
[info]: http://redis.io/commands/INFO
[keys]: http://redis.io/commands/KEYS
[lastsave]: http://redis.io/commands/LASTSAVE
[lcs]: http://redis.io/commands/LCS
[lindex]: http://redis.io/commands/LINDEX
[linsert]: http://redis.io/commands/LINSERT
[llen]: http://redis.io/commands/LLEN
[lmove]: http://redis.io/commands/LMOVE
[lmpop]: http://redis.io/commands/LMPOP
[lolwut]: http://redis.io/commands/LOLWUT
[lpop]: http://redis.io/commands/LPOP
[lpos]: http://redis.io/commands/LPOS
[lpush]: http://redis.io/commands/LPUSH
[lpushx]: http://redis.io/commands/LPUSHX
[lrange]: http://redis.io/commands/LRANGE
[lrem]: http://redis.io/commands/LREM
[lset]: http://redis.io/commands/LSET
[ltrim]: http://redis.io/commands/LTRIM
[mget]: http://redis.io/commands/MGET
[monitor]: http://redis.io/commands/MONITOR
[move]: http://redis.io/commands/MOVE
[mset]: http://redis.io/commands/MSET
[msetnx]: http://redis.io/commands/MSETNX
[object]: http://redis.io/commands/OBJECT
[persist]: http://redis.io/commands/PERSIST
[pexpire]: http://redis.io/commands/PEXPIRE
[pexpireat]: http://redis.io/commands/PEXPIREAT
[pexpiretime]: http://redis.io/commands/PEXPIRETIME
[pfadd]: http://redis.io/commands/PFADD
[pfcount]: http://redis.io/commands/PFCOUNT
[pfmerge]: http://redis.io/commands/PFMERGE
[ping]: http://redis.io/commands/PING
[psetex]: http://redis.io/commands/PSETEX
[psubscribe]: http://redis.io/commands/PSUBSCRIBE
[psync]: http://redis.io/commands/PSYNC
[pttl]: http://redis.io/commands/PTTL
[publish]: http://redis.io/commands/PUBLISH
[pubsub]: http://redis.io/commands/PUBSUB
[punsubscribe]: http://redis.io/commands/PUNSUBSCRIBE
[quit]: http://redis.io/commands/QUIT
[randomkey]: http://redis.io/commands/RANDOMKEY
[readonly]: http://redis.io/commands/READONLY
[readwrite]: http://redis.io/commands/READWRITE
[rename]: http://redis.io/commands/RENAME
[renamenx]: http://redis.io/commands/RENAMENX
[replconf]: http://redis.io/commands/REPLCONF
[replicaof]: http://redis.io/commands/REPLICAOF
[reset]: http://redis.io/commands/RESET
[role]: http://redis.io/commands/ROLE
[rpop]: http://redis.io/commands/RPOP
[rpoplpush]: http://redis.io/commands/RPOPLPUSH
[rpush]: http://redis.io/commands/RPUSH
[rpushx]: http://redis.io/commands/RPUSHX
[sadd]: http://redis.io/commands/SADD
[save]: http://redis.io/commands/SAVE
[scan]: http://redis.io/commands/SCAN
[scard]: http://redis.io/commands/SCARD
[script]: http://redis.io/commands/SCRIPT
[sdiff]: http://redis.io/commands/SDIFF
[sdiffstore]: http://redis.io/commands/SDIFFSTORE
[select]: http://redis.io/commands/SELECT
[set]: http://redis.io/commands/SET
[setbit]: http://redis.io/commands/SETBIT
[setex]: http://redis.io/commands/SETEX
[setnx]: http://redis.io/commands/SETNX
[setrange]: http://redis.io/commands/SETRANGE
[shutdown]: http://redis.io/commands/SHUTDOWN
[sinter]: http://redis.io/commands/SINTER
[sintercard]: http://redis.io/commands/SINTERCARD
[sinterstore]: http://redis.io/commands/SINTERSTORE
[sismember]: http://redis.io/commands/SISMEMBER
[slaveof]: http://redis.io/commands/SLAVEOF
[smembers]: http://redis.io/commands/SMEMBERS
[smismember]: http://redis.io/commands/SMISMEMBER
[smove]: http://redis.io/commands/SMOVE
[sort]: http://redis.io/commands/SORT
[sort_ro]: http://redis.io/commands/SORT_RO
[spop]: http://redis.io/commands/SPOP
[spublish]: http://redis.io/commands/SPUBLISH
[srandmember]: http://redis.io/commands/SRANDMEMBER
[srem]: http://redis.io/commands/SREM
[sscan]: http://redis.io/commands/SSCAN
[ssubscribe]: http://redis.io/commands/SSUBSCRIBE
[strlen]: http://redis.io/commands/STRLEN
[subscribe]: http://redis.io/commands/SUBSCRIBE
[substr]: http://redis.io/commands/SUBSTR
[sunion]: http://redis.io/commands/SUNION
[sunionstore]: http://redis.io/commands/SUNIONSTORE
[sunsubscribe]: http://redis.io/commands/SUNSUBSCRIBE
[swapdb]: http://redis.io/commands/SWAPDB
[sync]: http://redis.io/commands/SYNC
[time]: http://redis.io/commands/TIME
[touch]: http://redis.io/commands/TOUCH
[ttl]: http://redis.io/commands/TTL
[type]: http://redis.io/commands/TYPE
[unlink]: http://redis.io/commands/UNLINK
[unsubscribe]: http://redis.io/commands/UNSUBSCRIBE
[unwatch]: http://redis.io/commands/UNWATCH
[wait]: http://redis.io/commands/WAIT
[watch]: http://redis.io/commands/WATCH
[xack]: http://redis.io/commands/XACK
[xadd]: http://redis.io/commands/XADD
[xautoclaim]: http://redis.io/commands/XAUTOCLAIM
[xclaim]: http://redis.io/commands/XCLAIM
[xdel]: http://redis.io/commands/XDEL
[xdelex]: http://redis.io/commands/XDELEX
[xgroup]: http://redis.io/commands/XGROUP
[xinfo]: http://redis.io/commands/XINFO
[xlen]: http://redis.io/commands/XLEN
[xpending]: http://redis.io/commands/XPENDING
[xrange]: http://redis.io/commands/XRANGE
[xread]: http://redis.io/commands/XREAD
[xreadgroup]: http://redis.io/commands/XREADGROUP
[xrevrange]: http://redis.io/commands/XREVRANGE
[xsetid]: http://redis.io/commands/XSETID
[xtrim]: http://redis.io/commands/XTRIM
[zadd]: http://redis.io/commands/ZADD
[zcard]: http://redis.io/commands/ZCARD
[zcount]: http://redis.io/commands/ZCOUNT
[zdiff]: http://redis.io/commands/ZDIFF
[zdiffstore]: http://redis.io/commands/ZDIFFSTORE
[zincrby]: http://redis.io/commands/ZINCRBY
[zinter]: http://redis.io/commands/ZINTER
[zintercard]: http://redis.io/commands/ZINTERCARD
[zinterstore]: http://redis.io/commands/ZINTERSTORE
[zlexcount]: http://redis.io/commands/ZLEXCOUNT
[zmpop]: http://redis.io/commands/ZMPOP
[zmscore]: http://redis.io/commands/ZMSCORE
[zpopmax]: http://redis.io/commands/ZPOPMAX
[zpopmin]: http://redis.io/commands/ZPOPMIN
[zrandmember]: http://redis.io/commands/ZRANDMEMBER
[zrange]: http://redis.io/commands/ZRANGE
[zrangebylex]: http://redis.io/commands/ZRANGEBYLEX
[zrangebyscore]: http://redis.io/commands/ZRANGEBYSCORE
[zrangestore]: http://redis.io/commands/ZRANGESTORE
[zrank]: http://redis.io/commands/ZRANK
[zrem]: http://redis.io/commands/ZREM
[zremrangebylex]: http://redis.io/commands/ZREMRANGEBYLEX
[zremrangebyrank]: http://redis.io/commands/ZREMRANGEBYRANK
[zremrangebyscore]: http://redis.io/commands/ZREMRANGEBYSCORE
[zrevrange]: http://redis.io/commands/ZREVRANGE
[zrevrangebylex]: http://redis.io/commands/ZREVRANGEBYLEX
[zrevrangebyscore]: http://redis.io/commands/ZREVRANGEBYSCORE
[zrevrank]: http://redis.io/commands/ZREVRANK
[zscan]: http://redis.io/commands/ZSCAN
[zscore]: http://redis.io/commands/ZSCORE
[zunion]: http://redis.io/commands/ZUNION
[zunionstore]: http://redis.io/commands/ZUNIONSTORE
[_FT.CONFIG]: http://redis.io/commands/_FT.CONFIG
[_FT.DEBUG]: http://redis.io/commands/_FT.DEBUG
[_FT.SAFEADD]: http://redis.io/commands/_FT.SAFEADD
[bf.add]: http://redis.io/commands/BF.ADD
[bf.card]: http://redis.io/commands/BF.CARD
[bf.debug]: http://redis.io/commands/BF.DEBUG
[bf.exists]: http://redis.io/commands/BF.EXISTS
[bf.info]: http://redis.io/commands/BF.INFO
[bf.insert]: http://redis.io/commands/BF.INSERT
[bf.loadchunk]: http://redis.io/commands/BF.LOADCHUNK
[bf.madd]: http://redis.io/commands/BF.MADD
[bf.mexists]: http://redis.io/commands/BF.MEXISTS
[bf.reserve]: http://redis.io/commands/BF.RESERVE
[bf.scandump]: http://redis.io/commands/BF.SCANDUMP
[cf.add]: http://redis.io/commands/CF.ADD
[cf.addnx]: http://redis.io/commands/CF.ADDNX
[cf.compact]: http://redis.io/commands/CF.COMPACT
[cf.count]: http://redis.io/commands/CF.COUNT
[cf.debug]: http://redis.io/commands/CF.DEBUG
[cf.del]: http://redis.io/commands/CF.DEL
[cf.exists]: http://redis.io/commands/CF.EXISTS
[cf.info]: http://redis.io/commands/CF.INFO
[cf.insert]: http://redis.io/commands/CF.INSERT
[cf.insertnx]: http://redis.io/commands/CF.INSERTNX
[cf.loadchunk]: http://redis.io/commands/CF.LOADCHUNK
[cf.mexists]: http://redis.io/commands/CF.MEXISTS
[cf.reserve]: http://redis.io/commands/CF.RESERVE
[cf.scandump]: http://redis.io/commands/CF.SCANDUMP
[cms.incrby]: http://redis.io/commands/CMS.INCRBY
[cms.info]: http://redis.io/commands/CMS.INFO
[cms.initbydim]: http://redis.io/commands/CMS.INITBYDIM
[cms.initbyprob]: http://redis.io/commands/CMS.INITBYPROB
[cms.merge]: http://redis.io/commands/CMS.MERGE
[cms.query]: http://redis.io/commands/CMS.QUERY
[FT._ALIASADDIFNX]: http://redis.io/commands/FT._ALIASADDIFNX
[FT._ALIASDELIFX]: http://redis.io/commands/FT._ALIASDELIFX
[FT._ALTERIFNX]: http://redis.io/commands/FT._ALTERIFNX
[FT._CREATEIFNX]: http://redis.io/commands/FT._CREATEIFNX
[FT._DROPIFX]: http://redis.io/commands/FT._DROPIFX
[FT._DROPINDEXIFX]: http://redis.io/commands/FT._DROPINDEXIFX
[FT._LIST]: http://redis.io/commands/FT._LIST
[FT.ADD]: http://redis.io/commands/FT.ADD
[FT.AGGREGATE]: http://redis.io/commands/FT.AGGREGATE
[FT.ALIASADD]: http://redis.io/commands/FT.ALIASADD
[FT.ALIASDEL]: http://redis.io/commands/FT.ALIASDEL
[FT.ALIASUPDATE]: http://redis.io/commands/FT.ALIASUPDATE
[FT.ALTER]: http://redis.io/commands/FT.ALTER
[FT.CONFIG]: http://redis.io/commands/FT.CONFIG
[FT.CREATE]: http://redis.io/commands/FT.CREATE
[FT.CURSOR]: http://redis.io/commands/FT.CURSOR
[FT.DEL]: http://redis.io/commands/FT.DEL
[FT.DICTADD]: http://redis.io/commands/FT.DICTADD
[FT.DICTDEL]: http://redis.io/commands/FT.DICTDEL
[FT.DICTDUMP]: http://redis.io/commands/FT.DICTDUMP
[FT.DROP]: http://redis.io/commands/FT.DROP
[FT.DROPINDEX]: http://redis.io/commands/FT.DROPINDEX
[FT.EXPLAIN]: http://redis.io/commands/FT.EXPLAIN
[FT.EXPLAINCLI]: http://redis.io/commands/FT.EXPLAINCLI
[FT.GET]: http://redis.io/commands/FT.GET
[FT.INFO]: http://redis.io/commands/FT.INFO
[FT.MGET]: http://redis.io/commands/FT.MGET
[FT.PROFILE]: http://redis.io/commands/FT.PROFILE
[FT.SEARCH]: http://redis.io/commands/FT.SEARCH
[FT.SPELLCHECK]: http://redis.io/commands/FT.SPELLCHECK
[FT.SUGADD]: http://redis.io/commands/FT.SUGADD
[FT.SUGDEL]: http://redis.io/commands/FT.SUGDEL
[FT.SUGGET]: http://redis.io/commands/FT.SUGGET
[FT.SUGLEN]: http://redis.io/commands/FT.SUGLEN
[FT.SYNADD]: http://redis.io/commands/FT.SYNADD
[FT.SYNDUMP]: http://redis.io/commands/FT.SYNDUMP
[FT.SYNUPDATE]: http://redis.io/commands/FT.SYNUPDATE
[FT.TAGVALS]: http://redis.io/commands/FT.TAGVALS
[hexpireat]: http://redis.io/commands/HEXPIREAT
[hexpiretime]: http://redis.io/commands/HEXPIRETIME
[hgetdel]: http://redis.io/commands/HGETDEL
[hgetex]: http://redis.io/commands/HGETEX
[hpersist]: http://redis.io/commands/HPERSIST
[hpexpireat]: http://redis.io/commands/HPEXPIREAT
[hpexpiretime]: http://redis.io/commands/HPEXPIRETIME
[hpttl]: http://redis.io/commands/HPTTL
[hsetex]: http://redis.io/commands/HSETEX
[httl]: http://redis.io/commands/HTTL
[json.arrappend]: http://redis.io/commands/JSON.ARRAPPEND
[json.arrindex]: http://redis.io/commands/JSON.ARRINDEX
[json.arrinsert]: http://redis.io/commands/JSON.ARRINSERT
[json.arrlen]: http://redis.io/commands/JSON.ARRLEN
[json.arrpop]: http://redis.io/commands/JSON.ARRPOP
[json.arrtrim]: http://redis.io/commands/JSON.ARRTRIM
[json.clear]: http://redis.io/commands/JSON.CLEAR
[json.debug]: http://redis.io/commands/JSON.DEBUG
[json.del]: http://redis.io/commands/JSON.DEL
[json.forget]: http://redis.io/commands/JSON.FORGET
[json.get]: http://redis.io/commands/JSON.GET
[json.merge]: http://redis.io/commands/JSON.MERGE
[json.mget]: http://redis.io/commands/JSON.MGET
[json.mset]: http://redis.io/commands/JSON.MSET
[json.numincrby]: http://redis.io/commands/JSON.NUMINCRBY
[json.nummultby]: http://redis.io/commands/JSON.NUMMULTBY
[json.numpowby]: http://redis.io/commands/JSON.NUMPOWBY
[json.objkeys]: http://redis.io/commands/JSON.OBJKEYS
[json.objlen]: http://redis.io/commands/JSON.OBJLEN
[json.resp]: http://redis.io/commands/JSON.RESP
[json.set]: http://redis.io/commands/JSON.SET
[json.strappend]: http://redis.io/commands/JSON.STRAPPEND
[json.strlen]: http://redis.io/commands/JSON.STRLEN
[json.toggle]: http://redis.io/commands/JSON.TOGGLE
[json.type]: http://redis.io/commands/JSON.TYPE
[search.CLUSTERINFO]: http://redis.io/commands/SEARCH.CLUSTERINFO
[search.CLUSTERREFRESH]: http://redis.io/commands/SEARCH.CLUSTERREFRESH
[search.CLUSTERSET]: http://redis.io/commands/SEARCH.CLUSTERSET
[tdigest.add]: http://redis.io/commands/TDIGEST.ADD
[tdigest.byrank]: http://redis.io/commands/TDIGEST.BYRANK
[tdigest.byrevrank]: http://redis.io/commands/TDIGEST.BYREVRANK
[tdigest.cdf]: http://redis.io/commands/TDIGEST.CDF
[tdigest.create]: http://redis.io/commands/TDIGEST.CREATE
[tdigest.info]: http://redis.io/commands/TDIGEST.INFO
[tdigest.max]: http://redis.io/commands/TDIGEST.MAX
[tdigest.merge]: http://redis.io/commands/TDIGEST.MERGE
[tdigest.min]: http://redis.io/commands/TDIGEST.MIN
[tdigest.quantile]: http://redis.io/commands/TDIGEST.QUANTILE
[tdigest.rank]: http://redis.io/commands/TDIGEST.RANK
[tdigest.reset]: http://redis.io/commands/TDIGEST.RESET
[tdigest.revrank]: http://redis.io/commands/TDIGEST.REVRANK
[tdigest.trimmed_mean]: http://redis.io/commands/TDIGEST.TRIMMED_MEAN
[timeseries.CLUSTERSET]: http://redis.io/commands/TIMESERIES.CLUSTERSET
[timeseries.REFRESHCLUSTER]: http://redis.io/commands/TIMESERIES.REFRESHCLUSTER
[topk.add]: http://redis.io/commands/TOPK.ADD
[topk.count]: http://redis.io/commands/TOPK.COUNT
[topk.incrby]: http://redis.io/commands/TOPK.INCRBY
[topk.info]: http://redis.io/commands/TOPK.INFO
[topk.list]: http://redis.io/commands/TOPK.LIST
[topk.query]: http://redis.io/commands/TOPK.QUERY
[topk.reserve]: http://redis.io/commands/TOPK.RESERVE
[ts.add]: http://redis.io/commands/TS.ADD
[ts.alter]: http://redis.io/commands/TS.ALTER
[ts.create]: http://redis.io/commands/TS.CREATE
[ts.createrule]: http://redis.io/commands/TS.CREATERULE
[ts.decrby]: http://redis.io/commands/TS.DECRBY
[ts.del]: http://redis.io/commands/TS.DEL
[ts.deleterule]: http://redis.io/commands/TS.DELETERULE
[ts.get]: http://redis.io/commands/TS.GET
[ts.incrby]: http://redis.io/commands/TS.INCRBY
[ts.info]: http://redis.io/commands/TS.INFO
[ts.madd]: http://redis.io/commands/TS.MADD
[ts.mget]: http://redis.io/commands/TS.MGET
[ts.mrange]: http://redis.io/commands/TS.MRANGE
[ts.mrevrange]: http://redis.io/commands/TS.MREVRANGE
[ts.queryindex]: http://redis.io/commands/TS.QUERYINDEX
[ts.range]: http://redis.io/commands/TS.RANGE
[ts.revrange]: http://redis.io/commands/TS.REVRANGE
[VADD]: http://redis.io/commands/VADD
[VCARD]: http://redis.io/commands/VCARD
[VDIM]: http://redis.io/commands/VDIM
[VEMB]: http://redis.io/commands/VEMB
[VGETATTR]: http://redis.io/commands/VGETATTR
[VINFO]: http://redis.io/commands/VINFO
[VISMEMBER]: http://redis.io/commands/VISMEMBER
[VLINKS]: http://redis.io/commands/VLINKS
[VRANDMEMBER]: http://redis.io/commands/VRANDMEMBER
[VREM]: http://redis.io/commands/VREM
[VSETATTR]: http://redis.io/commands/VSETATTR
[VSIM]: http://redis.io/commands/VSIM
[waitaof]: http://redis.io/commands/WAITAOF
[xackdel]: http://redis.io/commands/XACKDEL
[debug]: http://redis.io/commands/DEBUG
[dump]: http://redis.io/commands/DUMP
[hello]: http://redis.io/commands/HELLO
[latency]: http://redis.io/commands/LATENCY
[memory]: http://redis.io/commands/MEMORY
[migrate]: http://redis.io/commands/MIGRATE
[module]: http://redis.io/commands/MODULE
[pfdebug]: http://redis.io/commands/PFDEBUG
[restore]: http://redis.io/commands/RESTORE
[slowlog]: http://redis.io/commands/SLOWLOG
