Getting started
Quickstart
From zero to a semantic cache hit in about five minutes. You need Docker, everything else, including the CLI, ships inside the image. Community edition is free and needs no license.
1. Pull and run#
docker pull crowkis/crowkis:latest docker run -d --name crowkis \ -p 127.0.0.1:6379:6379 \ -p 127.0.0.1:6380:6380 \ -p 127.0.0.1:6381:6381 \ -v crowkis-data:/data \ crowkis/crowkis:latest
| Endpoint | Port | What it is |
|---|---|---|
| RESP3 (Redis protocol) | 127.0.0.1:6379 | crowkis cli and any Redis client |
| Dashboard + REST | 127.0.0.1:6380 | live verdict feed, management API, /health |
| gRPC (h2c) | 127.0.0.1:6381 | protobuf surface |
2. Talk to it#
The image ships the interactive REPL, crowkis cli, which connects like redis-cli does. Standard Redis commands work, and the C* family adds the semantic layer:
PING CSET "Explain vector caches" "Vector caches store embeddings of past queries so similar questions can reuse answers." EX 86400 MODEL gpt-4o TENANT demo CGET "Explain vector caches" TENANT demo CGET "what are vector caches?" TENANT demo CSIM "France capital city" K 5 CVECCOUNT
The fourth line is the point: a paraphrase of the stored question still hits, because Crowkis matches meaning and structure, not bytes. Already a Redis shop? Your existing client connects to port 6379 unmodified.
3. Watch it decide#
Open the dashboard and you'll see every verdict streaming live, hits by type, misses, safety blocks, latency, and an estimate of what the cache saved you:
open http://127.0.0.1:6380
4. Wire it into your app#
The SDKs wrap the whole cache-or-compute loop in one call. If the answer is cached and safe to reuse, you never touch the model:
from crowkis import CrowkisClient
cache = CrowkisClient(host="127.0.0.1", port=6379, tenant="demo", model="gpt-4o")
answer = cache.get_or_compute(
"Explain vector caches",
lambda query: call_llm(query),
ttl=3600,
)npm install crowkis and getOrCompute, same pattern. Using Claude Code or agents? See MCP for AI apps.