ken#
semantic search over your atproto repo. sign in, ken builds a vector index of your records, search by meaning.
lexicons#
tech.waow.ken.pack— saved vector index (record + blobs on your PDS)
stack#
sync.getRepo → CAR walk + filter → llama.cpp embed → in-memory search
↓
(opt-in) save pack to user's PDS
- backend: zig 0.16, zat (AT Protocol), llama.cpp (bge-small-en-v1.5)
- infra: fly.io (performance-2x, 4 GB)
develop#
cd backend
zig build
OAUTH_CLIENT_SECRET_KEY=... MODEL_PATH=models/bge-small.gguf ./zig-out/bin/embed-on-pds
deploy#
just deploy
notes#
- large-repo embedding pipeline — filtering, time cutoff, memory budget
license#
MIT