[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)
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?
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:
- Attribute the user gesture correctly so gesture-gated downloads proceed as they did before 1.32352.0, or
- 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
Unable to open file.
(Japanese UI: ファイルを開くことができません。)
Steps to Reproduce
- Open Claude Desktop on Windows (version 1.32352.0 or 1.32352.1).
- Ask Claude to create a small file, e.g. "Create a file named test.py containing
print('hello')and send it to me." - Click Download on the resulting file card.
- Observe the bottom-right toast: "Unable to open file." No file is written to the Downloads folder.
- Repeat with
test.txt,test.csv,test.zip,test.json— all succeed. - 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.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗