Getting Started with Claude Code: Zero to Dangerous in 10 Minutes

Claude Code is a terminal-based AI assistant from Anthropic. Not a chatbot. Not an autocomplete plugin. It runs in your terminal, reads your entire codebase, writes files, runs commands, and figures out how to do what you ask. It is the closest thing to having another developer sitting next to you. You describe what you want, it reads your code, makes a plan, and does it. If it needs to install something, it tells you. If it needs to edit twelve files to wire up a feature, it edits twelve files. This guide gets you from zero to productive in about ten minutes.

What You Need

Three things. That is the whole list.

You do not need Node.js anymore (though the npm install still works). The native installer handles everything.

Installation

There are a few ways to install. The native install is recommended because it auto-updates, so you always have the latest version without thinking about it.

# Native install (recommended) - auto-updates
# Mac / Linux / WSL:
curl -fsSL https://claude.ai/install.sh | bash

# Windows (PowerShell):
irm https://claude.ai/install.ps1 | iex

# Homebrew (Mac/Linux):
brew install --cask claude-code

# WinGet (Windows):
winget install Anthropic.ClaudeCode

# npm (any platform, requires Node.js):
npm install -g @anthropic-ai/claude-code
Heads up on updates
The native installers (curl and PowerShell) auto-update themselves. Homebrew, WinGet, and npm do not. If you use those, you will need to manually update when new versions drop. Given how fast Claude Code ships new features, auto-update is worth it.

After installing, open a new terminal window (or restart your shell) and type claude --version to confirm it works.

Your First Session

Here is the play-by-play. Open your terminal and navigate to a project you want to work on.

# Navigate to your project
cd ~/projects/my-app

# Start Claude Code
claude

The first time you run it, Claude Code will ask you to log in. It opens your browser, you authenticate with your Anthropic account, and you are done. This only happens once.

Now you are in an interactive session. You will see a prompt waiting for your input. Try the single best first command:

> what does this project do?

Claude reads your files, looks at your directory structure, checks your package.json or equivalent, and gives you a summary. It is not guessing. It is actually reading your code. On a medium-sized project this takes a few seconds. On a huge monorepo it might take longer, but it will figure it out.

Now try making an edit:

> add a loading spinner to the login page

Here is where the permission prompt shows up. Claude Code will show you exactly what it wants to do - which files it wants to edit, what changes it wants to make - and ask for your approval. You will see something like:

Claude wants to edit:
  src/pages/Login.tsx

Allow? (y/n)

Press y to approve, n to reject. You are always in control. Claude Code never changes your files without asking first (unless you change the permission mode, which we will cover below).

Keyboard shortcuts you should know right away

Essential Commands

You can use Claude Code in interactive mode (start a conversation) or one-shot mode (run a single task and get out). Here is the reference table.

| Command | What it does | |---|---| | claude | Start an interactive session. This is the main way to use it. | | claude "task" | One-shot mode. Give it a task in quotes, it does the work and exits. | | claude -p "query" | Print mode. Quick query, prints the answer, exits. Good for scripting. | | claude -c | Continue your last conversation. Picks up right where you left off. | | claude -r | Resume a previous session. Shows you a list to choose from. | | claude commit | Smart git commit. Analyzes your changes and writes the commit message. | | /help | Inside a session, shows all available slash commands. | | /model | Switch between models mid-session (Sonnet, Opus, etc). | | Shift+Tab | Cycle through permission modes without restarting. |

The claude -c command is one you will use constantly. Close your terminal, come back later, run claude -c, and you are right back in your conversation with full context.

Permission Modes

This is important to understand early. Claude Code has four permission modes that control how much autonomy it gets. You can cycle through them with Shift+Tab during a session, or set them when you start.

1. Default (Suggest)
Asks before every file edit and every command. This is where you start, and it is totally fine to stay here. You see exactly what Claude wants to do before it does it. Good for learning the tool and for working on code you care about.
2. Auto-accept edits
Claude edits files freely without asking. It still asks before running terminal commands (like npm install, git push, etc). This is the sweet spot for most work once you trust the tool. It speeds things up a lot without giving up control over command execution.
3. Plan mode
Read-only. Claude can look at your code but cannot change anything. It creates a plan and waits for your approval before acting. Great for exploring unfamiliar codebases or when you want Claude to think through a problem before touching anything.
4. Full send
The --dangerously-skip-permissions flag. Yes, the name is intentional. Claude can do anything - edit files, run commands, install packages, push to git - without asking. The long scary flag name is a reminder that you are giving an AI unsupervised access to your system. Use it when you know what you are doing and you want maximum speed. Not recommended for your first session.
Practical advice
Start with Default mode. After a few sessions, switch to auto-accept edits for everyday work. Use Plan mode when exploring new codebases. Save full send for automated pipelines and CI/CD jobs where you have tested the workflow already.

Where Claude Code Lives

Claude Code started as a terminal tool, but it has spread to just about everywhere developers work. Here is the full list of places you can use it:

Pick whatever fits your workflow. The CLI gives you the most flexibility, but the editor integrations are great if you spend most of your time in VS Code or JetBrains.

Tips That Actually Help

After using Claude Code for a while, these are the things that actually make a difference in how good your results are.

Be specific with your requests

"Fix the login bug where expired sessions show a blank screen instead of redirecting to /login" will get you a better result than "fix the bug." Claude Code uses your description to search your codebase. More detail means it finds the right files faster and makes the right changes.

Let it explore before it builds

Before saying "refactor the auth module," try "analyze the auth module and tell me how it works." Claude will read through the code, map out the dependencies, and give you a summary. Then you can make informed decisions about what to change. The analysis step takes thirty seconds and saves you from bad refactors.

Interrupt whenever you want

If Claude is going down the wrong path, just start typing and hit Enter. It stops immediately and adjusts to your new input. You do not have to wait for it to finish. You do not have to start over. Just redirect it.

Use /compact when context gets heavy

Long sessions build up a lot of context. When things start feeling slow or Claude seems to lose track of earlier parts of the conversation, type /compact. It summarizes the conversation so far and frees up context space. Think of it as clearing your working memory without losing the important bits.

Set up a CLAUDE.md file

Create a CLAUDE.md file at the root of your repo. This is where you put project-specific instructions that Claude reads at the start of every session. Things like:

# CLAUDE.md

## Project context
This is a React + TypeScript app using Tailwind CSS.
The API lives in /server and uses Express.

## Rules
- Use functional components, no class components
- All new components go in /src/components
- Tests go next to the file they test with .test.ts suffix
- Never modify files in /src/legacy (deprecated code)

## Common tasks
- To run dev server: npm run dev
- To run tests: npm test
- To deploy: npm run deploy

Claude reads this file automatically. You write it once, and every session starts with that context. It is like onboarding a new developer except the developer actually reads the docs.

Pricing

Quick breakdown so you know what you are paying for.

If you are a student, check whether your university has institutional access to Anthropic tools. Some programs include it, and it can save you the subscription cost entirely.

---

Stop reading. Open your terminal. Type claude. Ask it about your project. That is it. You will learn more in five minutes of using it than in any article, including this one.

The terminal is waiting. Go type something.

Related Power of AI pages

Keep reading with AI Finder, Prompt Studio, ChatGPT vs Claude vs Gemini, the AI glossary, and Which AI Should You Use?.