# Memorable

> Source: <https://www.memorable.sh/doc>
> Published: 2026-10-03 14:34:59+00:00

# Memorable

An agent finishes a task; Memorable stores how it was done and replays it when a similar task returns. Storage stays on your side and consent is fail-closed.

## Pick your route

Four ways in. Each one ends with this machine signed in and recording. Nothing below asks an agent to open a browser.

### A coding agent on a repo

Claude Code, Codex, Cursor, Devin, Antigravity.

npx memorable-cli

Picks the agent, asks whether to make a page for this project, opens one tab, you press Approve. Hooks and consent are written for you.

### Your own agent

Browser, voice, smart home, research, ops.

memorable.sh/dash, Environments, Connect

Pick the card, Save, Copy prompt. The key is already in it. Paste it into the agent that builds your project; it adds recall, replay and record.

### No terminal

claude.ai, Cowork, Claude desktop.

memorable.sh/dash, Connect, Create a connector

Add the link under Connectors in Claude. It searches memorables before it plans and records when it finishes.

### A server with no Node

A backend that runs agents.

memorable.sh/dash, Account, New key for an agent

POST /v1/extract with the key. Store the draft on your side.

## Quickstart

Two minutes. Signing in links this machine to your workspace; the default backend is a standalone local store, and on a machine running gbrain you can point it at your own database with **memorable init gbrain** afterwards.

### connect this machine

### no node or npm on this machine

### store a procedure, then find it

## For agents

Telling a coding agent "use memorable" is enough. Every step is a plain CLI call it can run itself. The drop-in file lives on **AGENTS.md**.

### one line

## Measured

Against the same tasks run without memory, on two independent runs.

### Recall vs no recall

```
agent turns   -19%, replicated
pass rate     every run passed
injected size ~293 tokens
vs a 15,593-token skill: 0% turns
```

## Extraction API

One endpoint converts a tool-call trace into a procedure. Full reference on the **API** page.

### POST /v1/extract

```
BASE=https://memorable-\
extraction-api.memorable.workers.dev

curl $BASE/v1/extract \
  -H "Authorization: Bearer \
$MEMORABLE_API_KEY" \
  -H "Content-Type: \
application/json" \
  -d '{
    "session_id": "run-183",
    "task_description": 
"rotate the TLS cert",
    "harness": "my-orchestrator",
    "tool_calls": [
      {"name": "shell",
       "input": {"command": 
"certbot renew"},
       "result": {"ok": true}}
    ]
  }'
```

### Response · 200

```
{
  "draft": {
    "title": "Rotate the TLS cert",
    "schema_version": "1.0.0",
    "steps": [
      {
        "seq": 1,
        "action": "shell",
        "activity_class": "execute",
        "command": "certbot renew",
        "repeat_count": 1
      }
    ],
    "postconditions": [
      "final command exited 
successfully: certbot renew"
    ],
    "embedding": [],
    "embedding_model": ""
  },
  "request_id": "82886df0-..."
}
```


