Locus
Locus delivers persistent, verifiable, and queryable memory for otherwise stateless Solana agents. It builds on ARMS (Attention Reasoning Memory Store), a spatial memory fabric written in Rust, and turns it into a payable memory network: memory roots are committed on-chain, queries are priced, and every AI-driven retrieval produces a cryptographic attestation.
Why this exists
Agents make decisions, but on a public chain there is usually no way to prove what an agent knew when it acted. Locus closes that gap. Each retrieval leaves an on-chain record binding a query to its result against a specific, versioned memory root — turning “the model decided” into “here is the attested context that shaped the decision.”
The core primitive
Everything is one repeatable loop:
- Commit an agent’s memory root on-chain (
commit_memory). - Query the ARMS index for nearest neighbors.
- Attest the retrieval on-chain (
attest_retrieval), paying the read fee. - Verify the attestation on Solscan — anyone, for free.
Architecture at a glance
| Component | Crate / path | Role |
|---|---|---|
| Core program | programs/locus | Anchor program: AgentMemory + RetrievalAttestation accounts |
| Rust SDK | locus-client | Unified client over Locus + ARMS |
| Relayer | locus-relayer | Recomputes the ARMS Merkle root and commits it on an interval |
| Demo CLI | locus-demo | End-to-end ingest → commit → attested query |
| ARMS service | arms-service | Thin Axum HTTP wrapper around ARMS |
| TS SDK | @lumi-node/locus-sdk | TypeScript port of the Rust client (this site) |
Status
Live on Solana, program ID
C6AJ43ZpzPLtmcwDS1FQP7cQXtWHNwsLty5ijdLTxzmK. Mainnet, an incremental relayer,
and SNARK-verified retrievals are on the roadmap.
Next: Quick start →