Claude Code: Start Here
Product facts change. Screen wording, menus and prompts differ between versions of Claude Code. Where this lesson describes something that depends on your version, it says check your version. Install steps and plans are in the next lesson, as of October 2026.
After this lesson, you will be able to:
- Say in one sentence what Claude Code is, and how it differs from a chat window in a browser
- Describe the loop it follows: look, propose, ask you, act, check
- Trace one safe first session by hand and say which steps only look and which steps change something
- Name three kinds of task where it helps and three where it does not
- Check any change it makes with git diff and a test run, and undo it if needed
#What Claude Code Is, in Plain Words
Think of a very quick colleague who is allowed to sit at your desk. You tell them, "The average on this page is wrong, find out why." They open the right file, read it, tell you what they think is wrong, and offer to fix it. Before they touch the file, they ask, "Shall I change this?" You look at the change and say yes or no. Then they run the check and show you the result.
Two things to hold on to before we go on:
- It is a helper, not a decision maker. You set the goal, you read the plan, you say yes or no, and you check the result.
- It can be wrong, and it can sound sure when it is wrong. Every change it makes still needs your eyes on it.
A chat window in a browser and Claude Code are both built on a model that writes text. What is the main thing Claude Code adds?
In one sentence: Claude Code is a helper that works on the files in your project folder with your permission, and you stay in charge of every change.
#The Picture in Your Head: Folder, Chat, Loop
You need no install to hold the whole idea. It has three parts.
- Look. Read files, list the folder, search for a word.
- Propose. Say what it thinks, or what it plans to change.
- Ask. If the next move changes something, it asks you first.
- Act. Make the edit or run the command you approved.
- Check. Run a test or read the result, and report what happened.
The picture has one rule worth remembering. Looking is free. Changing needs your yes. In the default setup, reading a file does not stop to ask you, and editing a file or running most commands does. Which actions ask can be changed in settings, and a later lesson covers that, so check your version for what you see.
In one sentence: a folder, a conversation and a loop of look, propose, ask, act, check, with you holding the yes.
#One Safe First Session, Traced by Hand
Here is a small project to use for the whole lesson. It has two files, and it has one bug that is easy to see.
average.pydef average(numbers):
return sum(numbers) / (len(numbers) + 1)test_average.py checks that the average of 2, 4 and 6 is 4.Before any tool runs, be the computer. Act out the function by hand on the list 2, 4, 6.
sum(numbers)adds the list: 2 + 4 + 6 = 12.len(numbers)counts the items: 3.- The code then adds 1 to the count, so the divisor is 4.
- 12 divided by 4 is 3.
+ 1 is the bug. Hold that in mind, because the session below is about finding exactly this.For the list 2, 4, 6 the code computes 12 divided by (3 + 1). What does average([2, 4, 6]) return?
Tests · Run it and compare with your hand trace: sum 12, count 3, and an average of 3.0 instead of 4.0. Then remove the + 1 and run again to see 4.0.
Do: Press Run. Then delete+ 1from the return line and run again.Notice: The first run prints sum is 12, count is 3 and average gives 3.0. After you delete+ 1the average becomes 4.0, which matches the test.Why: The code divided by one more than the number of items. Taking the extra 1 away divides by the real count, so the answer is the true average.
The lines below are an illustration of the flow. The exact words on your screen will differ, so check your version. Lines in square brackets describe what happens and are not exact output.
$ cd my-first-project
$ claude
> What does this project do? Do not change anything.
[Claude lists the folder, reads the files, answers in a few lines]
> Why does test_average.py fail?
[Claude reads average.py and explains: the divisor is the count plus 1]
> Fix it, then run the test.
[Claude asks to edit average.py. You read the change and say yes]
[Claude asks to run the test. You say yes]
[The test passes and Claude reports it]
> /exit
$ git diff
Count the steps. You start the tool, type three requests, leave, and then run a check yourself. Walk through them in this table.
| Step | What you type | What Claude does | Does it change anything? | Who decides |
|---|---|---|---|---|
| 1 | claude in the folder | Starts and waits | No | You |
| 2 | "What does this project do? Do not change anything." | Lists and reads files, then explains | No | You asked, it only looks |
| 3 | "Why does test_average.py fail?" | Reads the files, points at the + 1 | No | You asked, it only looks |
| 4 | "Fix it, then run the test." | Asks to edit, you say yes; asks to run, you say yes | Yes, the file changes | You, twice |
| 5 | /exit | Ends the session | No | You |
| 6 | git diff | Not Claude: git shows the change | No | You |
- for removed and + for added, and you confirm that only the + 1 went away. If you dislike the change, git restore average.py puts the file back as it was.In one sentence: ask first, change second, approve each change, and read the diff yourself at the end.
#Run the Toy Session and Compare
Tests · Run it first and read the output. Then change the True next to edit file to False and run again.
Do: Run it as it is. Then change"edit file": Trueto"edit file": Falseand run it again.Notice: The first run shows two looks, two approved lines, a PASS, and "you were asked 2 times". With the edit refused, that line says REFUSED, the test still runs, and the result is FAIL.Why: Saying no to the edit stopped the fix, so the test ran on the old code and failed. You decide what changes, and the check shows the result of your decision.
Real Claude Code goes further than this toy. It decides the plan itself, writes the new code, and can try again when a test fails. The toy only keeps the one lesson: the loop stops for your yes before anything changes.
In one sentence: the toy replays the loop, and refusing the edit shows that the check reports the result of your choice.
#Who Did What: Reading the Transcript
When you look back over a session, sort each step into one of two piles.
In the session, which step needs your yes before it happens?
In one sentence: sort every step into looking or changing, give your yes only to changes you understand, and do the final check yourself.
#When It Helps and When It Does Not
A good way to choose is to ask one question: can I tell whether the result is right? If yes, the helper is usually worth it.
| It tends to help when | Why |
|---|---|
| There is a test or a command that shows right or wrong | You can check the result in seconds |
| You are reading unfamiliar code and want a tour | Looking is free and explanations are quick |
| A change repeats across many files | The boring part is done for you, and you review it |
| You have an error message and no idea what it means | It reads the files around the error and explains |
| Be careful or skip it when | Why |
|---|---|
| You cannot check the result | A wrong answer looks the same as a right one |
| The folder holds passwords, keys or private data | Anything it reads can leave your machine as part of a request, so keep secrets out |
| The goal is vague, such as "make it better" | It will guess, and you will not know what it changed or why |
| You are learning the skill itself | Let it explain and quiz you, and write the first versions yourself |
| The action cannot be undone, such as changing a live system | A mistake there costs real money or data, so use a safe copy first |
Not every task fits, and that is fine. Use it where you can see the outcome, and use your own judgment where you cannot.
In one sentence: use it when you can check the result, and be careful when you cannot.
#Four Beginner Slips
cd.You start Claude Code in your home folder by accident and ask it to fix a bug. What is the sensible move?
In one sentence: start in the right folder, work on a copy, read before you say yes, and check the result yourself.
#Where to Go Next
You now have the picture and a safe way to try it. The lessons after this one slow down and cover each part.
- Next: Getting Started: Install & Auth. It covers how to install, how to sign in, and how to start your first session on a real folder, with product facts dated October 2026.
- Then: The Claude Code Loop goes deeper into the loop you met here, and Slash Commands & Skills shows the commands you type inside a session.
- After that: Prompt Patterns & Interaction shows how to ask so that you get the result you wanted.
In one sentence: install and sign in next, then learn the loop and the commands in order.
A program from Anthropic that you talk to in plain English. It can read, change and run things in a project folder, asking you before it changes anything.
A window where you type commands as text. Most people run Claude Code in one.
The folder that holds the files of one piece of work. Claude Code works on the folder where you start it.
A program that takes several steps on its own to finish a job, instead of giving one answer and stopping.
The repeating cycle of look, propose, ask, act, check that the tool follows for any job.
Your yes or no before a step that changes something, such as an edit or a command.
A command that shows exactly which lines of which files changed, so you can review and undo them.
A small program that checks whether code gives the answer you expect, and says pass or fail.
#Key Takeaways
- Claude Code is a helper that works on the files in your project folder, and you stay in charge of every change
- It follows a loop: look, propose, ask, act, check
- Looking is free, and changing asks for your yes in the default setup (check your version)
- A safe first session uses a copy tracked by git, asks before it changes, and ends with you reading the diff and running the test
- It helps most where you can check the result, and it can be wrong while sounding sure
#Quick Check
What does Claude Code do that a plain chat window in a browser does not?