anthropics / anthropics/claude-code

[BUG] git diff --unified=0 / -U0 triggers a permission prompt despite being read-only

Đang mở
#92,484 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
area:bash area:permissions bug platform:vscode platform:windows
Ngôn ngữ chính
Python
Star
145k
Fork
23.1k
Chỉ số merge pull request
Chỉ số pull request đang chờ

Mô tả

### Preflight Checklist

- [x] I have searched [existing issues](https://github.com/anthropics/claude-code/issues?q=is%3Aissue%20state%3Aopen%20label%3Abug) 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?

With no Bash permission rules configured, `git diff` is auto-approved as read-only, but adding a context-count flag escalates it to a prompt.

Prompts:
```
git diff --cached -U0
git diff --cached --unified=0
```
Does not prompt:
```
git diff --cached
```
-U / --unified= only controls how many context lines are printed around each hunk. It has no side effects — it cannot write to the worktree or index, and doesn't change which command runs. It looks like an unconditionally safe formatting flag that the read-only classifier doesn't recognize.

Env: Claude Code VS Code extension 2.1.261, Windows 11, no permissions block in user or project settings.

### What Should Happen?

`git diff -U` should be whitelisted similarly to `git diff`

### Error Messages/Logs

```shell

```

### Steps to Reproduce

Ask claude to run `git diff` and `git diff -U0` from a chat tab in VS Code, and observe how only the latter prompts for permission.

### Claude Model

_No response_

### Is this a regression?

No, this never worked

### Last Working Version

_No response_

### Claude Code Version

2.1.261 (VS Code extension)

### Platform

Anthropic API

### Operating System

Windows

### Terminal/Shell

Other

### Additional Information

_No response_

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Hướng nghiên cứu

Start from the Bash permission classifier used when Claude Code runs commands from a VS Code chat tab, and compare how it handles `git diff --cached` with `git diff --cached -U0` and `--unified=0`. Trace the argument parsing and existing read-only allowlist, then verify that both unified-context forms avoid a prompt without changing protection for other commands.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
git, vscode
Lĩnh vực
cli, security
Loại issue
Lỗi
Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức độ hoạt động
Sôi nổi
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
55/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.