Proof of Concept · Not Released
ALPHA-Memory - Team Memory for AI Coding Agents
Shared, hosted memory for Claude Code and, later, other coding agents, designed to give every agent on your team, on any PC, the few decisions, lessons and traps that matter for each prompt, from an EU-hosted store meant for millions of items.
Internal use first, nothing released yet. Notify Me opens your own mail program; reply "stop" at any time (privacy).
Designed For
- Claude CodeFirst Host
- Remote MCPAny MCP Client
- Windows, macOS, LinuxNo Resident Daemon
- Postgres or MongoDB AtlasHosted, Behind One Adapter
Confirmed Facts
- Real Prompts in the Eval Set
- 1,096
- Redaction Layers Before Any Vendor
- 5
- Memory Systems Read From Source
- 25
- Store Region
- EU
Facts as of October 2026, not benchmark results: 1,096 prompts recorded in 54 of our own coding sessions, five redaction layers in the code that prepares them, the memory systems we studied before building, and both stores under test running in Belgium. Measured results appear here only after the sealed test set has been read. The language-model and embedding vendors currently process redacted text outside the EU; an EU route is being evaluated.
How It Works
Capture. Recall. Learn.
The design: three stages, one hosted service. Hooks on each PC capture what happens in a session, the service recalls what matters for the next prompt, and extraction turns sessions into small facts with citations.
-
01
Capture
Short-lived hooks in each agent host send transcript deltas, compaction summaries, tool names and touched paths through an outbox. No resident daemon; retried, checkpointed and idempotent on the server.
-
02
Recall
On every prompt: a vector search, then a hard character budget. Phase 0 measured keyword lanes and a reranker on real sessions and kept neither. A few items, or, by design, nothing at all when nothing is relevant.
-
03
Learn
Sessions become single-fact items - decisions, lessons, traps, preferences, procedures - each with its citations. New facts are reconciled against old ones: duplicate, merge, supersede or ignore.
Recall
What Happens on Every Prompt.
An illustrated walk through the recall path. The steps are the design; the prompts and memories are made up for the example.
> why does the invoice export skip credit notes? recall ✓ redact prompt checked before any vendor call ✓ lanes vector: this project, your org, your private items ✓ rank candidates fused and ordered by relevance ✓ select 2 items + 1 episode, inside the character budget injected ruling Credit notes export through their own job (from the repo's rules) trap The invoice query filters on type = invoice; credit notes never match episode The session where the export split was decided, with citations
> rename total to grandTotal in this file recall ✓ redact prompt checked before any vendor call ✓ lanes candidates found ✗ floor nothing clears the relevance floor injected nothing: the prompt goes through unchanged
> add a test for the new parser recall … service no answer within the 3 s hook timeout → fail open the agent continues without memory → report the miss is logged and counted, never silent
[trap 2026-09-02 dev-b project] The invoice query filters on type = invoice - credit notes never match it; filter on the document class instead (cites: src/billing/InvoiceExport.ts) 0199A3C2 verify cited files before acting
The format the design injects: kind, date, author and scope, then the fact, its citations and its id. The agent is told to check the cited files before it acts on a memory.
Features
Twelve Things a Team Memory Has to Get Right.
The design, feature by feature: the whole loop for teams, with the failure modes of earlier memory systems designed out. It is being built and measured now; none of it is released.
-
Hooks No Daemon
Capture Without a Daemon
Exec-form hooks capture main and subagent sessions, then exit. Nothing keeps running on your machine.
-
5 Redaction Layers
Redacted Before Any Vendor Call
Five layers - known secret values, secret patterns, structural rules, personal data, then all of them again on the text exactly as it is stored - are designed to run before any vendor call, log line or store write: on the PC for captured sessions, and again on the server.
-
Items + Episodes
Small Facts With Citations
Decisions, lessons, traps, preferences, procedures, state, references and rulings: one fact per item, each linked to the session it came from.
-
Budget per Prompt
A Few Memories, or None
Recall injects within a fixed character budget and abstains when nothing is relevant, so memory never floods the context window.
-
MCP Remote
Tools for Deliberate Recall
Search (raw chunks included), get, save, supersede, forget, timeline and promote, over remote MCP. Every reply is capped.
-
Scopes Org · Project · You
Every PC, Every Developer
Org, project, developer and device scopes; private, project or org visibility; revocable tokens per device.
-
Validity Windows
Superseded, Not Piled Up
A replaced fact stops being recalled. Rulings from your repo are never superseded automatically, and every forget is audited.
-
Git Native
Your Repo's Rules, Mirrored
Rule files, memory files and module docs are mirrored read-only as rulings; facts that prove durable are proposed back into the repo.
-
Weekly Report
A Learning Loop
A weekly report proposes promotions, flags contradictions and surfaces the corrections you keep repeating, so a repeated correction becomes a rule.
-
Hard Caps
Spend You Can See
A hard monthly cap per org, developer and project, a fixed degrade order, batch extraction and a visible cost per developer-month.
-
Canaries by Design
No Silent Failure
A known item must be found, a nonsense prompt must abstain, another developer's private canary must never appear. Per-lane health, loud alerts.
-
Eval Harness
Every Change Must Pass the Eval
A labelled prompt set re-runs against any configuration or store and reports quality, latency, cost and storage. It will gate every retrieval change.
Privacy
What Leaves Your PC.
The design, in the order it runs. What is captured, where it is redacted, and where it goes - including the one place it leaves the EU today.
-
01 · Your PC
Captured, Then Redacted
Short-lived hooks capture transcript deltas, compaction summaries, tool names, touched paths and command heads. All five redaction layers run here first, before anything is sent.
-
02 · EU
Redacted Again, Then Stored
The ALPHA-Memory service runs the same layers again, then writes to the hosted store (Postgres or MongoDB Atlas) in the EU. Request bodies are never logged.
-
03 · Outside the EU Today
Redacted Text Only
The language-model and embedding vendors receive redacted text for extraction and search. Vendor training is opted out; an EU route is being evaluated.
The Five Redaction Layers, in Order
- Exact Known ValuesThe values of your own keys and passwords, matched exactly wherever they appear.
- Secret PatternsVendor key formats, tokens, private key blocks and connection strings, matched by shape.
- Structural RulesSecret-named assignments and credentials inside URLs, such as
PASSWORD=...oruser:pass@host. - Personal DataEmail addresses, phone numbers and IBANs.
- The Stored FormThe same rules once more on the text exactly as it is written to storage, so a secret that only its escaped form reveals is caught too.
One exception is under review: the prompt sent for recall. The current design sends it over TLS to the EU service, which redacts it before any vendor call or write and never logs it.
Lessons Learned
Designed Not to Break at Scale.
The memory system we ran before kept a whole scope as one value, merged whole session batches into its graph and read whole scopes on every search. Measured on our own deployment on 23 September 2026: one scope had grown to 134 MB, and 99.7% of its 4.7 million graph links were false. ALPHA-Memory treats that as a failure class and designs it out, in every store.
-
One Row per Record
No array that grows with usage. A link lives on the side whose count is bounded.
-
Caps Enforced by the Database
Every string and array is capped by a CHECK constraint or a JSON schema that rejects the write, not by application code alone.
-
Every Read Has a Limit
A row limit plus a byte and time budget on every query. Nothing lists a whole scope, and vectors never leave the store.
-
Indexes Move With the Write
Indexes are updated with each write, never rebuilt from a whole scope on a request path.
-
A Test at Every Threshold
Each cap has a test that fails at the threshold, with a positive control that proves the test can see the failure.
-
Loud When Empty
An empty result must look different from a broken one. Only the recall hook fails open; everything else reports.
Limits the Database Enforces
Design values from the architecture; the proof of concept may change them, and has changed one: the injection budget.
| Limit | Design Value |
|---|---|
| Item Title | 160 characters |
| Item Body | 1,200 characters |
| Entity Keys per Item | 24 |
| Citations per Item | 8 |
| Outgoing Links per Item | 16 |
| Episode Section | 2,000 characters |
| Chunk | 8,000 characters |
| Raw Digest per Ingest | 2 MB |
| Injected per Prompt | 5,200 characters (Phase 0 picked it over 2,600) |
| MCP Reply | 20 results, 12k characters |
Compare · As of October 2026
Where Each Kind of Memory Lives.
A comparison by kind of memory, not a benchmark and not a ranking of products; products within a kind differ. The ALPHA-Memory column describes its design, which is still being built and measured.
| Property | ALPHA-Memory (Design) | Built-In Agent Memory | Local Memory Server | Hosted Memory Service |
|---|---|---|---|---|
| Where It Lives | A hosted store in the EU | Files on the machine, or the host's own cloud | A database on one machine | The vendor's cloud |
| Across PCs | Yes, by design | Varies by host | With your own sync | Yes |
| Across a Team | Org, project and private scopes | Varies by host; some share per repo or workspace | Varies by product | Often, on team plans |
| What Reaches the Prompt | A few ranked items within a budget, or nothing | A memory file or index at session start; varies by host | Varies by product | Varies by product |
| Store Engine | Postgres or MongoDB Atlas, behind one adapter | Files or the host's own store | SQLite, a local vector store or a graph database | Varies, often not disclosed |
| Runs on Your PC | Short-lived hooks only | Nothing extra | A server process | A plugin, SDK or local worker; varies by product |
| When It Is Down | Designed to fail open after 3 s and report the miss | Not applicable | Depends on the server | Varies by product |
No Benchmark Numbers Yet
Measured Before It Is Claimed.
There are no benchmark numbers on this page yet, on purpose. ALPHA-Memory is being measured on 1,096 real prompts from 54 of our own coding sessions, against the memory system it replaces. The method: a judge model grades every prompt of the development set, options are compared by paired differences with session-clustered 95% confidence intervals, and the simpler option wins a tie. The chosen configuration is recorded before the sealed test set is read, exactly once. The real acceptance is a month of daily work beside the system it replaces.
Agents
Claude Code First. More Hosts Next.
Claude Code is the first host: hooks for capture and per-prompt recall, remote MCP for deliberate search and save. Other hosts follow through one CLI shim and the same remote MCP server.
-
Hooks for capture and per-prompt recall, remote MCP tools; subagents are captured and recalled through a SubagentStart hook.
-
-
-
-
-
-
Product names belong to their owners and are used only to say which hosts ALPHA-Memory is built for. No endorsement is implied.
Status · As of October 2026
Where It Stands.
Each phase starts only after the one before it has passed its gate.
-
Done
Research
The stacks of 25 memory systems read from their published source (closed engines from their docs), plus the built-in memories of the major agent hosts.
-
Now
Proof of Concept
Retrieval options measured on real sessions: embedding models, keyword lanes, rerankers, injection size and extraction cost.
-
Next
Cloud Recall From Any PC
The hosted service, remote MCP, device tokens and the Claude Code client, with recall in shadow mode first.
-
Then
Extraction and Cutover
Extraction, reconcile and supersession, an eval gate on the live service, then the switch.
-
Later
Teams and More Hosts
More developers, more projects, and agent hosts beyond Claude Code.
FAQ
Questions, Answered Plainly.
Is It Released?
No. ALPHA-Memory is a proof of concept, measured on real coding sessions. Nothing is installable yet, which is why this page has no install command.
Does It Make Agents Better?
Not measured yet. The chosen configuration must not trail the memory system it replaces by more than a small margin fixed in advance, read once on a sealed test set, and then has to prove itself in a month of daily work. The numbers will appear here with their method.
What Leaves My PC?
Captured session text, after five redaction layers have run on your PC. The data path above shows where it goes, including the one place it leaves the EU today.
What Happens When the Service Is Down?
By design, the recall hook gives up after 3 seconds and the agent carries on without memory; the miss is logged and counted. Captured text waits in an outbox on your PC and is sent later.
Why Not the Built-In Memory?
Built-in memories are useful and improving fast. As of October 2026, Claude Code's auto memory is machine-local and loads an index of at most 200 lines or 25 KB per project at session start. ALPHA-Memory is for a team: many PCs, developers and projects, and per-prompt recall from a hosted store designed for millions of items.
Will It Be Open Source?
Not decided. Whether it ships as open source, a hosted service, both or neither is decided after the eval passes.
Contact
Internal First.
ALPHA-Memory will run inside our own work first. Whether and how it is offered outside it - open source, a hosted service, both or neither - is decided after the eval passes. If you want to hear when that is decided, ask to be notified.
Or write to contact@alpha-memory.com. Updates come from us, never from a newsletter service; reply "stop" to end them.