[BUG] Windows: ENOENT mkdir 'E:\claude-tmp\...\tasks' — all Bash tool calls fail
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?
Every Bash tool call in a Claude Code session on Windows fails immediately with:
Error: ENOENT: no such file or directory, mkdir 'E:\claude-tmp\claude\E--Claude-Projects\<session-id>\tasks'
Sometimes the path has a leading space inside the quoted string (' E:\claude-tmp\...'), sometimes not. Either form blocks all shell execution — python, curl, psql, git, everything.
The session can still use Read/Write/Edit/Grep, but without Bash the agent cannot run, verify, or test anything. Entire sessions are wasted retrying.
Impact: Claude Code is effectively unusable for real engineering work on Windows until this is fixed.
What Should Happen?
Bash tool calls should succeed. The agent should be able to run python, curl, git, psql, and other shell commands without the ENOENT mkdir error on the claude-tmp tasks directory.
Error Messages/Logs
Error: ENOENT: no such file or directory, mkdir 'E:\claude-tmp\claude\E--Claude-Projects\76bd7b6a-15e7-4c9d-80be-bcabfd4b8fa3\tasks'
Also seen with leading space variant:
Error: ENOENT: no such file or directory, mkdir ' E:\claude-tmp\claude\E--Claude-Projects\<session-id>\tasks'
Steps to Reproduce
- Install Claude Code on Windows (MSIX / Microsoft Store build, v2.1.101)
- Open a project located on a non-C: drive (e.g. E:\Claude Projects)
- Start a new session with any model (tested on Opus 4.6)
- Ask the agent to run any shell command that invokes the Bash tool
Example prompt: "run: curl https://example.com"
- First Bash call fails immediately with:
Error: ENOENT: no such file or directory, mkdir 'E:\claude-tmp\claude\E--Claude-Projects\<session-id>\tasks'
- Every subsequent Bash call in the same session fails with the same error
- Exiting and starting a new session does not fix it — same error reappears
The claude-tmp directory parent path is never created by Claude Code on startup, so any child mkdir for the session-specific tasks folder fails.
Claude Model
Opus
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
2.1.101
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
Windows Terminal
Additional Information
Workaround attempted: community-suggested launch_claude.bat that sanitizes TMP/TEMP/CLAUDE_* env vars for the child process. Does not reliably fix the issue — fresh sessions launched via the .bat still hit the same ENOENT on the claude-tmp tasks directory.
This bug has been reported via email to support@anthropic.com without a human response, and via Fin AI bot which redirected here.
The MSIX install location (C:\Users\<user>\AppData\Local\Packages\...) combined with the project being on E:\ appears to trigger the claude-tmp path resolution to create directories under E:\claude-tmp\ which Claude Code cannot create or access.
This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗