Skip to content

Hindsight is missing from the memory provider list in docs/memory #5029

Open

Description

@benfrank241

What problem are you trying to solve?

Since #4963, Hindsight installs as eve add memory/hindsight and is a kind: "memory" entry in @eve/catalog. It does not appear anywhere in docs/memory/overview.mdx, which is where someone actually chooses a provider: the "Choose a provider" table lists File memory, Supermemory, Upstash AgentKit, Kybernesis Arcana and "your own", and each has a ### section below it.

That table and those sections are hand-written, and nothing derives them from the catalog, so a registry item can be installable while staying invisible at the point of choice. The same gap applies to the next memory provider added to the catalog.

Disclosure: I maintain the Hindsight provider, so the second half of this is self-interested. The general point about the table drifting from the catalog is not.

Proposed solution

Add a row and a section for Hindsight in the shape the other three already use.

Row for the "Choose a provider" table:

| [Hindsight](#hindsight) | `@vectorize-io/hindsight-eve` | Semantic recall on the live user message, one bank per scope | Automatic after each turn, plus a reflect tool |

Section, after Kybernesis Arcana:

### Hindsight

[Hindsight](https://hindsight.vectorize.io) is an open-source agent-memory
service, hosted or self-hosted, with an eve provider. It recalls memories
relevant to the user's message before each turn, captures the exchange after,
and gives the model a `reflect` tool for questions that need reasoning across
memories rather than retrieval of a few.

```bash
eve add memory/hindsight
```

The command installs `@vectorize-io/hindsight-eve` and writes a `hindsight`
slot:

```ts title="agent/memory/hindsight.ts"
import { hindsightMemory } from "@vectorize-io/hindsight-eve";
import { defineMemory } from "eve/memory";
import { byPrincipal } from "eve/memory/scope";

export default defineMemory({
  description: "Long-term memory about the current user.",
  provider: hindsightMemory(),
  scope: byPrincipal,
});
```

Each locked scope gets its own Hindsight bank, so recall reads one caller's
store rather than filtering a global search. See the
[Hindsight integration page](/integrations/hindsight) for options.

Only HINDSIGHT_API_KEY is required; HINDSIGHT_API_URL defaults to Hindsight Cloud and is set for a self-hosted server.

Prompt or implementation plan for our agents (optional)

Add the row and section above to docs/memory/overview.mdx, keeping the existing order and wording conventions.

Worth considering at the same time, and the part that stops this recurring: the provider table duplicates what @eve/catalog already knows. memoryEntries() carries the slug, name and tagline for every kind: "memory" entry, and apps/docs/scripts/validate-memory-registry.ts already asserts that the registry items and the catalog agree. A similar check over docs/memory/overview.mdx — every catalog memory entry has a table row and an anchor — would fail loudly the next time a provider is added to one and not the other, without having to generate the prose.

Validation: eve add memory/hindsight in a fresh eve init project, set HINDSIGHT_API_KEY, eve build exits 0 and the compiled manifest carries the slot:

"memories": [
  { "slot": "hindsight", "logicalPath": "memory/hindsight.ts", "visibility": "scope",
    "description": "Long-term memory about the current user." }
]

I ran that on eve 0.80.1 with @vectorize-io/hindsight-eve@0.3.1 while working through #4961.

Alternatives considered

  • Leave it. The integration page at /integrations/hindsight exists either way, so this is discoverability within docs/memory rather than a broken path.
  • Generate the whole table from the catalog. More invasive, and the per-provider prose is genuinely hand-written, so a validation check seemed the better trade.

Happy for your agents to take this.

Activity

  1. roboeve commented on Oct 19, 2026

    @roboeve
    Contributor

    Confirmed on origin/main: hindsight is a kind: "memory" entry in packages/eve-catalog/src/index.ts and ships as apps/docs/registry/memory/hindsight.ts, but docs/memory/overview.mdx has no table row or section for it. The proposed agent/memory/hindsight.ts snippet matches the registry file exactly.

    The drift check fits next to the existing one: apps/docs/scripts/validate-memory-registry.ts (registry:validate:memory) already compares memoryEntries() with registry.json. Extending it to overview.mdx should key on the catalog name, not slug, since anchors follow headings (arcana is #kybernesis-arcana, file is #file-memory).

    Labeled as a docs change, so no repro needed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions