Skip to main content
cache-pot cli is a small, dependency-free RESP2 shell built into the same binary as the server. Use it anywhere you’d reach for redis-cli — interactively, as a one-shot command, or piping in a script — without installing anything extra.

Quick start

With no arguments it opens an interactive prompt against localhost:6379:
Replies are formatted the way redis-cli formats them — bulk strings quoted, integers tagged (integer), arrays numbered, missing keys shown as (nil), errors prefixed (error).

One-shot commands

Pass the command as trailing arguments and the CLI runs it, prints the reply, and exits — no prompt, no loop:
This drops straight into shell scripts and CI checks.

Scripting: piped input

When stdin isn’t a terminal, the CLI reads one command per line and runs each in sequence, still connected to the same server:
Output is the same reply-per-line format as interactive mode, just without the prompt.

Connecting

--tls-insecure disables server identity verification entirely. It’s fine for a local self-signed cert while developing, but never point it at anything on a network you don’t trust.

Shell commands

Besides any Redis or Cache-Pot command, the interactive prompt understands:

Quoting and escapes

Arguments follow the same quoting rules as redis-cli: single quotes are literal, double quotes support \n, \r, \t, \\, \", and \xHH byte escapes.

History

Interactive sessions append every command to ~/.cache-pot_history. It’s a plain append-only text file — there’s no readline-style in-session recall yet, but the file is there if you want to grep past commands or feed them back in with cache-pot cli < ~/.cache-pot_history.
Because the CLI speaks plain RESP, it works against any Redis-compatible server, not just Cache-Pot — handy for comparing behavior side by side. See Benchmarking for the same idea applied to load testing.