Skip to content

Releases: thenervelab/hippius-mem

0.5.0 - 2026-10-23

Choose a tag to compare

@github-actions github-actions released this 23 Oct 11:35
cc02443

Release Notes

Added

  • A redesigned hippius-mem dashboard: one screen with vaults and repos on
    the left, notes in the middle and the selected note on the right, over a
    dark glass theme with the Hippius logo. Above the list it shows live notes
    by type, the last 7 days of activity and the most reused notes. Search,
    type chips and tag filters compose; /, j/k and g work from the
    keyboard. The fonts (Geist, Geist Mono, Unbounded, all SIL OFL 1.1) and the
    logo are bundled in the binary and served from /assets/, so the page still
    loads nothing from the network.

  • MemoryStore::recall_all_repos and RecallScope in hippius-mem-core:
    rank a query against every repository of a team, for tools that browse a
    whole vault. It does not mark hits as recalled, so it never reinforces.
    The agent-facing recall stays repo-scoped.

  • MemoryStore::refresh_now: the cheap change check of refresh_if_stale
    without its 20-second window, for a person asking whether anything is new.
    The dashboard's sync pill uses it, so "Synced" now means it checked, and a
    failed check shows as failed.

  • Wallet login (POST /api/auth/verify/, used to mint S3 sub-tokens) now
    sends substrate_signature: an sr25519 signature over the challenge message
    by the mnemonic's Substrate key, under the standard substrate context.
    The Hippius API will soon refuse logins from accounts that have never sent
    it (#128).

Fixed

  • Dashboard search with no repo selected now searches every repo of the
    vault. It used to search only team-wide notes. With a repo selected, search
    now returns only that repo's notes, matching the list.
  • Opening a note found by a dashboard search no longer counts as a teammate
    reusing it. Reuse is an agent signal; a person browsing used to append a
    Reinforce op.
  • The dashboard shows a note's links. They come from Link ops, which only
    the op-log history folds in, so the note detail always returned an empty
    list. Links now load with the audit trail (/notes/{id}/history carries
    links; the note detail no longer has the field).
  • recall and get no longer stall for minutes behind a background sync
    (#125). Three causes, each fixed:
    • A Relate or Reinforce in the op-log tail forced a full index rebuild.
      A get after a recall writes a Reinforce, so this was most syncs. The
      incremental path now applies both.
    • A full rebuild ran the embedding model over every live note. It now reuses
      a vector this process computed when the note's summary is unchanged, and
      embeds the rest.
    • A corpus embed held the model lock from start to finish, so a query embed
      waited for all of it. A large embed now runs in batches of 256 and lets
      any waiting query or single-note embed go first before each batch, so a
      query waits for at most the batch in flight.
    • A sync pass discarded because this process wrote during it threw its
      vectors away, and the retry embedded the same text again (on a cold start,
      the whole corpus, up to four times). The retry now reuses them.
  • A checkpoint's stored vectors are no longer reused by a different embedding
    model of the same width (all-MiniLM-L6-v2 and bge-small-en-v1.5 are both
    384). The checkpoint now records the model; a restore under another model
    discards the vectors and embeds again.

Changed

  • Checkpoints carry a new optional vector_space field. Older releases ignore
    it and keep reading new checkpoints. A checkpoint without it (written by an
    older release) has its vectors discarded: the first cold start after
    upgrading embeds the whole corpus once (minutes on a few-thousand-note team)
    and writes a stamped checkpoint that later cold starts on the same model
    reuse. While some machines still run an older release, each checkpoint they
    write can cost one more such cold start. A team whose members run different
    embedding models shares one checkpoint: a cold start that finds the other
    model's checkpoint newest embeds the whole corpus.

Security

  • Removing the full rebuild that ran on most syncs also removes a side effect:
    it used to clear a forged checkpoint record (a wrong summary, tags or
    vector written by a current team member) within a sync or two. Such a
    forgery now lasts until the note is edited or the index is rebuilt in full.
    A full rebuild and hippius-mem snapshot embed again every vector that
    came from a checkpoint, and a machine keeps a vector it computed itself
    over a checkpoint's. See "A snapshot's ... are not verified" in
    docs/SECURITY.md.

hippius-mem-lean 0.5.0

Install hippius-mem-lean 0.5.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/thenervelab/hippius-mem/releases/download/v0.5.0/hippius-mem-lean-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install thenervelab/tap/hippius-mem-lean

Download hippius-mem-lean 0.5.0

File Platform Checksum
hippius-mem-lean-x86_64-apple-darwin.tar.xz Intel macOS checksum

hippius-mem 0.5.0

Install hippius-mem 0.5.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/thenervelab/hippius-mem/releases/download/v0.5.0/hippius-mem-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install thenervelab/tap/hippius-mem

Download hippius-mem 0.5.0

File Platform Checksum
hippius-mem-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
hippius-mem-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
hippius-mem-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

0.4.2 - 2026-09-28

Choose a tag to compare

@github-actions github-actions released this 28 Sep 19:45
045257d

Release Notes

Security update (rmcp 2.2.0) and a SessionStart brief that fits its time box
again. No format or protocol change; mixes freely with 0.4.x.

Fixed

  • The SessionStart brief (hippius-mem brief) syncs directly instead of probing
    first: a fresh process can never skip the sync, so the probe only repeated its
    op-log LIST. 7.6-11s to about 4s on a 4.6k-note team, which brings it back
    under the hook's 8s time box (past it, the hook injects nothing).

Security

  • rmcp 1.8.0 to 2.2.0, closing GHSA-9pj6-vhgr-3mwh (unauthenticated
    session-table leak in the Streamable HTTP server transport that
    hippius-mem serve uses; exposure here was limited to loopback behind the
    bearer token), GHSA-33f5-2c5q-wgwj (OAuth protected-resource metadata
    validation) and GHSA-9g45-5xwm-f3wc (custom headers leaking to cross-origin
    redirects). No protocol change for clients.

hippius-mem-lean 0.4.2

Install hippius-mem-lean 0.4.2

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/thenervelab/hippius-mem/releases/download/v0.4.2/hippius-mem-lean-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install thenervelab/tap/hippius-mem-lean

Download hippius-mem-lean 0.4.2

File Platform Checksum
hippius-mem-lean-x86_64-apple-darwin.tar.xz Intel macOS checksum

hippius-mem 0.4.2

Install hippius-mem 0.4.2

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/thenervelab/hippius-mem/releases/download/v0.4.2/hippius-mem-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install thenervelab/tap/hippius-mem

Download hippius-mem 0.4.2

File Platform Checksum
hippius-mem-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
hippius-mem-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
hippius-mem-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

0.4.1 - 2026-09-28

Choose a tag to compare

@github-actions github-actions released this 28 Sep 18:21
4728d0a

Release Notes

Cheaper freshness checks: a recall that re-probes the shared log reads each
author's signed head instead of listing every op key. No format change; mixes
freely with 0.4.0.

Changed

  • The pre-read freshness probe reads the per-author signed heads (a few small
    objects) instead of listing every op key, and syncs only when a head moved.
    The full op-key count still runs when a head moved or cannot be read, and at
    least every 5 minutes as the backstop for a head that failed to publish.
    Measured on a 4.6k-note team: a quiet refresh 2.0-3.1s to 0.4-0.7s, and the
    first request after warmup no longer lists the op log at all. Tradeoff: a
    write whose head reads back unchanged (a failed head publish, a stale read of
    the overwritten head, or two machines racing under one identity) now appears
    within 5 minutes rather than on the next probe; a normal write still appears
    on the next probe.
    hippius-mem profile shows both probes and reports any op-log author that
    publishes no head.

hippius-mem-lean 0.4.1

Install hippius-mem-lean 0.4.1

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/thenervelab/hippius-mem/releases/download/v0.4.1/hippius-mem-lean-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install thenervelab/tap/hippius-mem-lean

Download hippius-mem-lean 0.4.1

File Platform Checksum
hippius-mem-lean-x86_64-apple-darwin.tar.xz Intel macOS checksum

hippius-mem 0.4.1

Install hippius-mem 0.4.1

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/thenervelab/hippius-mem/releases/download/v0.4.1/hippius-mem-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install thenervelab/tap/hippius-mem

Download hippius-mem 0.4.1

File Platform Checksum
hippius-mem-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
hippius-mem-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
hippius-mem-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

0.4.0 - 2026-09-28

Choose a tag to compare

@github-actions github-actions released this 28 Sep 16:31
9ed21eb

Release Notes

Faster recall: a new session's first sync drops from ~36s to ~5s and a
refresh re-sync from ~19s to ~3.5s on a 4.6k-note team, by running the cold
sync once, caching the index checkpoint, and writing it ~5x smaller. Upgrade a
team together (see Changed).

Added

  • hippius-mem profile: times each cold-start phase (store build, refresh probe,
    op-log read + verify, checkpoint load, cold sync and re-sync, recall) against the
    bound team's real bucket, splitting wall time from S3 time with LIST/GET counts
    and bytes. The gateway is wrapped read-only, so it never writes to the bucket.
  • InstrumentedBlobStore (core): a BlobStore decorator counting calls, S3 time
    and bytes per operation, with an optional read-only mode.
  • sync_phases criterion bench: per-phase CPU cost over a 5,000-note corpus plus
    a round-trip census, run nightly beside store_benches.
  • llms.txt: a short agent index that points at FOR-AGENTS.md and the README.

Changed

  • Index checkpoints are written about 5x smaller (94 MiB to 19 MiB measured on a
    4.6k-note team): sealed records and embedding vectors are stored as base64
    instead of JSON number arrays. Checkpoints written by older releases still
    load. Upgrade a team together: a release before this one downloads each
    new-format checkpoint (up to three are retained) before skipping it as
    unreadable, then full-replays and writes a legacy-format checkpoint that this
    release must download again. Every result stays correct; a mixed-version team
    just moves large checkpoints back and forth until everyone upgrades.
  • The newest index checkpoint is cached (in memory, and beside the blob cache for
    S3 profiles) and reused while the bucket still lists it, instead of being
    downloaded on every sync. A new session and every refresh re-sync skip the
    download (90 MiB for a 4.6k-note team); measured cold sync 16s to 4.4s,
    re-sync ~19s to ~4s.

Fixed

  • A sync whose op-log listing lagged behind this machine's own just-acknowledged
    write no longer drops that note from the local index (or rolls an edit back)
    until the next sync. Such a view is detected (this author's head is missing
    from it), installed monotonically with the unseen own notes kept, and never
    written as a checkpoint.
  • An author's first sync in every new process no longer discards and re-runs its
    whole pass (op-log read, checkpoint download, rebuild): the install stamp is
    now taken after the read re-seeds the chain head. Halves cold-start sync time
    for anyone who has written a note (36s to 16s measured on a 4.6k-note team).
  • Live-S3 CI job runs against versitygw (sha256-pinned release binary) instead
    of MinIO: MinIO archived the project, and neither quay.io/minio/minio nor
    dl.min.io serves it any more, which failed this required check on every PR.

hippius-mem-lean 0.4.0

Install hippius-mem-lean 0.4.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/thenervelab/hippius-mem/releases/download/v0.4.0/hippius-mem-lean-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install thenervelab/tap/hippius-mem-lean

Download hippius-mem-lean 0.4.0

File Platform Checksum
hippius-mem-lean-x86_64-apple-darwin.tar.xz Intel macOS checksum

hippius-mem 0.4.0

Install hippius-mem 0.4.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/thenervelab/hippius-mem/releases/download/v0.4.0/hippius-mem-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install thenervelab/tap/hippius-mem

Download hippius-mem 0.4.0

File Platform Checksum
hippius-mem-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
hippius-mem-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
hippius-mem-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

0.3.0 - 2026-09-18

Choose a tag to compare

@github-actions github-actions released this 18 Sep 10:20
615d833

Release Notes

One shared MCP process per machine: Claude / Grok / Codex talk to
hippius-mem serve over loopback HTTP, so N sessions no longer each load
ONNX (#108).

Added

  • hippius-mem serve: loopback streamable-HTTP MCP daemon so N Grok/Claude/Codex
    sessions share one process and one ONNX load (#108).
    install (embeddings+http-mcp builds) writes a user LaunchAgent / systemd
    unit, points those clients at http://127.0.0.1:17432/mcp with a standing
    bearer token (Grok: headers; Codex: http_headers — Codex ignores
    Grok's key), and keeps Gemini/OpenClaw/Hermes on stdio. Bare hippius-mem
    is still the stdio server. install only rewrites those clients to HTTP
    after /health succeeds; otherwise it leaves stdio entries and prints a
    warning. The HTTP handshake tells agents to pass repo (omitted repo is
    team-global — the daemon has no client cwd). One process cannot route per
    repo, so serve refuses a config with more than one team profile or a sole
    org-routed profile; install also refuses a storage = "local" trial vault
    (a never-exiting service would own that vault's exclusive write role).
    install --uninstall --agent grok leaves the unit running if Claude or Codex
    still points at it. Flag parse and port bind happen before the ONNX load.
    HTTP sessions idle for up to 24 hours before eviction. Client configs that
    embed the bearer token are written 0600.

Fixed

  • Hermes first-landing: FOR-AGENTS.md Goal 3 and the AGENTS.md / README
    opener now say "wire the client" (MCP for most agents, the memory-provider
    plugin for Hermes) instead of "register the MCP server".
  • scripts/install.sh Done block tells Hermes to restart so the plugin loads.
  • hippius-mem doctor --offline fails when Hermes is present but the plugin,
    sidecar, or memory.provider is missing, and names install --agent hermes.
    The check is on the doctor CLI only — not the encryption probe that
    quickstart / upgrade share — so --solo still finishes on a machine
    that already has ~/.hermes.
  • Hermes plugin plugin.yaml now lists system_prompt_block. doctor --offline
    treats a copied yaml that omits that hook as unwired (the 0.2.0 install).
    Re-run hippius-mem install --agent hermes (or install.sh --update).
  • cargo deny: chacha20 0.10.2 — 0.10.1 was yanked (rmcp → rand).
  • Source scripts/install.sh (--from-source / --update) now builds
    embeddings,dashboard,http-mcp, matching the shipped dist binary. Without
    http-mcp, install --all-detected would keep Claude/Grok/Codex on stdio.

hippius-mem-lean 0.3.0

Install hippius-mem-lean 0.3.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/thenervelab/hippius-mem/releases/download/v0.3.0/hippius-mem-lean-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install thenervelab/tap/hippius-mem-lean

Download hippius-mem-lean 0.3.0

File Platform Checksum
hippius-mem-lean-x86_64-apple-darwin.tar.xz Intel macOS checksum

hippius-mem 0.3.0

Install hippius-mem 0.3.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/thenervelab/hippius-mem/releases/download/v0.3.0/hippius-mem-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install thenervelab/tap/hippius-mem

Download hippius-mem 0.3.0

File Platform Checksum
hippius-mem-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
hippius-mem-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
hippius-mem-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

0.2.0 - 2026-09-15

Choose a tag to compare

@github-actions github-actions released this 15 Sep 09:50
c0bd0eb

Release Notes

Hermes becomes a first-class client (native memory-provider plugin, not MCP),
and install stops silently rewriting every local agent config.

Added

  • Hermes memory-provider plugin (install --agent hermes): copies a stdlib
    Python plugin into $HERMES_HOME/plugins/hippius-mem/, pins the binary and
    HIPPIUS_MEM_CONFIG in a sidecar, and sets memory.provider: hippius-mem.
    Prefetch is recall; the session brief is the new brief MCP tool on one
    long-lived hippius-mem subprocess; the model sees remember / recall /
    get. Conversation turns are not auto-remembered.
  • brief MCP tool: the same token-bounded digest the SessionStart CLI prints,
    so a long-lived server can inject conventions/gotchas without a second
    embedder load.
  • --hermes-home, --hermes-profile, --hermes-all-profiles on install.
  • CHANGELOG.md.

Changed

  • Bare hippius-mem install no longer autodetects. A TTY prompts; otherwise
    pass --agent <name[,…]> or --all-detected. scripts/install.sh already
    passed --all-detected.
  • hippius-mem init no longer writes ~/.claude.json. MCP registration is
    install --agent claude.
  • install --agent hermes no longer registers an MCP server (the 11-tool
    schema does not fit Hermes's memory budget). A leftover mcp_servers.hippius-mem
    entry from 0.1.0 is stripped.
  • Mandates and playbook wording: recall takes text; remember takes
    note_type.

Fixed

  • Hermes is_available() now finds the sidecar-pinned binary, not only PATH,
    so fleet/GUI launches without hippius-mem on PATH still activate.
  • Installer tests no longer read process HERMES_HOME (would rewrite a real
    profile).
  • cargo deny: rustls 0.23.45 for RUSTSEC-2026-0285.
  • Live-MinIO CI pulls quay.io/minio/minio (Docker Hub minio/minio was removed).

hippius-mem-lean 0.2.0

Install hippius-mem-lean 0.2.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/thenervelab/hippius-mem/releases/download/v0.2.0/hippius-mem-lean-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install thenervelab/tap/hippius-mem-lean

Download hippius-mem-lean 0.2.0

File Platform Checksum
hippius-mem-lean-x86_64-apple-darwin.tar.xz Intel macOS checksum

hippius-mem 0.2.0

Install hippius-mem 0.2.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/thenervelab/hippius-mem/releases/download/v0.2.0/hippius-mem-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install thenervelab/tap/hippius-mem

Download hippius-mem 0.2.0

File Platform Checksum
hippius-mem-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
hippius-mem-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
hippius-mem-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 09 Sep 15:42
a3c235d

hippius-mem-lean 0.1.0

Install hippius-mem-lean 0.1.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/thenervelab/hippius-mem/releases/download/v0.1.0/hippius-mem-lean-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install thenervelab/tap/hippius-mem-lean

Download hippius-mem-lean 0.1.0

File Platform Checksum
hippius-mem-lean-x86_64-apple-darwin.tar.xz Intel macOS checksum

hippius-mem 0.1.0

Install hippius-mem 0.1.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/thenervelab/hippius-mem/releases/download/v0.1.0/hippius-mem-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install thenervelab/tap/hippius-mem

Download hippius-mem 0.1.0

File Platform Checksum
hippius-mem-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
hippius-mem-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
hippius-mem-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum