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.