Skip to content

engRAM 1.13.0: one-click Mac install

Choose a tag to compare

@MaxFreedomPollard MaxFreedomPollard released this 26 Jul 04:59

Install on a Mac - one click

⬇︎ engRAM-1.13.0.pkg · 101 MB · macOS 13+

Open it. The installer asks what you want:

engRAM The app, your encrypted memory vault, and the engram command line tool.
Menu bar utility (optional) Puts engRAM in the menu bar and starts it when you log in. Click the icon for your settings and your latest memories. Turn it off any time in System Settings → General → Login Items.

Nothing to install first - the interpreter, the embedding model, and every dependency are inside the app.

First open: this build is not signed with an Apple Developer ID, so macOS will object. Right-click the installer → Open, then confirm. If it still refuses: xattr -dr com.apple.quarantine /Applications/engRAM.app

All downloads

Download Size For
engRAM-1.13.0.pkg 101 MB macOS, one click, with the optional menu bar utility
engRAM-1.13.0.dmg 122 MB macOS, drag to Applications yourself
engram_memory_vault-1.13.0-py3-none-any.whl 33 MB pip / offline installs, any OS
engram_memory_vault-1.13.0.tar.gz 33 MB source distribution, packagers, air-gapped builds

Or from PyPI - the CLI and MCP server, any platform:

pip install engram-memory-vault && engram init && engram integrate claude

What the menu bar item shows

Click the icon and a popover gives you, at a glance:

  • State - whether the vault is open, how many memories it holds, and how many you actually stored as opposed to the built-in reference facts.
  • Three settings - the capture hook (saves memories Claude Code writes, automatically), whether starter facts join your searches, and auto-lock (15 / 30 / 60 min / Never).
  • Your last five memories - text, time, and tags, newest first.

No dock icon, no window to manage. It holds no vault open, so an idle menu bar app costs you nothing.

Can't find the icon? On a crowded menu bar - a notched MacBook with a lot of status apps - new items land immediately right of the notch rather than over on the right with everything else. ⌘-drag it wherever you want; engRAM remembers the spot. ENGRAM_MENUBAR_DEBUG=1 makes the app report where its item actually landed.


Why this needed to be a real app

The menu bar worked when launched from a terminal and was invisible any other way.

A status bar item belongs to the process that created it, and macOS decides what that process is from where its executable lives. A launcher that exec'd a Python living outside the bundle produced NSBundle.mainBundle() equal to the interpreter's directory - no identifier, no name, no icon. An anonymous process like that sorts last in the menu bar and shows up in System Settings as a nameless "legacy agent".

So engRAM.app embeds its own interpreter and the app is what runs. Login registration goes through SMAppService, so System Settings → General → Login Items lists engRAM by name, with its icon and description. From the command line: engram menubar --login on|off|status.

Building it yourself

See RELEASING.md. tools/build_macos_app.py produces the bundle, the .dmg, and the .pkg; tools/make_icon.py draws the icon - a sealed ring around three linked memories, geometric enough to stay legible at the 16 pixels the login-items list allows.

The build must embed a non-framework Python. A framework build is a stub that redirects to Python.framework's own Python.app, which reintroduces the identity problem as org.python.python; the script detects that and refuses.

Two bugs came out of testing the built artifact rather than the source: macOS filesystems are case-insensitive, so the app looking for engram beside its interpreter found its own engRAM launcher and shelled out to itself instead of the CLI; and PyObjC ships a test suite plus 142 .dSYM bundles - 71 MB no shipped app needs.

158 tests green on Linux, Windows, and macOS.