Originally published at https://aicoding-guide.com.
Two things trip people up on a first install of Claude Code: which install method to pick, and what to check once it is in.
The short answer: pick the install method by whether it auto-updates. Only the native installer and npm update themselves; Homebrew, WinGet and the Linux package managers are manual. Then verify with claude --version and claude doctor before starting your first session.
Everything below comes from the official documentation as fetched on 2026-10-14. For what Claude Code is, see What Claude Code is; this page goes in the order you actually type things.
Key point
What you will learn
- The system requirements and which plans include Claude Code
- How to choose an install method (it comes down to auto-updates)
- Your first session, and what to touch in the first hour
Requirements and the plans that include it
| Item | Requirement |
|---|---|
| OS | macOS 13.0+, Windows 10 1809+ or Windows Server 2019+, Ubuntu 20.04+, Debian 10+, Alpine Linux 3.19+ |
| Hardware | 4 GB+ RAM, x64 or ARM64 |
| Shell | Bash, Zsh, PowerShell or CMD |
| Network | An internet connection is required |
The free plan does not include it
Claude Code requires a Pro, Max, Team, Enterprise or Claude Console account. The documentation is explicit: "The free claude.ai plan does not include Claude Code access." Amazon Bedrock, Google Cloud's Agent Platform and Microsoft Foundry also work. For what each plan costs, see Claude Code pricing and plans.
Choose an install method by its update behavior
This is the first fork in the road. Only the native installer and npm update themselves.
| Method | Command | Auto-updates |
|---|---|---|
| Native (recommended) | `curl -fsSL https://claude.ai/install.sh \ | bash` |
| Homebrew | brew install --cask claude-code |
No |
| WinGet | winget install Anthropic.ClaudeCode |
No |
| apt / dnf / apk | Register the repository, then install | No |
| npm | npm install -g @anthropic-ai/claude-code |
Yes |
On macOS, Linux and WSL the native install is one line:
curl -fsSL https://claude.ai/install.sh | bash
On Windows the command depends on your shell. Your prompt shows PS C:\ in PowerShell and C:\ without the PS in CMD.
irm https://claude.ai/install.ps1 | iex
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd
The install command shows no progress while it downloads. When it finishes, open a new terminal window before checking.
Glossary
Release channel: theautoUpdatesChannelsetting takes"latest"(the default — new versions as they ship) or"stable"(typically about a week old, skipping releases with major regressions). Homebrew picks by cask name instead:claude-codeis stable andclaude-code@latestis latest.
The npm package needs Node.js 22 or later. Do not use sudo npm install -g — the documentation warns it leads to permission issues and security risks.
Verify, then start your first session
claude --version
A working installation prints a version number such as 2.1.211 (Claude Code). If you get command not found, the install directory is not on your PATH yet.
For a fuller check, claude doctor prints read-only installation and settings diagnostics without starting a session: install health, settings-file validation errors, and warnings with suggested fixes. It also reports the result of the most recent update attempt.
claude doctor
Then start it in the project you want to work in:
cd /path/to/your/project
claude
The first run prompts you to log in through your browser. If you have set ANTHROPIC_API_KEY and you approve the key when Claude Code asks whether to use it, the login prompt is skipped. Once you are logged in, the credentials are stored.
What to decide on Windows
Windows gives you native or WSL, and the difference that matters most is whether sandboxing is available.
| Option | Sandboxing | When to use |
|---|---|---|
| Native Windows | Not supported | Windows-native projects and tools |
| WSL 2 | Supported | Linux toolchains, or sandboxed command execution |
| WSL 1 | Not supported | If WSL 2 is unavailable |
On native Windows, Git for Windows is optional but worth having: it provides Git Bash, which backs the Bash tool. Without it, Claude Code runs shell commands through the PowerShell tool. If Git Bash cannot be found, point at it in settings:
{
"env": {
"CLAUDE_CODE_GIT_BASH_PATH": "C:\\Program Files\\Git\\bin\\bash.exe"
}
}
The first hour
Once a session is open, work through these in order.
-
Check the permission mode. It shows in the status bar. With v2.1.283 or later, terminal and VS Code sessions start in
autoon every plan.Shift+Tabcycles modes at any time. The six modes are compared in Claude Code permission modes -
Have it explain the project. Just ask
what does this project do?— Claude reads the files it needs, so you don't add context by hand -
Create a CLAUDE.md.
/initscaffolds one for the project. For what to put in it, see How to write CLAUDE.md -
Send one small change. Something like
add a hello world function to the main file, to see the approval flow once -
Write a single deny rule. Before widening the automation, put what must not be touched into
permissions.denyin.claude/settings.json— see Design permissions in Claude Code's settings.json -
Look at your usage.
/usageshows how much of your plan you are consuming; Check Claude Code usage and cost covers the rest
The commands worth memorizing:
| Command | What it does |
|---|---|
claude |
Start interactive mode |
claude "task" |
Start with an initial prompt |
claude -p "query" |
Run one query, then exit |
claude -c |
Continue the most recent conversation in this directory |
claude -r |
Resume a previous conversation |
/help |
Show available commands |
/clear |
Clear conversation history |
/login |
Switch accounts or re-authenticate |
Summary
- Requirements: macOS 13.0+, Windows 10 1809+, Ubuntu 20.04+ and similar, with 4 GB+ RAM
- The free claude.ai plan does not include Claude Code; you need Pro, Max, Team, Enterprise, Console or a cloud provider
- Pick the install method by auto-update behavior: native and npm update themselves, Homebrew, WinGet, apt, dnf and apk do not
- Verify with
claude --version, and readclaude doctorwhen something is off - On Windows, sandboxing means WSL 2; native Windows and WSL 1 do not support it
- In the first hour: check the permission mode, run
/init, send one small change, then write a deny rule
Top comments (0)