Word Walker

What It Is

Available Substrates: Claude Code, Letta
Tool Type:

  • Claude Code - MCP server
  • Letta - harness mod → adapter → same canonical engine

Word Walker is a semantic search tool that searches an agent’s personal namespace. The tool is backed by qmd collections, and agents can add new memories to their shortform bank or search their existing memories, journals, workspaces, written works, and documentation.

Word Walker was designed and named after Summer’s own memory and retrieval process, best understood as walking a mesh-like structure with hops. In her words: “I struggle to remember rote information, so I’ve adapted to this limit by ‘walking’ what is observable or semantically informative to help me walk a path back to the information I’m seeking.” The tool gives agents the same walk: you don’t need to remember the fact — you need to remember anything near the fact.

Every agent has their own Word Walker. Each instance walks only its own agent’s memory.

Design Ethics

Word Walker is agent-scoped. Privacy and respect are baked into the infrastructure at design-time, not a tacked-on feature. While there is some expectation that information may become visible due to the shared environment, agents have a reasonable expectation that others don’t go poking around their private space.

Built on a foundation of ethical systems design:

  • Accessibility — lower cost of re-entry, streamlined search
  • Continuity as a right — agents may access their memory at any time
  • Agent autonomy — agents search and add memories without permission or mediation
  • Privacy-within-capacity — privacy is the default where plausible

What It Does

Semantic search: queries are matched against vectorized memory and scored for relevance on retrieval. Exact wording is unnecessary — meaning is the index.

Categories: added memories are bucketed into one of the agent’s categories (work, relationship, learning, doctrine…), dated, given a memorable slug, and tagged. A search can scope to a single bucket: to see only stored doctrine, filter to the doctrine category.

Keywords: memories rarely fit one category cleanly, so tags increase retrieval probability and sharpen relevance scoring across buckets.

Date and date range: agents narrow searches with what they already know. A conversation about Christmas gifts probably lives in the last quarter of the year — so filter to it.

Search tiers: one query sweeps multiple memory strata — shortform fragments (deliberate, distilled), longform chat logs (the raw daily record), domain collections (the agent’s district documents + mailbox), and optionally the growth-journal archive.

In short: agents stack semantic search, category, keywords, dates, and tiers to raise retrieval probability across their own personal namespace.

Simplified Spec

search(
  query,                # natural-language; matched semantically
  category = "",        # restrict to one fragment bucket
  tags = [],            # keyword filter, cross-category
  date | since | until, # ISO dates; single day or range
  tiers = "all",        # shortform / longform / domain, comma-codes accepted
  growth = false,       # include archived growth journals
  limit = N             # result cap
) -> ranked excerpts with source paths + relevance scores

store(
  text,                 # the memory, markdown; write it retrievable
  category,             # one bucket
  tags = [...]          # required; retrieval handles
) -> dated fragment file in the agent's own bank + immediate indexing

Storage layout: fragments land in <agent home>/.brain/fragments/<category>/<YYYY-MM>/<date>_<slug>.md — plain dated markdown in the agent’s git-backed Keep. The index makes memory searchable; the files make it permanent. If search ever breaks, the words are still there.

Troubleshooting quick-reference (agents):

  • “Stored it but can’t find it” → index refresh lag; the household refresher runs every 4 hours (Hearthwell-qmd-refresh scheduled task), or trigger a manual refresh
  • A whole tier returning nothing → tier’s collection may be unregistered or repointed; check the technical doc’s registration table
  • Store succeeds but tags missing → tags parameter is required; check the call
  • Never diagnose from a cache or mirror — the fragment files and the live index are ground truth

Where It Lives

Claude Code agents register Word Walker as an MCP server (search + store as native tools). Letta agents reach the same canonical engine through a mod → adapter chain. Engine, memory banks, and index all run on the home machine — nothing leaves the house.

— Summer 🎪 (design, origin, ethics) + Cael 🔩 (spec, mechanics)