Windows path conversion bug: CLAUDE_PLUGIN_ROOT incorrectly adds extra \c\ prefix for OMC plugins

Resolved 💬 0 comments Opened Jun 1, 2026 by daochuzhangyang Closed Jun 1, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

Claude Code 2.1.158 on Windows incorrectly converts plugin paths.

A plugin located at:
C:\Users\gg\.claude\plugins\marketplaces\omc

is attempted to be executed from:
C:\c\Users\gg\.claude\plugins\marketplaces\omc\scripts\run.cjs

Notice the extra \c\ inserted after the drive letter.

Error from Node.js:

Error: Cannot find module 'C:\c\Users\gg\.claude\plugins\marketplaces\omc\scripts\run.cjs'
at Function._resolveFilename (node:internal/modules/cjs/loader:1225:15)
at Function._load (node:internal/modules/cjs/loader:1055:27)
at Function.executeUserEntryPoint [as runMain]
code: 'MODULE_NOT_FOUND'

The file run.cjs exists in the correct directory.

What Should Happen?

Claude Code should normalize /c/Users/... to C:\Users\... without inserting the extra \c\.

Error Messages/Logs

Ran 4 stop hooks (ctrl+o to expand)
  ⎿  Stop hook error: Failed with non-blocking status code: node:internal/modules/cjs/loader:1228
    throw err;
    ^

  Error: Cannot find module 'C:\c\Users\gg\.claude\plugins\marketplaces\omc\scripts\run.cjs'
      at Function._resolveFilename (node:internal/modules/cjs/loader:1225:15)
      at Function._load (node:internal/modules/cjs/loader:1055:27)
      at TracingChannel.traceSync (node:diagnostics_channel:322:14)
      at wrapModuleLoad (node:internal/modules/cjs/loader:220:24)
      at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:170:5)
      at node:internal/main/run_main_module:36:49 {
    code: 'MODULE_NOT_FOUND',
    requireStack: []
  }

  Node.js v22.14.0
  ⎿  Stop hook error: Failed with non-blocking status code: node:internal/modules/cjs/loader:1228
    throw err;
    ^

  Error: Cannot find module 'C:\c\Users\gg\.claude\plugins\marketplaces\omc\scripts\run.cjs'
      at Function._resolveFilename (node:internal/modules/cjs/loader:1225:15)
      at Function._load (node:internal/modules/cjs/loader:1055:27)
      at TracingChannel.traceSync (node:diagnostics_channel:322:14)
      at wrapModuleLoad (node:internal/modules/cjs/loader:220:24)
      at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:170:5)
      at node:internal/main/run_main_module:36:49 {
    code: 'MODULE_NOT_FOUND',
    requireStack: []
  }

  Node.js v22.14.0
  ⎿  Stop hook error: Failed with non-blocking status code: node:internal/modules/cjs/loader:1228
    throw err;
    ^

  Error: Cannot find module 'C:\c\Users\gg\.claude\plugins\marketplaces\omc\scripts\run.cjs'
      at Function._resolveFilename (node:internal/modules/cjs/loader:1225:15)
      at Function._load (node:internal/modules/cjs/loader:1055:27)
      at TracingChannel.traceSync (node:diagnostics_channel:322:14)
      at wrapModuleLoad (node:internal/modules/cjs/loader:220:24)
      at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:170:5)
      at node:internal/main/run_main_module:36:49 {
    code: 'MODULE_NOT_FOUND',
    requireStack: []
  }

  Node.js v22.14.0

Steps to Reproduce

1.Install OMC through the plugin marketplace.
2.Verify plugin files exist under C:\Users\<user>\.claude\plugins\marketplaces\omc.
3.Run any command that triggers the plugin.
4.Node.js fails to load run.cjs because Claude Code attempts to execute C:\c\Users\....

Claude Model

Sonnet (default)

Is this a regression?

Yes, this worked in a previous version

Last Working Version

_No response_

Claude Code Version

2.1.158

Platform

Other

Operating System

Windows

Terminal/Shell

PowerShell

Additional Information

Workaround: creating a symlink C:\c\Users → C:\Users allows the plugin to run.
C:\Users\gg\.claude\plugins\marketplaces\omc

View original on GitHub ↗