Proposal: UOMP as a user-owned memory layer for Starknet AI Agents
Hi Starknet community,
Iβm building UOMP (User-Owned Memory Protocol) β an open protocol draft that lets users keep their personal memory data locally and grant AI Agents temporary, scoped, auditable access via short-lived Capability Tokens.
- Website: https://www.uomp.org
- Spec: UOMP θ§θ - User-Owned Memory Protocol
- Reference implementation: GitHub - 0xaicrypto/uomp-core: User-Owned Memory Protocol β Reference Implementation Keep your memory local. Grant AI Agents scoped, session-based access. Β· GitHub
- Demo: 30-second CLI walkthrough on the homepage
Why this matters for AI Agents
AI Agents need rich personal context to be useful. Today that context is usually obtained in one of two ways:
- Upload everything to a cloud provider β the provider owns your memory.
- Hand over long-lived, over-scoped API keys β the Agent owns the access.
Neither gives the user real control. UOMP proposes a third path:
Your memory stays on your device. Agents receive only the minimum, temporary access you explicitly authorize.
How UOMP works (today)
- Agent declares scope in a
uom.jsonmanifest β tags, keys, read/write actions. - User reviews and authorizes through a local CLI/GUI.
- Auth Service issues a JWT Capability Token bound to a session.
- Memory Guard filters every request against the granted scope.
- Session ends or is revoked β the token becomes invalid immediately.
All access is logged, so users can audit exactly what an Agent read.
Why Starknet?
Starknet is one of the few ecosystems seriously investing in verifiable, decentralized AI Agents β with native Account Abstraction, sub-cent transaction costs, and a growing agent stack (Daydreams, Giza, Starknet.agent, etc.).
I think UOMP fits naturally as the off-chain user-memory + authorization layer, while Starknet provides the on-chain primitives:
| Layer | Starknet primitive | UOMP role |
|---|---|---|
| Identity | Account Abstraction / DID | Verify the user and sign authorization |
| Discovery | ERC-8004-style Agent Registry | Validate Agent manifests |
| Anchoring | Cheap on-chain storage | Root session tokens, revocations, audits |
| Proof | Cairo / zk proofs | Prove access compliance without revealing data |
A concrete integration idea
Hereβs one possible end-to-end flow Iβd love feedback on:
- User has a local Memory Store (SQLite / file system) plus a Memory Guard.
- Agent publishes a
uom.jsonon an ERC-8004 Registry contract on Starknet. - User approves the scope; the local Auth Service issues a JWT.
- The JWT hash is anchored to Starknet as a session record.
- Agent calls the local Guard with the JWT; Guard verifies signature, checks Starknet for revocation, and returns filtered data.
- Session ends β revocation transaction on Starknet invalidates the session.
This keeps user data local while making authorization and revocation globally verifiable.
Current status
- Draft-00 spec is published and open for comments.
- Reference implementation in TypeScript is working end-to-end, including a calendar-agent example.
- The protocol is intentionally framework-agnostic β the goal is a shared standard, not a single product.
What Iβm asking the community
- Does this problem resonate with what youβre building in the Starknet AI space?
- Which integration point is most valuable first β identity, registry, revocation anchoring, or zk proofs?
- Are there existing Starknet standards or working groups we should align with?
- Who else should see this? Tag them in the replies.
Iβd love to collaborate with Agent builders, identity folks, and anyone thinking about privacy in the agent stack. Letβs design a Starknet-native version of UOMP together.
Thanks for reading!