[Bug] Project autoMemoryDirectory setting ignored, defaults to global memory path instead

Resolved 💬 3 comments Opened Apr 11, 2026 by chdalski Closed Apr 15, 2026

Bug Description

  • /workspace/.ai/memory/ — what settings.json configures. Only has MEMORY.md (162 bytes, basically empty) and project_followup_plans.md (git-tracked, modified).
  • /home/vscode/.claude/projects/-workspace/memory/ — the path hardcoded in my system prompt. Has 18 files including all the accumulated feedback and the entry I just wrote.

My system prompt loaded MEMORY.md from the second path at session start, which is why I've been writing there. The project's autoMemoryDirectory setting isn't being honored by whatever injects my memory instructions — the global default wins.

Net effect: ~17 memories (months of accumulated feedback) live in the user-global path, not the git-tracked project path. The one memory that is in .ai/memory/ (project_followup_plans.md) appears to be an earlier manually-placed file, and there's a duplicate of it at the global path too.

Environment Info

  • Platform: linux
  • Terminal: vscode
  • Version: 2.1.101
  • Feedback ID: f03a81a7-5d95-4085-9719-698a250385ca

Errors

[{"error":"Error: NON-FATAL: Lock acquisition failed for /home/vscode/.local/share/claude/versions/2.1.101 (expected in multi-process scenarios)\n    at qQ$ (/$bunfs/root/src/entrypoints/cli.js:2838:2153)\n    at Ee8 (/$bunfs/root/src/entrypoints/cli.js:2838:1233)\n    at processTicksAndRejections (native:7:39)","timestamp":"2026-04-11T15:55:19.274Z"},{"error":"Error: Error normalizing tool input: ZodError: [\n  {\n    \"expected\": \"string\",\n    \"code\": \"invalid_type\",\n    \"path\": [\n      \"old_string\"\n    ],\n    \"message\": \"Invalid input: expected string, received undefined\"\n  },\n  {\n    \"expected\": \"string\",\n    \"code\": \"invalid_type\",\n    \"path\": [\n      \"new_string\"\n    ],\n    \"message\": \"Invalid input: expected string, received undefined\"\n  },\n  {\n    \"code\": \"unrecognized_keys\",\n    \"keys\": [\n      \"old_str\",\n      \"new_str\"\n    ],\n    \"path\": [],\n    \"message\": \"Unrecognized keys: \\\"old_str\\\", \\\"new_str\\\"\"\n  }\n]\n    at <anonymous> (/$bunfs/root/src/entrypoints/cli.js:4772:1005)\n    at map (native:1:11)\n    at E_$ (/$bunfs/root/src/entrypoints/cli.js:4772:556)\n    at cm7 (/$bunfs/root/src/entrypoints/cli.js:7925:7500)\n    at processTicksAndRejections (native:7:39)","timestamp":"2026-04-11T16:13:11.878Z"}]

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗