install.ps1 gives no download progress feedback, indistinguishable from a hang on slow/AV-throttled connections

Status Open
Maintainer reply None cached
Activity 0 comments · opened Aug 17, 2026

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?

The native Windows installer (irm https://claude.ai/install.ps1 | iex) downloads the claude.exe binary (~300MB) using Invoke-WebRequest with $ProgressPreference = 'SilentlyContinue' and no progress output of any kind. On a slow or antivirus-throttled connection, the script prints "Setting up Claude Code..." and then produces no output for several minutes while the download proceeds in the background.

This is indistinguishable from the installer hanging or freezing. I initially assumed the process was stuck and killed it multiple times, when in fact the download was progressing very slowly (as low as ~0.28 MB/s in my case) because real-time antivirus scanning was intercepting the download stream.

What Should Happen?

The installer should report download progress during the claude.exe download step as a percentage (when Content-Length is available) or as bytes downloaded/elapsed time (when it isn't with chunked transfer encoding) so users can tell the difference between "still downloading, just slow" and "actually frozen."

Error Messages/Logs

There are no error. That was the core problem total silence for several minutes with no indication of progress, failure, or success. This is best to prevent confused people with having progress bar download that someone who has internet slow connection.

Steps to Reproduce

  1. On a Windows 10 machine with a slow connection, or with an antivirus product doing real-time scanning of downloaded executables (reproduced with Windows Defender's real-time protection enabled), open PowerShell (stable, non-preview build; execution policy RemoteSigned).
  2. Run: irm https://claude.ai/install.ps1 | iex
  3. Observe the script prints "Setting up Claude Code..." and then nothing further for multiple minutes.
  4. Confirm the download is actually progressing (not frozen) by checking the growing file size of the partial download in %USERPROFILE%\.claude\downloads while the command appears to hang:

Get-Item "$env:USERPROFILE\.claude\downloads\claude-*.exe" | Select-Object Length

  1. In my case, this was compounded by Windows Defender's real-time scanning throttling the download to ~0.28 MB/s for a ~305MB file, making the apparent "hang" last several minutes.

Claude Model

None

Is this a regression?

Yes, this worked in a previous version

Last Working Version

_No response_

Claude Code Version

Just a install claude, no version needed

Platform

Anthropic API

Operating System

Windows

Terminal/Shell

PowerShell

Additional Information

Confirmed via manual testing that the download itself (Invoke-WebRequest to the claude.exe binary URL) is the specific step where output goes silent; all other steps (fetching the latest version, fetching manifest.json) return in under a second. A minimal repro script that adds a live Write-Progress-based percentage/byte counter to the download step confirms the download is genuinely progressing, just with zero feedback in the stock installer.

View original on GitHub ↗