Control what your AI agents are allowed to remember

Carry is the authorization and audit layer for AI memory. It enforces access before memory reaches the model, then renders independently verifiable proof of every decision.

Works with any model · Powered by Sui + Walrus

01The problem

Persistent memory created a new permission boundary

A support agent with persistent memory can reach everything the system remembers — customer records, billing, internal notes. Should every agent see everything?

Once sensitive memory reaches the model, the access decision has already happened — too late. Carry enforces the decision before retrieval, so denied memory never reaches the model.

agent: supportmemory in reach
  • customer_profilereadable
  • previous_conversationsreadable
  • billing_historysensitive
  • internal_risk_notessensitive
  • refund_recordsreadable
  • admin_instructionssensitive
Without a gate, the model can retrieve all of it.
02Verifiable memory

Engineered for
verifiable memory

Carry is designed from the ground up so every answer can be traced to the exact memory it used — and proven against what it was never allowed to touch.

Gate before generation

Access is enforced at retrieval. The model only ever sees memory it is allowed to use — receipts are honest by construction.

healthbilling
gate
diet project
Leaked to model0%

Cross-model memory

Teach one agent and recall from another — even on a different provider. Memory follows the user, not the vendor.

Agent A · GPT-4odietproject
Agent B · Claudedietproject
Vendor lock-in0%

Answer Receipts

Every memory-based answer carries a receipt — memories used, namespaces, source agent, and a Walrus reference, verified.

14:41:59 UTCagent-b · claude
Receipt anchored0x7d3e…ff90
14:35:12 UTCagent-a · gpt-4o
Receipt anchored0x41b8…0c3d
14:32:01 UTCagent-a · gpt-4o
Receipt anchored0x9f2c…a7e1
Walrus-anchored
The Answer Receipt

Every answer carries its proof.

Your audit trail shouldn't depend on trusting the AI vendor that generated it. Carry renders a structured receipt under every answer — the memory it used, the namespaces it was blocked from — anchored on Walrus so anyone can verify it without trusting us.

Answer Receipt

agent-b · claude

Verified

Memory used

  • dietauthorizedverified

    Prefers vegan meals

    Agent A · GPT-4owalrus:0x9f2c…a7e1
  • projectauthorizedverified

    Is building “Carry”

    Agent A · GPT-4owalrus:0x41b8…0c3d

Blocked by policy: health

never retrieved

Anchored on Walrus

blob:0x7d3e…ff90

Anchor on Walrus
03Your stack

Carry doesn't replace your memory stack.
It governs it.

Memory storeVector DBPostgresRAG pipelineFiles
Carry gateallow · deny · prove
Model → Answer+ Answer Receipt

Keep the memory systems you already run. Carry sits in front of them, enforces the access policy before retrieval, and attaches verifiable proof to every answer.

Ships today: CLI · MCP · LangGraph · OpenAI Agents SDK · Vercel AI SDK

04Who it's for

Built for teams
with agents in production

Carry is for teams deploying agents against memory that actually matters — customer records, employee context, regulated data.

01

Customer support

Support agents answering from customer conversations, order history and billing — without reaching internal notes or admin context.

02

Enterprise copilots

Agents serving employees with different roles and permissions, where what the copilot may recall depends on who is asking.

03

Regulated AI

Agents working with financial, healthcare or identity data, where every retrieval decision needs evidence that stands on its own.

Gate before generationVerifiable receiptsCross-model memoryWalrus-anchoredOwner-controlledHonest by construction
05How it works

Memory you
can prove

No black boxes. The whole loop is built around one principle: enforce access before the model ever sees a thing.

  1. 01
    Teach

    Agent A captures facts into namespaces as you chat.

  2. 02
    Gate

    A policy check runs before retrieval: agent × namespace.

  3. 03
    Prove

    The answer renders with a receipt of what it used.

  4. 04
    Anchor

    Store the receipt as a Walrus blob — verifiable from then on.

Carry.Gate_Active
Gate
Live_gate_feedpolicy: agent-b
RETRIEVAL_GATEACTIVE
Alloweddiet, project
Unauthorized reach0.00%
VerificationWALRUS
Carry Trust CoreS/N: 2026-CRY
Receipt verifiedblob:0x7d3e…ff90

“AI agents shouldn’t decide for themselves what they’re allowed to remember.”

Carry draws a deterministic authorization boundary before memory reaches the model — and produces independently verifiable evidence afterward.

06The product

What you can
verify

Agent B · Claude
Am I allergic to anything?
I cannot access your Health memory — it was revoked.
health blocked by policy

A verifiable memory layer: gate-before-generation, answer receipts, and Walrus-anchored provenance for cross-model AI agents.

01/

Live revoke

Flip an agent’s namespace off and it truly loses access — the gate returns nothing.

02/

Access matrix

A simple agent × namespace grid that controls what every agent can touch.

03/

Walrus-anchored

Receipts resolve and verify against Walrus blobs. Tamper-evident provenance.

04/

Owner-controlled

Memory stays under its owner's control — portable, auditable, revocable.

Built onSuiWalrusSealMysten LabsMemWal
07Roadmap

From proof to
platform

We are precise about what is live today versus what is on the roadmap. Here is exactly where Carry is headed.

Now

Live now

Deployed and independently verifiable today.

Verify a live proof
  • Access gate on Sui mainnet
  • Walrus-anchored Answer Receipts
  • Walletless proof verifier
  • CLI, MCP server, and framework adapters
  • Hosted /v1 API and audit console
  • Attack lab and threat model
NextIn progress

Next up

Making Carry deployable by teams.

Follow along
  • Organization workspaces
  • Mem0 and Zep provider adapters
  • Design-partner integrations
  • SSO and role-based administration
  • Usage metering and billing
Later

Where it goes

The long-term frontier.

Read the vision
  • Enterprise policy federation
  • Cross-company agent trust
  • Third-party verifier network
  • A standard for portable agent authorization
08FAQs

Frequently
Asked Questions

Still unsure? We use precise language about what is enforced today versus what is on the roadmap — the honesty is the point.

Want specific guidance? Reach out.

Contact us

Today revoke is enforced before retrieval in Carry’s access layer — the gate never fetches a revoked namespace. Seal-based per-agent cryptographic enforcement, so even a leaked delegate key cannot read a revoked namespace, is on the roadmap.

By default every memory is a public Walrus blob, and each answer re-checks that those blobs still resolve — so the receipt’s “verified” badge is real, not cosmetic. You can also anchor the full Answer Receipt as its own Walrus blob for tamper-evident provenance. Carry also ships a MemWal (Walrus Memory) mode that stores memory Seal-encrypted via the Walrus Memory SDK.

Yes. Agent A and Agent B can run on different model providers and still share the same gated memory — the proof travels with the answer, not the vendor.

Access is checked at retrieval, before the model sees anything. The model only ever receives memory it is allowed to use, so the receipt is honest by construction.

Most memory tools just store and recall. Carry adds a gate before generation and a verifiable receipt for every answer — control what each agent can use, and prove it.

See memory you can prove

Walk the live demo: teach an agent, switch models, revoke a namespace, and watch the receipt tell the truth.