Engram v1.16.1 is a quality and reliability release: seven bug fixes across the MCP session model, cloud sync, project migration, the macOS and Windows builds, and the plugin cache — plus expanded documentation for MCP project overrides, team usage, and topic keys. Every fix was validated by adversarial review before merge.
Highlights
- Active session resolution for
mem_save(#386): saves without an explicit session now attach to the active session resolved from the shared store, instead of falling back tomanual-save-{project}. This fixes UUID sessions that stayed empty atobservation_count: 0. - Edited memories re-export on sync (#447):
mem_updateedits are no longer skipped byengram sync. The export now checksUpdatedAt, not justCreatedAt. - No more case-only duplicate projects (#438): project migration normalizes names before comparing, so a repo whose remote is
Repo_Nameno longer ping-pongs against a localrepo_name. - macOS 26.4 binaries run again (#402): darwin builds are adhoc re-signed during release, fixing the AMFI
SIGKILL(exit 137) on Apple Silicon. - Cloud upgrade repair applies partial fixes (#446): repairable mutations are now applied even when a blocker is queued, and the message names the real blocker (
seq+entity_key) instead of the wrong entry. - Plugin cache no longer recurses (#217): the plugin version is synced with the marketplace manifest so installs stop creating nested empty cache directories.
- Clearer Windows background sync (#421): autosync token logging now names both
ENGRAM_CLOUD_TOKENand thecloud.jsonfallback, and the prompt hook emits UTF-8 under PowerShell 5.1.
Contribution highlights
Thanks to the contributors and issue reporters who shaped this release:
- @carlosmoradev authored the new Team Usage guide (#409, closing #305) — scope conventions, language strategy for shared memory, and how scope interacts with sync today.
- Issue reports #386, #438, #446, #447, #217, #421, #401, #402 drove the fixes.
- Adversarial review caught two fixes that looked correct but were not — a session registry that could not cross the HTTP/MCP process boundary, and a plugin source change that breaks Claude Code clients older than v2.1.69 — before either shipped.
Pi companion notes
No new gentle-engram npm package was published in this release. The Pi companion remains gentle-engram@0.1.7; this release updates the main Engram binary and documentation.
Fixes included
mem_save/ prompt / summary / passive saves resolve the most-recent active session from the store before falling back tomanual-save-{project}.engram syncre-exports observations edited viamem_update(now checksUpdatedAt).- Project migration normalizes names, preventing case-only duplicate projects (regression of #136).
- darwin release binaries are adhoc re-signed to satisfy AMFI on macOS 26.4.
cloud upgrade repair --applyapplies the repairable subset alongside a blocker and reports the correct blocker.- Plugin
plugin.jsonversion synced with the marketplace manifest to stop recursive cache directories. - Windows autosync token logging clarified; prompt hook output set to UTF-8.
- New documentation: MCP
--project/ENGRAM_PROJECToverride, VS Code/WSL setup, LinuxEXDEVtroubleshooting, atopic_keyguide, a Windows Task Scheduler template, and the Team Usage guide.
Changelog
- #449
fix(mcp): resolve active session from store for mem_save instead of manual-save fallback(#386) - #450
fix(sync): re-export edited observations by checking UpdatedAt in filterNewData(#447) - #451
fix(server): normalize project names before migrate to prevent case-only duplicates(#438) - #452
fix(store): apply repairable cloud-upgrade mutations even when a blocker is queued(#446) - #453
fix(release): adhoc re-sign darwin binaries to prevent AMFI SIGKILL on macOS 26.4(#402) - #454
fix(cloud): clarify autosync token error log and add UTF-8 PS1 output encoding(#421) - #455
fix(plugin): sync plugin.json version to 0.1.1 to stop recursive cache dirs(#217) - #456
docs: mcp project override, VS Code/WSL, EXDEV, topic_key guide, Task Scheduler - #409
docs: add team usage guide(#305, by @carlosmoradev)