Memory Layer

Browser UI

The browser UI is the web companion to the TUI. It is served by mem-service and uses the same backend APIs for memories, query, activities, watchers, embeddings, resume briefings, errors, and curation review.

Open it while the service is running:

http://127.0.0.1:4040/

When running from source, build the web assets and run the service:

npm --prefix web ci
npm --prefix web run build
cargo run --bin memory -- service run

Tabs

TabWhat it shows
MemoriesCanonical memories, filters, markdown-style canonical text, embeddings, sources, history, and related memories.
AgentsLocal Codex and Claude sessions, current-project sorting, tokens, context pressure, child processes, ports, and rate limits.
QueryCited answers, ranked memory results, lexical/semantic/graph timing, token usage, ranking explanations, and graph connections.
ActivityPersisted activity, token and duration metadata, get-up-to-speed briefings, and LLM audit/debug status.
ErrorsPersisted diagnostics and browser-session errors with explanations, fix hints, doctor hints, commands, and raw errors.
ProjectCounts, memory type/source breakdowns, embedding coverage, automation state, watcher status, and recent activity.
ReviewReplacement proposals with policy, target/candidate detail, reason, and approve/reject actions.
WatchersWatcher presence, heartbeat state, owner agent/session, restart attempts, and recovery details.
EmbeddingsConfigured embedding backends, active search backend, automatic creation, coverage, re-embed, and reindex controls.
ResumeRe-entry briefing with checkpoint, current thread, next steps, recent changes, context memories, timeline, warnings, and commits.

The web-only Bundles tool remains under the More menu for bundle export/import previews and transfer.

Runtime status

The status strip shows the same operational components as the TUI bottom bar:

ComponentMeaning
WebBrowser UI version and restart-required state.
ServiceBackend version, primary/relay role, and service identity.
ManagerWatcher-manager state, mode, tracked sessions, and warnings.
WatchersActive and unhealthy watcher counts.
SkillsRepo-local Memory skill bundle version and status.

If an install or upgrade writes a restart marker, the Web component enters restart state so you know to reload the page or restart the running UI.

Query evidence

The Query tab is designed to explain how an answer was produced:

  • answers cite numbered returned memories
  • timing separates browser roundtrip, lexical search, semantic search, graph retrieval, rerank/relation work, and answer generation
  • result details show score components such as text score, semantic similarity, relation boost, graph boost, tag/path matches, confidence, importance, and recency
  • graph connections explain which file or symbol helped retrieve a memory

Use query history with the up/down arrows in the query box. Restoring a previous query restores both the question and the results that belonged to it.

Activity and audit

The Activity tab can generate deterministic and LLM-backed handoff briefings.

BriefingUse when
DeterministicYou want cheap, grounded context from persisted activities and memories.
LLM briefingYou want a synthesized narrative and have an LLM backend configured.

The same tab can toggle LLM audit/debug logging. Enable it briefly when debugging prompts or provider behavior, then disable it again because audit events can include large prompt payloads.

Help

Press h or use the Help button to open contextual help for the active tab. Press h again or Esc to return.

Next

Read TUI, Operations, or CLI service commands.

© 2026 Olivier Van Acker (3vilM33pl3). Memory Layer is AGPL-3.0-or-later with commercial licensing available.

On this page