codex - 💡(How to fix) Fix Recommended skills refresh can create malformed vendor_imports paths in Windows Desktop + WSL mode

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Fix Action

Fix / Workaround

Workaround used locally

Code Example

git clone failed: fatal: destination path 'C:\Users\<user>\.codex/vendor_imports/skills' already exists and is not an empty directory.

---

vendor_imports/C:\Users\<user>\.codex
vendor_imports/C:\Users\<user>\.codex/vendor_imports/skills
vendor_imports/C:\Users\<user>\.codex\vendor_imports\skills

---

git clone --depth 1 --filter=blob:none --sparse https://github.com/openai/skills.git 'C:\Users\<user>\.codex/vendor_imports/skills'

---

vendor_imports/
  C:\Users\<user>\.codex/
  C:\Users\<user>\.codex/vendor_imports/skills/
  C:\Users\<user>\.codex\vendor_imports\skills/

---

git clone --depth 1 --filter=blob:none --sparse https://github.com/openai/skills.git 'C:\Users\<user>\.codex/vendor_imports/skills'
cwd=C:\Users\<user>\.codex/vendor_imports

---

Failed to load recommended skills
git clone failed: fatal: destination path 'C:\Users\<user>\.codex/vendor_imports/skills' already exists and is not an empty directory.

---

.../.codex/vendor_imports/skills
RAW_BUFFERClick to expand / collapse

What version of Codex is running?

  • Codex Desktop app package: OpenAI.Codex_26.506.3741.0_x64
  • codex-cli 0.130.0-alpha.5

What subscription do you have?

Pro

Which model were you using?

GPT-5.5

What platform is your computer?

Windows 11 Desktop app with WSL2 Ubuntu enabled.

What issue are you seeing?

The "recommended skills" refresh path can create malformed literal Windows-path directory names under vendor_imports when the desktop app is running in a WSL-backed context.

After that happens, future refreshes fail with:

git clone failed: fatal: destination path 'C:\Users\<user>\.codex/vendor_imports/skills' already exists and is not an empty directory.

The broken state I found on disk was not a normal vendor_imports/skills checkout. Instead it contained literal directory names like:

vendor_imports/C:\Users\<user>\.codex
vendor_imports/C:\Users\<user>\.codex/vendor_imports/skills
vendor_imports/C:\Users\<user>\.codex\vendor_imports\skills

Those stale malformed directories then block later git clone attempts.

Steps to reproduce

  1. Use Codex Desktop on Windows with a WSL-backed session.
  2. Trigger the recommended-skills refresh path.
  3. The app runs a clone command equivalent to:
git clone --depth 1 --filter=blob:none --sparse https://github.com/openai/skills.git 'C:\Users\<user>\.codex/vendor_imports/skills'
  1. In the WSL-backed environment, inspect the Windows Codex home vendor_imports directory.

Expected behavior

The app should normalize the checkout target to a real filesystem path for the actual execution environment and either:

  • create a normal checkout at vendor_imports/skills, or
  • detect an existing healthy checkout and refresh/reuse it

Actual behavior

The clone path was interpreted badly in the WSL-backed context and produced malformed literal directories containing backslashes and drive-letter text.

Observed tree before repair:

vendor_imports/
  C:\Users\<user>\.codex/
  C:\Users\<user>\.codex/vendor_imports/skills/
  C:\Users\<user>\.codex\vendor_imports\skills/

Desktop logs repeatedly showed:

git clone --depth 1 --filter=blob:none --sparse https://github.com/openai/skills.git 'C:\Users\<user>\.codex/vendor_imports/skills'
cwd=C:\Users\<user>\.codex/vendor_imports

and then:

Failed to load recommended skills
git clone failed: fatal: destination path 'C:\Users\<user>\.codex/vendor_imports/skills' already exists and is not an empty directory.

Workaround used locally

I repaired the state by:

  1. Moving the malformed directories aside.
  2. Creating a normalized checkout at the real path:
.../.codex/vendor_imports/skills
  1. Cloning https://github.com/openai/skills.git
  2. Expanding sparse checkout to include the skills tree.

After repair, the normalized checkout contained 43 SKILL.md files and no stale git locks.

Suggested fix

  1. Normalize target paths before invoking git clone in WSL-backed contexts.
  2. Avoid mixing Windows-style cwd/target strings with a WSL execution environment.
  3. If a previous malformed checkout exists, detect it and cleanly migrate or ignore it instead of repeatedly failing clone.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

FAQ

Expected behavior

The app should normalize the checkout target to a real filesystem path for the actual execution environment and either:

  • create a normal checkout at vendor_imports/skills, or
  • detect an existing healthy checkout and refresh/reuse it

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

codex - 💡(How to fix) Fix Recommended skills refresh can create malformed vendor_imports paths in Windows Desktop + WSL mode