First time using Terminal? We've got your back!

First time using Command Prompt? We've got your back!

Don't worry - everyone hits these bumps (even developers who've been coding for years!). We'll walk through everything together, nice and easy.

Help! I'm stuck!

Quick Fix

Can't find Terminal? No worries!

Terminal is already on your Mac - it's just a bit hidden. Let's find it together:

  1. Press Command (Cmd) ⌘ + Space (Spotlight Search)
  2. Type "terminal" or "Terminal"
  3. Press Enter and Terminal will open!
This is what Terminal looks like when opened
Last login: Mon Jan 8 10:32:15 on ttys001 username@MacBook-Pro ~ %
💡Tip

If you'll use it often, add Terminal to your Dock. Right-click the Terminal icon and select "Options > Keep in Dock".

My password is invisible! Is it broken?

Nope, you're doing great! Terminal hides your password on purpose (like how ATMs hide your PIN). Just type it anyway - it's working even though you can't see it.

Password entry screen - Normal behavior
username@MacBook-Pro ~ % sudo npm install -g claude
Password: ← Nothing appears on screen when typing password (normal for security)
  1. Just type your Mac login password
  2. Nothing shows on screen but it's being entered
  3. Press Enter when done
If it says wrong password, try typing slowly again. Also check if Caps Lock is on!

Ugh, permission denied errors!

Your Mac is just being protective (like a security guard). We need to tell it you're allowed to install this.

Wrong way - Permission error
username@MacBook-Pro ~ % npm install -g claude
npm ERR! Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/claude' npm ERR! The operation was rejected by your operating system. npm ERR! It is likely you do not have the permissions to access this file as the current user
Right way - Using sudo
username@MacBook-Pro ~ % sudo npm install -g claude
Password: ← Enter your Mac password here to proceed with installation

The magic word 'sudo' tells your Mac "I'm the owner, let me in!" - just like using your house key.

Can't find Command Prompt? Let me help!

Command Prompt is already on your PC - here are the quickest ways to find it:

  1. Method 1: Press Windows (Win) ⊞ + R, type "cmd" and press Enter
  2. Method 2: Click Start → Search for "cmd" or "Command Prompt"
  3. Method 3: Press Windows (Win) ⊞ + X and select "Command Prompt"
This is what Command Prompt looks like when opened
Microsoft Windows [Version 10.0.22631.4169] (c) Microsoft Corporation. All rights reserved. C:\Users\username>
💡Tip

If you use Command Prompt often, pin it to your taskbar for easy access.

Access denied? Let's fix that!

Windows is being protective (like a security guard). We need to run Command Prompt with special permissions:

  1. Right-click Command Prompt
  2. Select "Run as administrator"
  3. Click "Yes" when User Account Control appears
  4. Try the command again

Wait, is this supposed to happen?

Reassurance

It's been 5+ minutes... did it freeze?

Nope, it's still working! Think of it like downloading a really big movie - Claude Code needs to grab lots of files from the internet and set them all up properly.

Installation in progress - Taking a while
username@MacBook-Pro ~ % sudo npm install -g @anthropic-ai/claude-code Password: Password: # ← After entering password npm WARN deprecated har-validator@5.1.5: this library is no longer supported npm WARN deprecated uuid@3.4.0: Please upgrade to version 7 or higher. Installing: express@4.18.2 Installing: lodash@4.17.21 Installing: moment@2.29.4 ⠧ Installing: moment@2.29.4
C:\Users\username> npm install -g @anthropic-ai/claude-code npm WARN deprecated har-validator@5.1.5: this library is no longer supported npm WARN deprecated uuid@3.4.0: Please upgrade to version 7 or higher. [░░░░░░░░░░░░░░░░░░░░] | idealTree:claude-code: timing idealTree:node_modules/.staging # ← Progress bar moves slowly [████░░░░░░░░░░░░░░░░] \ fetchMetadata: sill resolveWithNewModule express@4.18.2 [████████░░░░░░░░░░░░] | fetchMetadata: timing metavuln:calculate:security-advisory [████████████░░░░░░░░] / extract:lodash: verb lock using C:\Users\username\AppData\Roaming\npm # ← Downloading and installing each package
Totally normal!

Perfect excuse for a coffee break! ☕ This usually takes 5-10 minutes depending on your internet speed. The spinning symbols mean it's working hard.

Yikes! I see WARN messages everywhere!

Don't panic! These warnings are like 'caution' signs - they're just FYIs, not stop signs. Your installation is still going smoothly.

Warning messages during installation - Normal situation
username@MacBook-Pro ~ % npm install some-package
C:\Users\username> npm install some-package
# → For Command Prompt (cmd)
npm WARN deprecated package@1.0.0: This package is deprecated → Just means this package is old (like a vintage car - still runs fine!) npm WARN optional SKIPPING OPTIONAL DEPENDENCY → Skipping extras you don't need (like declining fries with your burger) npm WARN some-module@2.1.0 requires a peer dependency → Suggesting helper programs (like recommending a side dish)
💡Quick tip!

Golden rule: Yellow WARN = Keep going! Red ERROR = Time to stop and fix. You're doing great if you only see yellow!

I see strange symbols or colors in Terminal

Terminal uses various colors and symbols to distinguish information.

Terminal colors and symbols example
username@MacBook-Pro ~ % npm install express
C:\Users\username> npm install express
added 64 packages in 3s → Default color = Success/Complete npm WARN deprecated package@1.0.0: This package is deprecated → Yellow WARN = Warning (can ignore) npm ERR! code ENOENT npm ERR! syscall open
npm ERR! path /Users/username/package.json
npm ERR! path C:\Users\username\package.json
→ Red ERR! = Error (needs attention)
username@MacBook-Pro ~ %
% or $ = Waiting for command input
C:\Users\username>
> = Waiting for command input

Good to know first

Basic Knowledge

Wait, how do I copy and paste here?

Good question! Terminal is a bit quirky with copy/paste, but once you know the trick, it's easy:

  • Select text then Command (Cmd) ⌘ + C
  • Command (Cmd) ⌘ + V
  • Select text then Control (Ctrl) + C or right-click
  • Control (Ctrl) + V or right-click

Oops! I typed something weird and now Terminal looks funny

No worries, you didn't break anything! Here's your escape plan:

  • Control (Ctrl) + C : Stop what's currently running
  • Control (Ctrl) + D : Exit the program
  • Type exit : Close Terminal/Command Prompt
  • Last resort: Just close and reopen the Terminal/Command Prompt window
Loading Claude Code preview...
Completely closing Terminal
username@MacBook-Pro ~ % exit
[Process completed] → Terminal window closes, or just this message remains depending on settings
C:\Users\username> exit
# → Command Prompt window closes

What do these mysterious commands mean?

Think of these as simple instructions you give to your computer - like texting, but shorter:

pwd - See where you are (like checking a map)
username@MacBook-Pro ~ % pwd
/Users/yourname → Means you're in the /Users/yourname folder
cd - See where you are (like checking your GPS)
C:\Users\username> cd
C:\Users\username → Means you're in the C:\Users\username folder
ls - See what's in this folder (like opening a drawer)
username@MacBook-Pro ~ % ls
Desktop Documents Downloads Pictures → Shows files and folders in current directory
dir - See what's in this folder (like looking in a filing cabinet)
C:\Users\username> dir
2025-07-16 10:30 AM <DIR> . 2025-07-16 10:30 AM <DIR> .. 2025-07-16 09:15 AM <DIR> Desktop 2025-07-15 02:30 PM <DIR> Documents 2025-07-14 05:45 PM <DIR> Downloads 2025-07-13 11:20 AM <DIR> Pictures → Shows files and folders in current directory
cd - Go to a different folder (like walking into another room)
username@MacBook-Pro ~ % cd Desktop
username@MacBook-Pro Desktop %
→ Moved to Desktop folder! (notice the prompt changed)
cd - Go to a different folder (like entering a different room)
C:\Users\username> cd Desktop
C:\Users\username\Desktop>
→ Moved to Desktop folder! (notice the prompt changed)
cd .. - Go back one level (like walking out of a room)
username@MacBook-Pro Desktop % cd ..
username@MacBook-Pro ~ %
→ Returned to home folder from Desktop
cd .. - Go back one level (like walking out of a room)
C:\Users\username\Desktop> cd ..
C:\Users\username>
→ Returned to user folder from Desktop
mkdir - Make a new folder (like creating a new drawer)
username@MacBook-Pro ~ % mkdir my-project
username@MacBook-Pro ~ % ls
Desktop Documents Downloads Pictures my-project → my-project folder was created!
mkdir - Make a new folder (like creating a new drawer)
C:\Users\username> mkdir my-project
C:\Users\username> dir
2025-07-16 10:35 AM <DIR> my-project 2025-07-16 10:30 AM <DIR> Desktop 2025-07-15 02:30 PM <DIR> Documents → my-project folder was created!
clear - Clean up the screen (like erasing a whiteboard)
username@MacBook-Pro ~ % clear
→ Terminal screen becomes clean! (previous content still available by scrolling)
cls - Clean up the screen (like wiping a blackboard)
C:\Users\username> cls
→ Command Prompt screen becomes clean!
cat - Peek inside a file (like reading a document)
username@MacBook-Pro ~ % cat package.json
{ "name": "my-project", "version": "1.0.0", "description": "My first project" }→ Shows the entire file contents
type - Read what's in a file (like opening a letter)
C:\Users\username> type package.json
{ "name": "my-project", "version": "1.0.0", "description": "My first project" }→ Shows the entire file contents
which - Find where a program lives (like looking up an address)
username@MacBook-Pro ~ % which node
/usr/local/bin/node
username@MacBook-Pro ~ % which npm
/usr/local/bin/npm → Node.js and npm are properly installed!
where - Find where a program is installed (like finding an app on your phone)
C:\Users\username> where node
C:\Program Files\nodejs\node.exe
C:\Users\username> where npm
C:\Program Files\nodejs\npm.cmd → Node.js and npm are properly installed!
cp - Make a copy of a file (like photocopying)
username@MacBook-Pro ~ % cp README.md README-backup.md
username@MacBook-Pro ~ % ls *.md
README-backup.md README.md → Copy of README.md was created
copy - Make a duplicate file (like making a photocopy)
C:\Users\username> copy README.md README-backup.md
1 file(s) copied.
C:\Users\username> dir *.md
2025-07-16 10:40 AM 1,245 README-backup.md 2025-07-16 10:30 AM 1,245 README.md → Copy of README.md was created
mv - Move or rename files (like relocating or relabeling)
username@MacBook-Pro ~ % mv old-name.txt new-name.txt
→ File was renamed
username@MacBook-Pro ~ % mv file.txt Desktop/
→ file.txt was moved to Desktop folder
move or ren - Move files around or give them new names
C:\Users\username> ren old-name.txt new-name.txt
→ File was renamed
C:\Users\username> move file.txt Desktop
1 file(s) moved. → file.txt was moved to Desktop folder
touch - Create a blank file (like getting a fresh sheet of paper)
username@MacBook-Pro ~ % touch index.js
username@MacBook-Pro ~ % ls *.js
index.js → Empty index.js file was created
echo > - Create a new blank file (like getting a fresh notebook page)
C:\Users\username> echo. > index.js
C:\Users\username> dir *.js
2025-07-16 10:45 AM 2 index.js → index.js file was created

What's this API Key thing?

Think of an API Key as your personal ID card for Claude - it's how Claude knows it's really you!

  1. Go to console.anthropic.com
  2. Sign up or log in
  3. Click "API Keys" menu
  4. Click "Create Key" button
  5. Copy the generated key to a safe place
⚠️Don't lose this!

Important! Your API Key appears only once (like a secret code). Copy it somewhere safe - you can't see it again!