A launch failure is a different problem from a mid-session error — it happens before Claude Code is even running, so the usual troubleshooting (checking a diff, reading the permission prompt) doesn't apply yet. There are really only four causes worth checking, in order of how often they're actually the culprit.
By far the most common cause. Your session token can expire, or a previous sign-in can get into a bad state, and the symptom looks like a generic failure to launch rather than a clear "please log in" message.
A stale or partial install — interrupted the first time, or installed from a copied/mirrored source instead of the official channel — can be present on disk but not actually functional.
On Windows, the single most common environment-specific launch failure is trying to run directly from a native Windows shell instead of inside WSL. It can look identical to an install problem, but the root cause is the environment, not the install itself.
Corporate firewalls, VPNs, and some antivirus tools can silently block the connection Claude Code needs to authenticate and run, with no explicit error naming the actual cause.
The free guide covers the permission model and your first real workflow — the two things that actually matter once launch issues are out of the way.
Get the Free Guide →No — a permission error happens mid-session, after Claude Code is already running, when it wants to take an action that needs your approval. A launch failure means it never got running in the first place. Different failure point, different fix.
Usually not. Most launch failures are an auth or environment issue, not a corrupted install — reinstalling fixes it by accident (it resets auth state) more often than because the install itself was actually broken.
Yes — the single most common Windows-specific launch failure is running the install outside WSL. Mac and Linux failures are almost always auth or network, not an environment mismatch.