← WRITING  ·  FIELD GUIDE

Claude Code is not another chat window.

It is a helper who can walk into a folder, read the plans, do the work, and show you the result. This is a first-day guide for someone who has only used Claude in a browser.

By Zion Boggan ·

The short version: install Claude Code, sign in, move into a project folder, type claude, and ask it to look around before asking it to change anything.

Think carpenter, not chatbot

A chat window can give you advice about a house. Claude Code can stand in the workshop with you. It can read the plans, find the right tool, make a change, run a check, and put the finished piece on the bench for you to inspect.

You are still the owner. Claude Code does not know what “done” means unless you tell it. You decide the job, the boundaries, and whether the finished work leaves the workshop.

The owner hands a job sheet to Claude Code, which works inside one folder and returns evidenceYOUjob sheetgoal and limitsCLAUDE CODEreads · edits · checksasks before risky workONE FOLDERplansfilestestsevidence
The terminal is the workshop door. You hold the job sheet and inspect the finished piece.
Vertical workshop flow for a phone screenYOUjob sheetgoal and limitsCLAUDE CODEreads · edits · checksasks before risky workONE FOLDERplans · files · testsevidence comes back
On a phone, the work flows top to bottom: owner, helper, folder.
You provideClaude Code doesYou approve
Goal and limitsReads files, edits, and runs allowed toolsChanges, evidence, and release
Project folderWorks against the files in that folderAnything public, costly, destructive, or hard to undo

Five minutes to the first session

1. Install it

Use the command for the terminal you are actually using. Installation paths can change, so check the official quickstart and installation guide if a command fails.

# macOS, Linux, or WSL
curl -fsSL https://claude.ai/install.sh | bash

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

# Homebrew
brew install --cask claude-code

# Windows winget
winget install Anthropic.ClaudeCode

Then check the installation:

claude --version

2. Sign in

Start claude. The first run opens a sign-in flow. Use the account you intend to use for this work. Keep passwords and tokens out of project notes.

3. Open the right folder

cd path/to/the/project
claude

The folder is the workshop. Starting one level too high can expose unrelated files. Starting in the wrong folder can make a correct answer useless.

Screenshot 01 · real capture

Claude Code first launch in a neutral demo receipt folder
The first launch: what the terminal looks like, where the prompt is, and what appears before the first request.

Read the status line

The bottom of the session is a small dashboard. The exact labels change between versions, but learn to look for four things before you ask for a long run.

Read thisAsk yourselfBeginner move
Working folderWhere am I, and what can this session reach?If the path is wrong, stop and open the smallest correct folder.
Context usageHow much of the session's memory is full?When it is filling and the helper repeats or forgets limits, finish the current check and start fresh.
Usage windowWhat have I got left for a long run?Save a large autonomous task when the remaining allowance is low.
ModeWill it ask before acting, or act and report?Use approval mode for unfamiliar or irreversible work. Use autonomous mode only inside a prepared boundary.

The folder is the blast radius. Context is the attention span. The usage figures are the fuel gauge. The mode tells you whether the next move comes back to you first. This one line makes context management visible before a mistake becomes expensive.

Your first hour, screen by screen

After installation, your terminal will show a prompt. On macOS or Linux it often ends in $. In PowerShell it may begin with PS. The exact decoration does not matter. It is the line waiting for your instruction.

  1. Type claude --version. You should see a version number. If you see “command not found,” close and reopen the terminal, then run the installer again. Do not paste a password into the terminal.
  2. Type cd followed by the folder you want to work in. You can drag a folder onto many terminal windows to insert its path. Type claude. A sign-in page may open in your browser.
  3. When the session opens, type “Read the folder and tell me what kind of project this is. Do not edit anything.” Wait for the file list and explanation. This is your chance to notice that you opened the wrong folder.
  4. Ask for a plan only. The response should name files, small steps, and checks. If it proposes publishing, deleting, changing credentials, or touching a different folder, say no and narrow the job.
  5. Give it one small change. Watch the permission question. Approve a read or a narrow edit you understand. When it says the work is complete, ask for the diff and the test result before deciding.
If the screen does not look like this: stop and copy the exact message into a separate note. Do not keep approving prompts to make the discomfort go away. Ask Claude Code to explain the message without changing anything.

Give it a job sheet

A good first request has four parts:

PartPlain-language example
GoalMake the receipt page show the customer’s order number.
BoundsOnly edit the receipt feature. Do not change billing or deployment settings.
EvidenceShow the diff and run the receipt test.
Stop pointStop before commit or publish and ask me to review.
Read the relevant files first. Tell me what you found and make a plan.
Only edit the receipt feature.
Do not commit, publish, delete, or change credentials.
When finished, show the diff and the test result. Stop for my approval.

If a folder contains rules for the project, they may be kept in a CLAUDE.md file. Treat it like a job-site notice: useful for stable instructions, unsafe for secrets and fast-changing facts.

Teach it how you like to work

Preferences are instructions, not hopes. The helper has no idea how you like things done until you say so: your conventions, your tone, what to check before calling a job finished, and what never to touch. Write those preferences down once instead of repeating them every session.

User and project instructions shape a focused session and its finish lineUSER LEVELtone · habits · toolsPROJECT LEVELcommands · conventionsFOCUSED SESSIONright foldershort current contextFINISH LINEproofstop point
Personal preferences and project rules shape the session. The brief still supplies the job's finish line.
Vertical context and preferences flow for a phone screenUSER LEVELtone · habits · toolsPROJECT LEVELcommands · conventionsFOCUSED SESSIONright foldershort current contextFINISH LINEproof · stop point
Keep the inputs short and the finish line visible.

Use the project notice for shared work

A CLAUDE.md in the project folder is the job-site notice for that project. Put shared conventions there: where the important files live, which command checks the work, how the code is formatted, and what the helper must not change. The project version can be committed so everyone gets the same starting point. It can live at ./CLAUDE.md or ./.claude/CLAUDE.md.

Use the user level for your habits

Personal preferences that apply everywhere belong in ~/.claude/CLAUDE.md. That is a good place for a preferred writing tone, a favorite local tool, or a habit such as “show the diff before saying a change is done.” If a preference is only for you and one project, use a local project note such as CLAUDE.local.md and keep it out of version control. The official memory guide explains the available scopes.

Keep instructions stable, short, and safe

Write down facts that should remain useful: “run the receipt test before reporting done” is better than “the test was green yesterday.” Never put passwords, tokens, private exports, or other secrets in an instruction file. Do not put fast-changing facts there either. Written rules do not expire when the fact does, so a note describing last month's setup can confidently mislead the next session. Keep the file short, keep it current, and delete more than you add.

# CLAUDE.md
- Run `node test/receipt.js` before reporting done.
- Keep money formatting changes separate from arithmetic fixes.
- Show the diff and the exact file path.
- Stop before commit, publish, or deletion.

Know when context has gone soft

Context is finite. A long session accumulates plans, files, command output, and corrections until the useful signal thins out. Start fresh for a genuinely new task. Watch for symptoms: it repeats itself, loses an earlier boundary, forgets the requested tone, or drifts away from the brief. Continuing is not always progress.

Scope the folder and the context together

Opening one level too high pulls unrelated files into the session. That dilutes attention and can expose work the task never needed. The folder boundary is both a safety control and a focus control. Start in the smallest folder that contains the job, then add another directory only when you can explain why it is needed.

Give every session a finish line

Preferences shape how the work happens, but the written brief decides what done means. State the goal, bounds, proof, and stop point. If the helper cannot point to the evidence or says part of the job is unverified, the finish line has not been reached.

Use a small operating pattern

You do not need a complicated system to get the useful part of a larger setup. Keep one main session as the foreman: it holds the plan, asks the questions, and makes the judgement calls. Give narrow mechanical work to a smaller helper or a separate short session. Fetching a page, listing files, or extracting fields does not need your biggest model or your main thread.

A main session coordinates narrow helpers and heavy work, then checks proof before a human gateMAIN SESSIONplan · judge · routekeeps the briefSMALL HELPERfetch · list · extractRIGHT MACHINEheavy build or renderPROOFfile · output · testchecked where it landedHUMAN GATErelease or stopno answer means no
The main session coordinates. Narrow helpers do bounded work, proof comes back, and a person decides anything hard to undo.
Vertical beginner operating pattern for a main session, helpers, proof, and a human gateMAIN SESSIONplan · judge · routekeeps the briefSMALL HELPERfetch · list · extractRIGHT MACHINEheavy build or renderPROOFfile · output · testHUMAN GATErelease or stop
At beginner scale: coordinate, delegate a small piece, verify the result, then decide.

Write the rule once

Standing preferences belong in the project or user instruction file, not in your memory. If you have to type “show the diff and do not publish” every afternoon, write it down once and keep it current.

Enforce the hard stop

Use permissions, deny rules, or hooks for actions that must never happen. A request saying “please do not delete” is guidance. A rule that blocks deletion before it runs is a boundary. Review it, because a hook can outlive the fact it was built around.

Keep irreversible work human

Anything destructive, expensive, or outward-facing waits for a person. A phone approval is still a real gate: if the owner does not answer before the timeout, the safe result is no action. The helper can prepare the release and show the proof, but it does not get to decide that the release happened.

Believe the artifact, not the report

When a helper says “done,” ask where the file is, what command produced it, and what output proves it worked. Then check the path yourself. A real session once reported a document written when the file was not on disk. Another declared a product absent because a copy error was swallowed. The fix is not a more confident summary. It is a path, a size, and a direct check.

Move heavy work away from the desk you are using

If a task is a long render, a large build, or a deep re-index, route it to a machine meant for that work instead of making the laptop that holds your session do everything. If the helper cannot prove the other machine is safe and available, it should wait rather than compete for the same resource.

This pattern scales down cleanly. Start with one session and one folder. Add a narrow helper only when the work is mechanical, add a separate machine only when the task is genuinely heavy, and keep the proof and final decision in your hands.

Permissions are the key ring

Claude Code may ask to read a file, edit a file, or run a command. That is the moment you decide whether the tool belongs on this job.

Permission key ring from reading to publishingREADlook aroundEDITchange a fileRUNuse a toolPUBLISHleave the shop
Hold back the outer rings. You can approve a read while keeping edit, run, and publish closed.
Vertical permission key ring for a phone screenREADlook aroundEDITchange a fileRUNuse a toolPUBLISHleave the shop
Approve the inner ring first. You hold back publishing until the work is inspected.
  1. Read the request.
  2. Check whether it stays inside the project.
  3. Be cautious with credentials, deletion, deployment, payments, or another machine.
  4. Approve only what you understand.
  5. Inspect the result with a diff, test, report, or file list.

Use Shift+Tab to cycle permission modes. More automation is useful after the boundaries are clear, not because a prompt is inconvenient.

Screenshot 02 · real capture

Claude Code showing a plan, an edit diff, and a permission question in a neutral demo receipt folder
This real capture combines the plan, the proposed edit, and the permission question in one screen. It is one moment in the session, not two separate moments.

When you want it to keep going

Approving every step is safe and slow. Full autonomy is fast and has a real blast radius. The answer is not to pick one forever. Shrink the blast radius until the amount of autonomy fits the job.

Autonomous operation means that you pre-authorise a bounded set of actions so the helper can work through a task without stopping at every small step. It does not mean giving it a whole computer and hoping a polite instruction survives a long session.

Autonomous operation contained by a folder boundary, allow and deny rules, proof, and a human gateONE WORKSPACEALLOWread · edit · testonly what this job needsDENYsecrets · publish · deleterules block before actionHUMAN GATEproof packetrelease or stop
Autonomy is useful inside a small box. The folder and deny rules limit the work, while a human still decides what leaves it.
Vertical blast radius diagram for safe autonomous operationONE WORKSPACEonly the needed filesno credentials insideALLOWread · edit · testDENYsecrets · publish · deleteHUMAN GATEproof, then release
On a phone, the safety story is simple: small workspace, explicit rules, human gate.

Restrict the workspace first

Make one folder containing only what the task needs. Keep credentials, private exports, and unrelated projects outside it. The folder is the boundary: if the helper cannot reach a file, it cannot alter that file.

Use allow and deny rules

Pre-authorise the tools the task genuinely needs and deny the rest. For a small receipt fix, that might mean reading the source, editing one file, and running one local test. It does not include changing credentials, deleting originals, publishing, or reaching another machine. This turns permission into a configuration decision made once while calm, rather than a judgement call made repeatedly while impatient.

Put the hard stops in hooks

A hook that blocks an action before it runs is stronger than an instruction asking nicely. Keep those rules few and factual. One real guard blocked a container from starting because a note said it was deliberately switched off. The note was months stale, the container had been running for weeks, and the guard still fired. A hook encodes a fact. It does not know when that fact expires. Review enforced rules or they become a second source of stale truth.

Give the helper a written brief

Write the goal, the bounds, the evidence that proves the goal, and the point where the helper must stop. For example:

Goal: fix the receipt total when an item quantity is greater than one.
Bounds: edit only the receipt function and its focused test.
Proof: run the test with quantities 1 and 2, then show the diff and file path.
Stop: do not change money formatting, commit, publish, or touch another folder.

An agent left to infer the finish line will invent one. A short brief gives it somewhere safe to stop.

Build in failsafes

Back up before anything destructive and say how to roll it back. Prefer a copy, a patch, or a reversible move over deletion. For anything outward-facing, expensive, or difficult to undo, route the decision back to a person. Speed is useful only while recovery remains possible.

Demand regression and proof

Autonomy often fails quietly. A build can pass because the changed directory is outside the compiler's source list. An agent can report that it wrote a document while the file is missing on disk. A copy error can be swallowed so an existing product is reported as absent. The habit that catches all three is simple: verify the exact artifact on disk yourself, then exercise the changed behavior with a real case. Ask for command output, not only a summary. A green check is not proof that the change was used.

Teach it to call for help

Tell the helper to stop when it is uncertain, outside the folder, missing evidence, or facing a destructive choice. Ask it to say what is uncertain and what decision it needs. “This part is unverified” is a useful result. Guessing is not.

Use autonomous mode for bounded, repeatable work with a clear proof path. Return to step-by-step approval when the task touches secrets, money, production, another person's data, or a rule you cannot explain.

The daily loop

The daily Claude Code loopASKgoal + boundsPLANfiles + stepsDOedit + runCHECKdiff + testDECIDEkeep or undo
The chat is only the conversation. The loop is the work.
Vertical daily work loop for a phone screenASKgoal + boundsPLANfiles + stepsDOedit + runCHECKdiff + testDECIDEkeep or undo
One step per screen width keeps the work legible.

For a larger job, ask for a plan only. Let Claude list the files, the smallest safe change, and the verification. Then approve the work one step at a time.

Make a plan only. Do not edit files yet.
Read the relevant files, list the smallest safe change, and tell me how you will verify it.

Screenshot 03 · real capture

Claude Code showing a plan before editing a neutral demo receipt project
A plan is produced before any edit: the files, smallest steps, and verification are visible in the session.

Four traps from real work

Three different failures hidden inside a green statusCHANGEDthe file existsbut nobody exercised itWORKINGthe path runsbut the user cannot see itCURRENTthe record is freshbut it describes another system
Green is a status color, not a proof packet.
Vertical three states hidden inside a green statusCHANGEDfile existsnot exercisedWORKINGpath runsnot visibleCURRENTrecord is freshwrong system
A green status still needs artifact, behavior, and observation.
What looked greenWhat was actually trueBetter check
The build passed.The changed directory was outside the compiler’s configured source list.Confirm scope, then run a direct type check or user-path test.
The dashboard was current.It and the live router had current records but zero shared item identifiers.Use the component that controls the action and reconcile records by ID.
The transcript was quiet.The desktop worker was still actively working.Watch process, artifact, service, or state signals that belong to the work.
The board said files existed.The files were on a different machine and had not been checked at their real path.Check the exact artifact, size, receipt, and user-facing result.
Ask for a proof packet: show me the exact artifact, the check that exercises it, and the result from the place a real user will use it. If any part is unavailable, say the job is unverified.

Small commands worth remembering

CommandUse
claudeStart a session in the current folder.
claude -cContinue the latest conversation in that folder.
/helpShow commands inside a session.
/clearStart fresh when the conversation has too much history.
/exitLeave the session.
claude doctorCheck the installation when something seems wrong.

Good first projects

Point Claude Code at a folder you understand and start with a read-only request. Try a copy or sample before an important original.

  • “Read these customer FAQs and make a source-linked answer sheet. Do not invent policies.”
  • “Group these research notes by argument and save an outline. Do not write final claims.”
  • “Inspect these logs, summarize recurring failures, and propose checks. Do not restart anything.”
  • “Sort these receipts by month, show the proposed moves, and do not delete originals.”

Five rules to keep

  1. Start in the right folder.
  2. Let Claude inspect before it edits.
  3. Put boundaries in the request and stable project notes.
  4. Ask for evidence: a diff, test, list, or screenshot.
  5. Keep final approval for anything public, destructive, expensive, or hard to undo.

Screenshot 05 · real capture

Claude Code showing a reviewed diff and verified receipt total in a neutral demo project
The final decision: the owner accepts the verified result, requests another change, or rejects it without handing over the release.

The shift is simple: stop asking what to type into a chat window and start handing over a real job with a clear bench check.