anthropics / anthropics/claude-code
[BUG] Claude Desktop (Windows): downloads fail silently for all extensions in Chromium's ALLOW_ON_USER_GESTURE list (.py/.js/.rb/.sh/.ps1/.bat/.pyw)
- 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?
**Note: this is a Claude Desktop (Windows) bug, not a Claude Code CLI bug.** This template is the only bug intake available, so I'm filing here.
Since updating to **1.32352.0 / 1.32352.1**, downloading a Claude-generated file from chat fails for any file whose extension appears in Chromium's `download_file_types.asciipb` with `danger_level: ALLOW_ON_USER_GESTURE`. A toast reading **"Unable to open file."** (JA: 「ファイルを開くことができません。」) appears in the bottom-right and no file is written to disk.
Both **"Download"** and **"Download and open"** fail identically.
### Test matrix (11 extensions, controlled)
| Extension | In `ALLOW_ON_USER_GESTURE` list | Download |
|---|---|---|
| `.txt` | No | ✅ OK |
| `.csv` | No | ✅ OK |
| `.zip` | No | ✅ OK |
| `.json` | No | ✅ OK |
| `.js` | **Yes** | ❌ Fail |
| `.py` | **Yes** | ❌ Fail |
| `.rb` | **Yes** | ❌ Fail |
| `.sh` | **Yes** | ❌ Fail |
| `.ps1` | **Yes** | ❌ Fail |
| `.bat` | **Yes** | ❌ Fail |
| `.pyw` | **Yes** | ❌ Fail |
**11/11 correlation.** Every extension classified `ALLOW_ON_USER_GESTURE` fails; every extension outside that list succeeds.
This is **not** a Windows file-association problem — re-associating `.py` with an editor (Hidemaru / VS Code) does not fix it, while `.json` works without any association change.
### Reference
`components/safe_browsing/content/resources/download_file_types.asciipb` — e.g. `py` is `uma_value: 130`, `ping_setting: FULL_PING`, `danger_level: ALLOW_ON_USER_GESTURE` on Windows/Mac/Linux.
Per the Chromium `README.md` in that directory, `ALLOW_ON_USER_GESTURE` downloads proceed **without any warning** when a user gesture is attributed to the request; otherwise the download is interrupted and the user is offered **Keep / Delete**. No danger level is specified to abort a download with no recovery path.
Chrome and Edge both surface that Keep/Delete recovery UI. **Claude Desktop does not implement it**, so an interrupted download is unrecoverable and surfaces only as a generic "Unable to open file." toast.
### Suspected cause
`1.32352.0` includes:
> Fixed settings and connector links in chat doing nothing, or opening your web browser, when clicked in the app; they now open the app's own settings.
If in-chat click handling was rerouted through an async/programmatic path, the user activation may no longer be attributed to the download request, causing every gesture-gated extension to be interrupted. This is speculative, but consistent with both the symptom set and the changelog.
### Impact
Anyone downloading source files (`.py`, `.js`, `.rb`, `.sh`, `.ps1`) from Claude Desktop on Windows — a large share of developer users — cannot retrieve them at all. Renaming to `.txt` and renaming back after every download is not a workable process.
### What Should Happen?
Either:
1. Attribute the user gesture correctly so gesture-gated downloads proceed as they did before 1.32352.0, **or**
2. Implement a Keep/Delete confirmation UI for interrupted downloads, matching Chrome and Edge behavior.
At minimum, the failure toast should state that the download was blocked as a potentially dangerous file type, rather than the misleading "Unable to open file."
### Error Messages/Logs
```shell
Unable to open file.
(Japanese UI: ファイルを開くことができません。)
```
### Steps to Reproduce
1. Open Claude Desktop on Windows (version 1.32352.0 or 1.32352.1).
2. Ask Claude to create a small file, e.g. "Create a file named test.py containing `print('hello')` and send it to me."
3. Click **Download** on the resulting file card.
4. Observe the bottom-right toast: "Unable to open file." No file is written to the Downloads folder.
5. Repeat with `test.txt`, `test.csv`, `test.zip`, `test.json` — all succeed.
6. Repeat with `test.js`, `test.rb`, `test.sh`, `test.ps1`, `test.bat`, `test.pyw` — all fail identically.
No file association changes affect the outcome.
### Claude Model
None
### Is this a regression?
Yes, this worked in a previous version
### Last Working Version
Claude Desktop 1.30096.1 (worked before the 1.32352.0 update)
### Claude Code Version
N/A — this is a Claude Desktop bug, not Claude Code CLI. Claude Desktop 1.32352.1
### Platform
Other
### Operating System
Windows
### Terminal/Shell
Other
### Additional Information
Claude Desktop changelog entries for the versions involved:
**1.32352.1 (2026-08-18)**
- Fixed a rare Windows startup failure where the first window could fail to initialize on a fresh install.
**1.32352.0 (2026-08-17)** — includes the suspected trigger:
- Fixed settings and connector links in chat doing nothing, or opening your web browser, when clicked in the app; they now open the app's own settings.
- Fixed the chat showing an error screen instead of the conversation when Claude created or linked a file whose name contains a percent sign.
**Workaround:** requesting the file inside a `.zip` works, since `.zip` is not gesture-gated.
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
Reproduce the failure on Claude Desktop 1.32352.1 for the listed gesture-gated extensions, comparing it with the working 1.30096.1 behavior and the successful .txt/.zip cases. Read the referenced Chromium components/safe_browsing/content/resources/download_file_types.asciipb and verify whether the app provides gesture attribution or recovery UI. Done means source-file downloads work again or blocked downloads offer a clear Keep/Delete path and accurate message.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Lĩnh vực
- desktop
- Loại issue
- Lỗi
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- 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
- 25/100