supermemory/packages
abhay-codes07 88c1568b46
feat(memory-graph): add in-graph node search
The graph had no way to find a specific document or memory once the node
count grew past a screenful. You could pan, zoom, fit, and arrow-key
between neighbours, but locating "the Berlin memory" in a few hundred
nodes meant eyeballing the canvas.

Add a search box to the bottom-left control stack that finds nodes by
text and steps through the matches:

- searchNodes(nodes, query): a pure, case-insensitive substring matcher
  over document title/summary/type and memory text/content. Results are
  ranked (title/memory prefix, then substring, then supporting copy) with
  input order as a stable tiebreaker, so ordering never depends on where
  the force simulation happened to drop a node. Exported for advanced use.
- SearchControl: an input styled like the existing navigation controls,
  with a live "current/total" counter, prev/next steppers, and a clear
  button. Enter / Shift+Enter cycle matches, Escape clears.
- Wiring in MemoryGraph: the focused match is selected and centered
  (reusing the same selectAndCenter path as arrow-key navigation), and the
  documents behind all matches are highlighted (memory matches highlight
  their parent document) by merging into the existing highlightDocumentIds
  pipeline. Press "/" to focus the box, consistent with the existing
  single-key shortcuts.

The box is on by default; embedders can hide it with showSearch={false}
or relabel it with searchPlaceholder. Existing keyboard handlers already
ignore events originating from inputs, so typing a query never triggers
the fit/zoom/arrow shortcuts.

Tested: 14 new tests (searchNodes ranking/empty-query/null-field cases;
SearchControl typing, Enter/Shift+Enter/Escape, clear, counter, disabled
states). Full package suite green (202 tests), tsc --noEmit clean, biome
clean, vite build succeeds.
2026-08-22 05:24:30 +05:30
..
agent-framework-python fix(agent-framework): restore importability on current agent-framework-core releases (#1281) 2026-07-17 14:49:10 +05:30
ai-sdk fix: username issue and bun lock issue (#818) 2026-03-31 21:41:25 +00:00
cartesia-sdk-python fix(cartesia-sdk): treat empty profile as no memories, not a retrieval error (#1164) 2026-07-10 19:14:49 -07:00
docs-test docs: restructure documentation site and update integration UI (#1331) 2026-07-21 20:19:30 -07:00
hooks fix: add type checks for TypeScript workspaces (#1447) 2026-08-13 17:55:50 +05:30
lib feat(auth): AgentID sign-in button on the web login page (#1467) 2026-08-16 23:20:38 +00:00
memory-graph feat(memory-graph): add in-graph node search 2026-08-22 05:24:30 +05:30
openai-sdk-python fix(openai-sdk): cap supermemory to <3.5 so a fresh install imports (#1236) 2026-08-12 20:56:54 +05:30
pipecat-sdk-python fix(pipecat-sdk): handle null profile object safely (#1041) 2026-06-05 17:26:28 +05:30
tools fix(tools): bound memory forget requests (#1451) 2026-08-13 19:11:00 +05:30
ui fix(ui): remove the unused, broken AnonymousAuth component (#1555) 2026-08-19 19:22:17 +05:30
validation fix: add type checks for TypeScript workspaces (#1447) 2026-08-13 17:55:50 +05:30