CCLearn

Install, authenticate, and prove it works

verified against Claude Code 2.1.261 · 2026-09-0912 min

By the end you can

  • Install Claude Code on your platform with the method that matches how you want updates handled
  • Authenticate with the account type you actually have, and know which plans include Claude Code
  • Prove the install is healthy with claude --version and claude doctor rather than assuming it
  • Choose a surface (terminal, VS Code, JetBrains, desktop, web) and say what each one adds

There are five ways to install Claude Code and they differ in exactly one thing that matters later: who is responsible for updates. Pick deliberately, because "my Claude Code doesn't have that feature" is almost always a Homebrew install that nobody has upgraded since February.

Install

The native installer is the documented recommendation, and native installs auto-update in the background (Advanced setup).

bash
# macOS, Linux, WSL
curl -fsSL https://claude.ai/install.sh | bash
powershell
# Windows PowerShell
irm https://claude.ai/install.ps1 | iex

The alternatives, and what you are signing up for:

MethodCommandUpdates
Native (recommended)curl -fsSL https://claude.ai/install.sh | bashAutomatic, in the background
Homebrewbrew install --cask claude-codeManual: brew upgrade claude-code
WinGetwinget install Anthropic.ClaudeCodeManual: winget upgrade Anthropic.ClaudeCode
npmnpm install -g @anthropic-ai/claude-codeManual, and needs Node.js 22+ from v2.1.198 on
apt / dnf / apksee the docs for the signed reposThrough your normal system upgrades

The npm row's Node floor is itself versioned, and it is a floor you are now standing on: the npm package requires Node.js 22 or later as of v2.1.198 (Advanced setup). Install it on an older Node anyway and npm prints an EBADENGINE warning rather than failing, the install completes, and claude still runs, because the package downloads a native binary that does not use your Node.js at runtime. So a green npm install proves less here than usual.

Authenticate

Claude Code requires a Pro, Max, Team, Enterprise, or Console account. The free Claude.ai plan does not include Claude Code (Setup). You can also route through Amazon Bedrock, Google Cloud's Agent Platform, or Microsoft Foundry if your organisation does.

Log in by starting a session and following the browser prompt:

bash
claude

Two things worth knowing before you hit them:

  • If ANTHROPIC_API_KEY is set in your environment, Claude Code does not open the browser login. It prompts you once to approve that key instead. If you meant to use your subscription and find yourself billed to Console credits, this is why.
  • /login inside a running session switches accounts or re-authenticates.

Prove it works

This is the first place the course's central habit shows up: a thing is not working because it looked like it worked. Two commands, in this order.

bash
claude --version

A healthy install prints a version and the product name — 2.1.211 (Claude Code) in the docs' example. If this prints command not found, nothing below will help until it doesn't.

bash
claude doctor

claude doctor prints read-only installation and settings diagnostics without starting a session — install health, settings-file validation errors, warnings with suggested fixes, and the result of the most recent auto-update attempt. It is a full-screen report rather than a line of output, so there is nothing useful to paste here. Run it, and check three things: that the install method it names is the one you actually used, that the last auto-update attempt succeeded, and that no settings file is listed as invalid. The second is the fastest way to find out your updates have been silently failing for three weeks; the third presents later as "Claude keeps asking permission for things I allow-listed", because a settings file with a JSON syntax error is silently ignored.

Run both commands now, before you go on. The rest of Level 1 assumes a working install, and every later level assumes you will check rather than assume.

Choosing a surface

Every surface connects to the same engine — the same agentic loop, and the same CLAUDE.md, settings, and MCP servers from your repo (Overview). What changes is where the code runs and how you see it.

SurfaceAddsNeeds
Terminal CLIEverything; the reference surfaceThe install above
VS Code / CursorInline diffs, @-mentions, plan review, historyThe extension
JetBrainsInteractive diffs, selection context sharingThe plugin plus the CLI
Desktop appVisual diff review, parallel sessions, scheduled tasks, cloud sessionsIts own download; includes Claude Code
Web (claude.ai/code)Long-running tasks, repos you don't have locally, parallel workNothing local

Checkpoint

You should have a version number and a clean claude doctor on your own machine, and be able to say which of the five install methods you used, who is responsible for updating it, and which credential the session is actually running on — a subscription plan or an ANTHROPIC_API_KEY you forgot was exported.

Sources