[BUG] Desktop (Windows): configured marketplace sync fails with "unable to access 'NUL': Invalid argument" on Git for Windows 2.56.0

Status Closed — not planned
Reported on v2.1.284
Maintainer reply None cached
Activity 1 comment · opened Oct 1, 2026 · closed Oct 4, 2026
_This report was drafted by Claude (Opus 5.5) from the app logs and reviewed by a human before posting._

Scope: Claude Desktop on Windows (3P / AWS Bedrock deployment). The affected path is the admin-configured plugin marketplace sync (custom-3p:configured-marketplaces), not the Claude Code CLI.

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report
  • [x] I am using the latest version of Claude Code

What's Wrong?

Since Git for Windows 2.56.0 was installed, every marketplace sync fails. The git clone exits with 128 before it reaches the network. The credential helper succeeds every time. The app keeps using the stale local copy, so plugin updates stop arriving.

Root cause is a Git for Windows 2.56.0 regression: GIT_CONFIG_GLOBAL / GIT_CONFIG_SYSTEM set to upper-case NUL is rejected, while lower-case nul and /dev/null still work (git-for-windows/git#6449, fix pending in #6450). The error text matches exactly, so the app most likely isolates git config by passing NUL (e.g. Node's os.devNull).

What Should Happen?

Marketplace sync should work with the current Git for Windows. Suggested fix: pass lower-case nul (or /dev/null) instead of os.devNull for GIT_CONFIG_* on Windows. Other projects hit the same problem and fixed it this way.

Error Messages/Logs

[info] [custom-3p:marketplace-cred] helper ok (elapsed=62ms stdoutBytes=93)
[warn] [custom-3p:configured-marketplaces] failed to add <org>/<marketplace>: git clone exited 128 (unable to access 'NUL': Invalid argument)
[info] [custom-3p:configured-marketplaces] sync done: 0 ok, 1 failed in 1659 ms

26 occurrences between 2026-09-30 15:07 and 2026-10-01 13:54, about every 10 minutes.

Steps to Reproduce

  1. Windows 11 x64 with Git for Windows 2.56.0.windows.1 on PATH.
  2. Claude Desktop with an admin-configured (private GitHub) plugin marketplace.
  3. Start the app → the marketplace sync fails as shown above.

Git-level repro, without Claude:

$env:GIT_CONFIG_GLOBAL = 'NUL'
git --version   # 2.56.0.windows.1: fatal: unable to access 'NUL': Invalid argument (exit 128)
                # 2.55.0.windows.5: works

Workaround (verified): start Claude Desktop with Portable Git 2.55.0.5 prepended to PATH → sync done: 1 ok, 0 failed.

Claude Model

Not sure / Multiple models (not model-related)

Is this a regression?

Yes, this worked in a previous version

Last Working Version

Worked with Git for Windows 2.55.0.windows.5. Last fully working app version was Desktop 2.7032.0. That version did not re-clone (already current … skipping clone), so it may never have hit this code path.

Claude Code Version

Claude Desktop 2.16120.0 (MSIX), bundled Claude Code 2.1.284

Platform

AWS Bedrock

Operating System

Windows (11 Enterprise, build 26200, x64)

Terminal/Shell

Other (Claude Desktop app)

Additional Information

  • Started right after the Desktop update 2.7032.0 → 2.16120.0 (2026-09-30 15:06:59). The first failure came 7 s later. Since that update, every sync tries git clone instead of reusing the existing local copy. That may be a second, separate issue.
  • Same error in other tools: github/app#3193 (plugin marketplaces on Windows ARM64), openclaw#141279.

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗