Skip to content

v0.4.2 — crash audit fixes + README sync

Choose a tag to compare

@nvwalj nvwalj released this 17 May 16:41
· 44 commits to main since this release

Bug fixes (audit follow-up to v0.4.1)

Three latent crash / safety risks surfaced by an audit after the v0.4.1 JSON-rendering fix:

  • iOS docs-dir force-unwrap removed. AISource.url no longer crashes the app if FileManager.default.urls(for: .documentDirectory, …) ever returns an empty array (sandbox / provisioning corner case).
  • Drag-and-drop bounds. The Finder drag-and-drop handler now reaches the first file through guard let firstFile = supportedFiles.first instead of supportedFiles[0], so a future refactor of the !isEmpty guard cannot regress into an index-OOB.
  • URL-scheme path validation. aimemoryreader://open?path=… now requires an absolute path and rejects any .. segments before reaching FileManager.fileExists. Closes a latent path-traversal risk from external callers.

No user-facing behavior changes — the app still opens the same files, but a few crash classes can no longer trip it.

Documentation

  • README + README_CN expanded. The "Supported AI Sources" table was OpenClaw-only; it now lists all 8 auto-detected sources (Claude Code, Codex, Gemini, Cursor, Continue, GitHub Copilot, Aider, OpenClaw) in sidebar order.
  • Download link no longer hard-codes a version (was 0.4.0 in v0.4.1's README — now AIMemoryReader-vX.Y.Z-universal.zip).
  • ⌘1 shortcut label updated to reflect Claude Code as the first detected source.

Install

Download AIMemoryReader-v0.4.2-universal.zip below, unzip, move AI Memory Reader.app to /Applications/.

If macOS blocks the app on first launch ("unidentified developer"):

  • Right-click → Open → confirm in the dialog, OR
  • Terminal: xattr -dr com.apple.quarantine \"/Applications/AI Memory Reader.app\"

Local-signed only (no Apple Developer Program signature yet).

Companion

Templates / hooks / slash commands for Claude Code: Memory Pack on Ko-fi ($3)