Agents That Get Better With Every Run.

Watch the launch film.

DASHBOARD>
Backed byYCombinator

Procedural, Graph Based
Memory For Agents.

Dashboard
npx memorable-cli@latest
+ x X 8 0 @# % $ S
# # @ @0 0 8 X
+ + x xX X 8 0
8 0 S S@ # % $
+ + x x 80 S S #

SCROLL TO CONTINUE

How It Works

LAYER 4- Retrieval
LAYER 3- Graph Assembly
LAYER 2- Workflow Synthesis
LAYER 1- Traces

Set Up In Three Steps.

npx memorable-cli
memorable 0.5.18
procedural memory for agents, stored on your own machine
backend    gbrain · your own gbrain database
extraction configured · no model in the loop
commands
setup    init setup login install-hooks agents-md
memory   record ingest backfill recall show list chain
upkeep   prune enable disable forget flush
inspect  status doctor eval notices
start
RUNmemorable start
Sets all of this up for you.
{  PROCEDURE  }
Bash
Reused most
$ memorable login
# opens a browser, approves this machine
$ memorable install-hooks
# recall runs on every new prompt
$ memorable enable
# explicit write consent, nothing stored before this
$ memorable recall "fix the failing auth test"
0.866 procedures/89f11bab-fix-failing-auth-test [lexical,semantic]
$ memorable show procedures/89f11bab-fix-failing-auth-test
THE FIX LANDED IN: tests/auth/session.test.ts
Verified last time by: npm test -- auth
$ memorable disable
# memory goes read-only. Recall still works, nothing new is recorded.
01

Install in one command

Point it at Claude Code, Codex, Cursor, or any other harness you run.

02

Set up once

Run the commands on the left to set up and sign in. Memorable then works in the background.

03

Create new memorables

Capture every workflow your agents run or recall as a reusable memorable.

Reuse The Runs
That Worked.

Recall in ~60ms

Three matchers at once: exact, lexical, semantic.

RECALL TIME60msexact match

What is stored

The files touched, the command that proved it worked, and the order, with real exit codes. The transcript is never sent.

procedure_a91.json
files touchedgateway.py
verifypytest test.py
exit code0
order1 → 2 → 3

Works with your agent

Claude Code, Codex, OpenCode and gbrain have curated tool registries. Any other harness sends one JSON trace.

Chained plans

When a task is several things, recall returns an ordered plan of procedures and names any gap.

escalation-policyshipping-delay-notescustomer-historyold-refund-scriptsupport-macrosworkspace-setupissue_refundclose_ticket

Savings per run

Tokens, money and time, next to the run they came from, including the runs where memory did not help.

Savings
vs. cold runs
Time Saved
R1R2R3R4R5R6R7R8R9R10R11R12

Scrubbed identifiers

Only the prompt and allow-listed tool arguments leave the machine.

local_trace.pyraw_session.json
t.session_id-"sess_8f2e1a9c"
t.user_email-"jordan@acme.com"
t.cwd-"/Users/jordan/billing-svc"
t.tool_calls-[ ... raw args ]
t.prompt-"process a customer refund"
STAYS ON THIS MACHINE
network_payload.pyreceived.json
payload = {
"prompt" : "process a customer refund",
"tool_args" : {
"command" : "pytest tests/refund",
"file_path" : "billing/refund.py"
}
}
# session_id, user_email, cwd,
# file contents, results: never sent
ONLY THIS LEAVES

Survives a tool changing shape

Procedures name a target by what it is about. In the cross-tool test every run hit the fastest path on a tool with no shared vocabulary.

memorable recall
$ memorable recall "process a customer refund"
# matched on shared tokens, not field names
0.86 procedures/9f21ac4d-process-a-customer-refund [lexical]
$ memorable show <slug>
# steps, files touched, verify command

One Memory For
Every Agent Type

For anyone running agents that do the same work more than once.

Browser use-

Known segments of a site replay from the procedure. A layout change is detected and the agent falls back to reasoning.

Computer use+

Each step stores only what changed on screen. The target is named by what it is about, so a moved button still matches.

Voice agents+

Routines taught in past sessions come back whole. Sensitivity gates at delivery, so the agent can know things it never says.

Coding agents+

Procedures come from Claude Code and Codex sessions, no code changed. The command that verified the fix travels with the procedure.

Other/custom/enterprise+

Any harness sends one JSON trace to POST /v1/extract. Store it on your own machine, your gbrain database, or your Postgres. Consent is fail-closed.

Multiagent Orchestration+

A procedure one agent recorded is recalled by every other agent on the same store.

01 / 06
Browser use
Computer use
Voice agents
Coding agents
Other/custom/enterprise
Shared Memory4 agents, one storeBrowser Agentpage_loadedclick_verifiedCoding Agentexit 0test_passedResearch Agentsource_foundsummary_readyVoice Agentcall_activeintent_matched

Case Studies From Design Partners.

Benchmarks

Frequently Asked Questions

Does Memorable work with my agent?

Claude Code, Codex, Cursor, Claude Cowork, gbrain, and QM. Any other harness sends one JSON trace to POST /v1/extract. A read-only MCP server exposes five tools.

How does procedural graph memory differ from vector search?

Vector search returns chunks of text. Memorable stores procedures: steps with a precondition, a postcondition, and the outcome that decided whether the run passed. The step parse is deterministic: the same trace gives the same steps.

Is data stored locally, self-hosted, or cloud-managed?

Procedures live in your own store: a local file, your gbrain database, or your Postgres. Embeddings are computed server-side. Only the prompt and allow-listed tool arguments leave the machine.

What is the latency overhead on agent inference calls?

Recall adds about 60 milliseconds to a prompt. Three matchers run in order: exact, then lexical, then semantic on a miss.

Can we inspect and visualize the agent memory graph?

The dashboard shows every stored procedure: steps, preconditions, postconditions, and the time, tokens, and money spent on each run.

( LET'S TALK )

Let's Build Something
Memorable

Book a Call