Version
0.10.8
Platform
Windows (x64)
Install channel
GitHub release archive / install.sh / install.ps1
Binary variant
standard
What happened, and what did you expect?
Summary
On Windows, install (v0.10.8, via install.ps1) fails every Claude Code
agent-configuration write when ~/.claude is a directory symbolic link
(here C:\Users\mayn\.claude → I:\.claude, relocated because the system
drive is nearly full). The paths exist and are writable — the installer
appears to refuse to write through a reparse point, but the error says the
opposite.
Environment
- Windows 10 Pro 10.0.19045, amd64
- codebase-memory-mcp 0.10.8 (installed via
install.ps1)
C:\Users\mayn\.claude = SymbolicLink → I:\.claude
- Detected agents: Claude Code, VS Code
Observed
Claude Code:
skills: 0 installed
error: agent_config agent=Claude Code op=agent_install path=C:/Users/mayn/.claude/agents/codebase-memory-scout.md (target: does not exist or cannot be inspected)
error: agent_config agent=Claude Code op=agent_install path=C:/Users/mayn/.claude/agents/codebase-memory.md (target: does not exist or cannot be inspected)
error: agent_config agent=Claude Code op=agent_install path=C:/Users/mayn/.claude/agents/codebase-memory-auditor.md (target: does not exist or cannot be inspected)
mcp: C:/Users/mayn/.claude.json
error: agent_config agent=Claude Code op=hook_script_install path=C:/Users/mayn/.claude/hooks/cbm-code-discovery-gate.cmd (target: does not exist or cannot be inspected)
error: agent_config agent=Claude Code op=hook_script_install path=C:/Users/mayn/.claude/hooks/cbm-session-reminder.cmd (target: does not exist or cannot be inspected)
error: agent_config agent=Claude Code op=hook_script_install path=C:/Users/mayn/.claude/hooks/cbm-subagent-reminder.cmd (target: does not exist or cannot be inspected)
...
error: installation failed (exit code 1)
What this suggests:
- Every write to a real path succeeded:
~/.claude.json (MCP registration),
~/.copilot/** (VS Code agents/skill/hooks), AppData\...\Code\User\mcp.json.
- Every write under
~/.claude/** failed (3 agents, 1 skill, 3 hook scripts,
and the settings.json hook registration).
- Writing through the link manually works fine (e.g.
Set-Content into
~/.claude/agents/ succeeds), so this is not a permission or filesystem
problem — it looks like the installer deliberately refuses reparse-point
paths.
install --dry-run on the same machine plans the same writes with no errors.
Requests
-
Make the error state the real cause. Something like
refusing reparse point: C:\Users\mayn\.claude (symlink → I:\.claude)
instead of "does not exist or cannot be inspected", which sends users
hunting for permission problems that don't exist.
-
Consider supporting a symlinked ~/.claude. Relocating ~/.claude to
another drive is a common Windows setup when the system drive is full, and
Claude Code itself works fine with it — I verified the installed
agents/hooks/skill all function correctly through the link. If the concern
is writes being redirected by a pre-planted link, resolving the link and
applying the same validation to the final real path (or an explicit opt-in
flag) would preserve the guarantee while supporting this layout.
Workaround for anyone hitting this
Temporarily swap the link for a real directory, install, move the files,
restore the link (PowerShell, from an elevated-free shell):
cmd /c ren C:\Users\<you>\.claude .claude-link-bak
New-Item -ItemType Directory C:\Users\<you>\.claude
& "$env:LOCALAPPDATA\Programs\codebase-memory-mcp\codebase-memory-mcp.exe" install -y --force --dir="$env:LOCALAPPDATA\Programs\codebase-memory-mcp"
# copy agents\codebase-memory*.md, hooks\cbm-*.cmd, skills\codebase-memory\
# into the link target, merge the "hooks" key into the target settings.json
Remove-Item C:\Users\<you>\.claude -Recurse -Force
cmd /c ren C:\Users\<you>\.claude-link-bak .claude
Note this has to be repeated after every install.ps1 update.
Thanks for the project — the graph tools work great once installed.
Reproduction
Code being indexed: N/A — the failure happens during install's
agent-configuration phase, before any repository is indexed. No repo, file
path, or MCP query is involved.
Prerequisite setup (any machine with Claude Code installed, i.e.
~/.claude.json already exists) — make ~/.claude a directory symlink:
Move-Item "$env:USERPROFILE\.claude" "D:\claude-real"
cmd /c mklink /d "$env:USERPROFILE\.claude" "D:\claude-real"
(mklink /d needs Developer Mode or an elevated shell. A junction
mklink /j likely triggers the same code path since both are reparse
points, but I have only verified the symbolic-link case.)
Exact command:
irm https://raw.githubusercontent.com/DeusData/codebase-memory-mcp/main/install.ps1 -OutFile install.ps1
.\install.ps1
which invokes, equivalently:
codebase-memory-mcp.exe install -y --force --dir="C:\Users\<you>\AppData\Local\Programs\codebase-memory-mcp"
Actual output (Claude Code section only; VS Code section succeeds):
Claude Code:
skills: 0 installed
error: agent_config agent=Claude Code op=agent_install path=C:/Users/mayn/.claude/agents/codebase-memory-scout.md (target: does not exist or cannot be inspected)
error: agent_config agent=Claude Code op=agent_install path=C:/Users/mayn/.claude/agents/codebase-memory.md (target: does not exist or cannot be inspected)
error: agent_config agent=Claude Code op=agent_install path=C:/Users/mayn/.claude/agents/codebase-memory-auditor.md (target: does not exist or cannot be inspected)
mcp: C:/Users/mayn/.claude.json
error: agent_config agent=Claude Code op=hook_script_install path=C:/Users/mayn/.claude/hooks/cbm-code-discovery-gate.cmd (target: does not exist or cannot be inspected)
error: agent_config agent=Claude Code op=hook_script_install path=C:/Users/mayn/.claude/hooks/cbm-session-reminder.cmd (target: does not exist or cannot be inspected)
error: agent_config agent=Claude Code op=hook_script_install path=C:/Users/mayn/.claude/hooks/cbm-subagent-reminder.cmd (target: does not exist or cannot be inspected)
...
error: installation failed (exit code 1)
Expected output: the Claude Code section completes like the VS Code one —
3 agents installed, skill installed, hook scripts installed, hooks registered
in settings.json — and install exits 0. (Or, if writing through a reparse
point is a deliberate hard refusal, an error that says so — see Requests.)
Logs
Diagnostics trajectory (memory / performance / leak issues)
Project scale (if relevant)
No response
Confirmations
Version
0.10.8
Platform
Windows (x64)
Install channel
GitHub release archive / install.sh / install.ps1
Binary variant
standard
What happened, and what did you expect?
Summary
On Windows,
install(v0.10.8, viainstall.ps1) fails every Claude Codeagent-configuration write when
~/.claudeis a directory symbolic link(here
C:\Users\mayn\.claude→I:\.claude, relocated because the systemdrive is nearly full). The paths exist and are writable — the installer
appears to refuse to write through a reparse point, but the error says the
opposite.
Environment
install.ps1)C:\Users\mayn\.claude= SymbolicLink →I:\.claudeObserved
What this suggests:
~/.claude.json(MCP registration),~/.copilot/**(VS Code agents/skill/hooks),AppData\...\Code\User\mcp.json.~/.claude/**failed (3 agents, 1 skill, 3 hook scripts,and the settings.json hook registration).
Set-Contentinto~/.claude/agents/succeeds), so this is not a permission or filesystemproblem — it looks like the installer deliberately refuses reparse-point
paths.
install --dry-runon the same machine plans the same writes with no errors.Requests
Make the error state the real cause. Something like
refusing reparse point: C:\Users\mayn\.claude (symlink → I:\.claude)instead of "does not exist or cannot be inspected", which sends users
hunting for permission problems that don't exist.
Consider supporting a symlinked
~/.claude. Relocating~/.claudetoanother drive is a common Windows setup when the system drive is full, and
Claude Code itself works fine with it — I verified the installed
agents/hooks/skill all function correctly through the link. If the concern
is writes being redirected by a pre-planted link, resolving the link and
applying the same validation to the final real path (or an explicit opt-in
flag) would preserve the guarantee while supporting this layout.
Workaround for anyone hitting this
Temporarily swap the link for a real directory, install, move the files,
restore the link (PowerShell, from an elevated-free shell):
Note this has to be repeated after every
install.ps1update.Thanks for the project — the graph tools work great once installed.
Reproduction
Code being indexed: N/A — the failure happens during
install'sagent-configuration phase, before any repository is indexed. No repo, file
path, or MCP query is involved.
Prerequisite setup (any machine with Claude Code installed, i.e.
~/.claude.jsonalready exists) — make~/.claudea directory symlink:(
mklink /dneeds Developer Mode or an elevated shell. A junctionmklink /jlikely triggers the same code path since both are reparsepoints, but I have only verified the symbolic-link case.)
Exact command:
which invokes, equivalently:
Actual output (Claude Code section only; VS Code section succeeds):
Expected output: the Claude Code section completes like the VS Code one —
3 agents installed, skill installed, hook scripts installed, hooks registered
in settings.json — and install exits 0. (Or, if writing through a reparse
point is a deliberate hard refusal, an error that says so — see Requests.)
Logs
Diagnostics trajectory (memory / performance / leak issues)
Project scale (if relevant)
No response
Confirmations