Plugin system drops backslash before dot-prefixed directories on Windows
Resolved 💬 3 comments Opened Feb 27, 2026 by dominea-dev Closed Mar 9, 2026
Bug Description
The plugin system drops the \ path separator before dot-prefixed directory names on Windows when constructing the mkdir path for the plugins directory.
Environment
- OS: Windows 11 Pro (10.0.26200)
- Shell: Git Bash (MINGW64) via Claude Code
- Claude Code: Latest version
- CLAUDE_CONFIG_DIR: Set to a path containing a dot-prefixed subdirectory (
.ai-context)
Steps to Reproduce
- Set
CLAUDE_CONFIG_DIRto a path containing a dot-prefixed directory, e.g.:
````
C:\Users\<user>\OneDrive - Elliott Doward LLC\ai-work\.ai-context
- Run
/plugin
Expected Behavior
The plugin system should construct the plugins path as:
C:\Users\<user>\OneDrive - Elliott Doward LLC\ai-work\.ai-context\plugins
(with \ separator between ai-work and .ai-context)
Actual Behavior
The path separator before .ai-context is dropped, producing:
C:\Users\<user>\OneDrive - Elliott Doward LLC\ai-work.ai-context\plugins
(no \ between ai-work and .ai-context)
Full error message:
Failed to load all marketplaces. Errors: claude-plugins-official: EEXIST: file already exists, mkdir
'C:\Users\<user>\OneDrive - Elliott Doward LLC\ai-work.ai-context\plugins'
Analysis
- The
CLAUDE_CONFIG_DIRenvironment variable contains the correct path (verified character-by-character via Node.js — backslash at expected position confirmed) - All config files (
known_marketplaces.json,installed_plugins.json) contain correctly escaped paths with\separators - The bug appears to be in the plugin system's internal path construction when it calls
mkdirfor the plugins directory - The
\before.(dot-prefixed directory name) is being dropped somewhere during path processing - This may be related to how the path string is processed or serialized internally —
\.could be misinterpreted as an escape sequence in some code path
Workarounds Attempted
- Creating a junction for the plugins directory outside OneDrive — does not fix the path construction issue
- Updating
installLocationinknown_marketplaces.json— does not fix themkdircall - The only viable workaround appears to be renaming the config directory to avoid a dot-prefix
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗