anthropics / anthropics/claude-code

[Bug] Permission check incorrectly rejects fully qualified paths in `cmd /c` commands

Open
#94,234 0 comments 0 reactions 0 assignees View on GitHub
area:bash area:permissions bug platform:windows
Dominant language
Python
Stars
145k
Forks
23.1k
PR merge metrics
PR metrics pending

Description

**Bug Description**
The permission check appears to incorrectly reject commands that use fully qualified absolute paths when they are executed through `cmd /c`.

For example, Claude Code generated:

`cd "D:\\" && cmd /c ""D:\\\gradlew.bat" build" 2>&1`

The path to `gradlew.bat` is fully qualified and clearly resides inside the working directory. There are no relative paths involved.

Nevertheless, Claude Code reports:

`cmd names a path that is computed at run time, which cannot be checked against the read block (permissions.blockReadsOutsideWorkingDirectories)`

This seems overly conservative and misleading. The permission system should be able to resolve the absolute path passed to `cmd /c` and verify that it is within the allowed working directory.

The error message is especially confusing because it refers to `cmd` as naming a runtime-computed path, even though the actual target path is explicitly specified as an absolute path in the command.

This is particularly problematic on Windows, where invoking `.bat` files through `cmd /c` is a normal and legitimate execution pattern.

**Environment Info**
- Platform: win32
- Terminal: pycharm
- Version: 2.1.270
- Feedback ID: fb6eb062-f53b-439c-9d9a-69c7beff98ec

**Errors**
```json
[]
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the reported command on win32, using the fully qualified gradlew.bat path through cmd /c. Trace the permission check for cmd /c commands and absolute paths, then verify that an in-directory path is accepted and that the misleading runtime-computed-path message no longer appears.

Written by the indexing model from the issue text.

Assessment

Tech stack
python, shell
Domain
cli, operating-systems, security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.