Memory for AI that serves the same customer over time

People change.
Your AI should remember how.

A compact, chronological account of what a person wanted, tried, and changed — so each conversation continues their story instead of starting over.

One person's history on a single timeline, reconstructed for the question “Why did I decide to stay?”. Long stretches are held as compact chapters; the source messages the question depends on are restored exactly.
JanMarMayJulNow
compact chapterheld in detailexact source

Jan 24 · message

I'm leaving after my bonus.

Apr 11 · message

I accepted the promotion. I'm staying.

Ask this history

01The human argument

People are not profiles.

Facts are snapshots. A person's story is what connects them.

Stored as a profile

3 fields

Goal
Wants to leave their job.
Goal
Accepted a promotion.
Goal
Wants to grow as a leader.

Three accurate facts. Nothing here says which is still true.

Held as an arc

Same 3 facts

  1. Jan

    Wants to leave their job.

    Burned out. Planning to go after the bonus.

  2. Apr

    Accepted a promotion.

    An unexpected offer, from the manager they were avoiding.

  3. Now

    Wants to grow as a leader.

In order, they stop contradicting. Arc keeps the sequence, not just the facts.

02What Arc rebuilds

Summaries at every granularity. Exact sources where they count.

Each request picks a level per stretch of time, then spends what the coarse ones save on exact sources.

Level three

Coarsest retained

Level two

Merged neighbours

Level one

Compacted event groups

Source events

Retained in order, never replaced

Reconstructed

For “Why did I decide to stay?”

L1L3L1L2

↑ Jan 24 and Apr 11, restored exactly

Retained, not used this timeChosen for this requestExact source, restored by retrieval

Search tells Arc where to zoom in. It does not decide which parts of a person's history get to exist.

Every Event a request may see stays represented, at one resolution or another, in exactly one span. That is all complete means here — not that every detail survives compression.

And narrative does not mean invented. Retained source Events stay the evidence of record.

What the shortcuts drop

A profileThe path behind them
Top-K retrievalThe whole chronology
A rolling summaryExact moments, once folded in
A recent windowThe distant event that may explain it

Arc changes resolution instead of dropping history.

03Point of view

A good recommendation starts with the person, not the product.

We believe more commerce will run through an ongoing conversation with an AI acting for a business — not a bot that remembers your name.

What continuity is worth

  1. Continuity across conversations
  2. A better read on current intent
  3. More relevant guidance
  4. More trust, more reasons to return

Our thesis, not a benchmark result. Memory alone guarantees none of it.

Who this is for

Fits

  • A goal that takes months
  • Health and care
  • Money and long decisions
  • Learning over many sittings

Does not fit

  • A one-off checkout
  • An isolated support ticket
  • A tool call that starts fresh

04Measured

Send everything, or send four percent.

On a history small enough to send whole, Arc stays within a few points of full raw context — on a twenty-fourth of the memory.

MeasurementNoneWholeArc 4K
Tokens092,2693,887
Factual7.9%83.6%79.3%
Temporal7.1%94.8%92.7%
Useful6.8%89.8%87.2%
Token F19.6%46.4%41.9%
Cost$0.0028$0.0819$0.0296

Full raw context is ahead on every dimension. Arc 4K trades 4.3 points of factual support for 96% fewer memory tokens and 64% lower cost. Arc 16K narrows the gap to 2.7 points on 8,510 tokens.

Long-memory suite · 4 histories · 64 cases · about 92K raw tokens each. Every arm completed all 64 cases. On our extreme suite — 1.18M tokens per history — sending it whole is not an option at all.

Method, costs, and limitations

05Start

One timeline for everything that shapes the story.

  1. 01

    Create the person.

    PUT /v1/users/{user_id}

  2. 02

    Append what happened, in order.

    POST /v1/users/{user_id}/events:append

  3. 03

    Retrieve the reconstruction — or let Arc answer.

    POST /v1/users/{user_id}/memory/retrieve

Append what happened

POST /v1/users/u_8fc2/events:append

{
  "idempotency_key": "chat:msg_7741:v1",
  "event_type": "message.user",
  "occurred_at": "2026-04-11T15:20:11Z",
  "source": "guide-chat",
  "actor": "user",
  "text": "I accepted the promotion. I'm staying.",
  "memory_policy": "allow"
}

Ask for the arc

POST /v1/users/u_8fc2/memory/retrieve

{
  "query": "Why did I decide to stay?",
  "budget_tokens": 4000,
  "require_fresh": false
}

One chronological cover inside the budget, with January and April restored exactly.

Start with one person. Add what happened. Continue from there.