Two packages. @veclabs/solvec stores and verifies. @veclabs/recall retrieves and assembles. Together they answer a question no other database can.
When your AI agent makes a wrong decision, you need to know exactly what it had access to. Memory Inspector makes that possible.
The hardest part wasn't the WASM compilation. It was making Turbopack not trace the require path at build time while still loading the right binary at runtime.
The hardest part was not the compilation. It was making the bundler not trace the require path at build time.
Why Solana? Because posting a 32-byte Merkle root costs $0.00025 and takes 400ms. That's the cheapest notary in history for cryptographic proof.
Why post a fingerprint of your vector collection after every write? Because trust is not a product feature.
Three things got us to 4.7ms p99 at 100K vectors: no serialization boundary, no GC pauses, and cache-friendly memory layout.
Every AI agent I built forgot everything between sessions. Not just forgot - there was no way to prove what it remembered, when, or whether anyone tampered with it.