change_directory cannot re-mount a session's original root directory after the session has moved away from it

Status Open
Reported on v2.1.237
Maintainer reply None cached
Activity 2 comments · opened Aug 27, 2026

Claude Code version: 2.1.237 → updated to 2.1.247 mid-session

Steps to reproduce:

  1. Start a session rooted at directory A (e.g. ~/Documents/Claude).
  2. Use the change_directory tool (mcp__ccd_directory__change_directory) to

move the session to directory B (e.g. a sibling project folder).

  1. Attempt to change_directory back to A.

Expected: session re-mounts A normally.

Actual: consistently fails with "The requested directory could not be
resolved." The verbose picker-mode variant (request_directory with no
path) surfaces more detail:
"Directory '.../A' overlaps a protected host location
('.../A/Scheduled') and cannot be mounted."

'.../A/Scheduled' does not exist on disk (confirmed via ls, find,
and Finder with hidden files shown) — nothing real is there. This
persisted after installing an available update but WITHOUT restarting
the Claude Code process for that specific session; a genuinely fresh
session opened at the same path A immediately after updating+restarting
worked fine. So the block appears tied to stale in-process state on the
session that originally started at A, not to anything in the filesystem
or to the installed version itself.

Impact: a long-running "hub" session that a user relies on as a stable
home base becomes permanently unable to return to its own root
directory once it navigates away, even briefly for a one-off task —
with no user-facing way to recover short of abandoning that session
and starting a new one from scratch (losing continuity/context).

View original on GitHub ↗

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