Claude Code: A Complete Practical Guide
What Claude Code is and how it differs from chatting with a model, who it suits, what it actually does inside a project, how context, tools and permissions work, and where to start.
All articles in the guide Claude Code · 13
Claude Code is a development agent that runs in your terminal, inside your project. The difference from a chat window is fundamental: chat answers with text, an agent opens files, edits them, runs commands and reads the result.
What Claude Code is and how it differs from chat
In a chat you paste code into a box, get an answer and paste it back. The model cannot see the rest of the project and does not know whether what it wrote compiles.
Claude Code works differently. It has tools: reading files, searching the repository, editing, running shell commands. It locates the file, makes the change, runs the tests and, if they fail, reads the output and keeps fixing. The loop repeats until the task is done or it gets stuck.
The practical consequence: output quality depends less on prompt wording than on what the agent can verify by itself. “Fix the failing test” goes well because success is unambiguous. “Make it nice” goes badly for the same reason.
Who it suits and who it does not
A good fit:
- Developers with an existing project. The value is highest where dozens of files are involved: refactors, migrations, repository-wide edits.
- Anyone writing routine code. Tests, glue, scripts, parsers - work you know how to do and would rather not do by hand.
- Solo developers and founders with nobody to delegate to.
A poor fit:
- People who will not read the result. The agent is confidently wrong sometimes. Without review you get code that merely looks right.
- Projects with no tests and no git. No way to verify and no way to roll back is the worst possible setup.
- Tasks with no clear definition of done. Design, product calls and architectural forks stay with you.
What it actually does in a project
- Find the cause of a bug from a symptom, tracing the code back from the failure point.
- Refactor across the repository - rename, extract, change a signature and fix every call site.
- Write tests for existing code and run them.
- Explain an unfamiliar codebase - how a module works, where data flows, what lives where.
- Do the routine plumbing: migrations, configs, CI, build scripts.
- Talk to external systems through MCP servers - a database, an API, an issue tracker.
What it cannot do: make a product decision for you, or guarantee that what it built is right. Verification stays on your side.
How the work is structured: context, tools, permissions
Three things decide whether the agent is useful.
Context. The model has a limited window, and code, command output and conversation history do not all fit. The more noise lands in context, the worse the answers get. Hence the practice of short, single-task sessions rather than one endless one. Details in the article on limits and spend.
Tools. The set of actions available to the agent. Files and shell are the baseline. They extend through MCP servers and through skills, which describe repeatable procedures specific to your project.
Permissions. Every action the agent takes really happens. Command execution has modes: ask each time, allow from a list, allow everything. The last mode belongs in an isolated environment only - covered separately in sandbox your coding agent.
Where to start
A sensible order:
- Install and authenticate, and separately sort out access from Russia if that applies.
- Connect an API key or a subscription.
- Learn the CLI commands and modes.
- Understand where context goes and how to pick a model for the task.
- Then skills, subagents and MCP.
Comparing tools before you start: there is a breakdown of Claude Code versus Cursor and a survey of alternatives. Rolling it out to a team: rules, review and security.
When to bring in a person
An agent speeds up someone who already knows what they are doing. It does not replace the decision about how a system should be built. If the goal is a working product rather than an isolated script, the value sits in the architecture and in what you deliberately chose not to automate.
That is the work I do on projects: automations and AI products where the agent is a tool inside the process, not the process itself. Details on the services page.
Neighbouring guides
These four topics describe one ecosystem, and each on its own solves half the problem.
- AI agents - how an agent is built at all: tools, memory, the loop, and what breaks on the way to production.
- MCP servers - how to give an agent access to your data and systems in one way that works across tools.
- n8n - for when the sequence is known in advance and no agent is needed: workflows are cheaper, more predictable and easier to debug.
In this guide
- Claude Code in Russia: Access, Payment and LimitsWhat actually fails when using Claude Code from Russia, which payment routes remain, how to tell an access problem from a configuration error, and what the service rules mean for your account.
- Claude Code API Key: Where to Get One and How to Connect ItWhere the Claude Code API key is created, where to store it, how your own key differs from a subscription in cost and predictability, and what to do about a 401.
- Claude Code CLI: Commands, Flags and ModesHow Claude Code starts, what the permission modes actually mean, which flags earn their keep in daily work, and what belongs in project configuration instead of being retyped.
- How to Install Claude Code on Windows, macOS and WSLSystem requirements, installing Claude Code on macOS, Linux, Windows and WSL, the first run and authentication, plus the install errors people actually hit and what they mean.
- Claude Code Skills: What They Are and How to Write OneWhat a skill is in Claude Code, what it consists of, how it differs from a prompt and from the project description file, and how to write a working skill step by step.
- Claude Code Limits: Context, Spend and How to SaveThe three different limits in Claude Code, where context actually goes, which techniques really cut spend, and how to notice a limit approaching before work stops.
- Claude Code or Cursor: An Honest ComparisonHow a terminal agent and an AI editor differ at the level of working model, where Claude Code wins, where Cursor wins, and how to pick per task rather than forever.
- MCP Servers in Claude Code: Connecting and ConfiguringWhy an agent needs MCP servers, how to connect one to Claude Code, how to verify it is actually visible, and the errors people hit most often when wiring them up.
- Subagents in Claude Code: Working in ParallelWhat a subagent is, how it differs from the main session, when delegation saves context and time and when it only gets in the way, and how to check work you did not watch happen.
- Models in Claude Code: Which One to Pick per TaskHow model tiers differ in agent work, what to use for routine and what for hard problems, how the choice affects spend, and why the most capable model is not the default answer.
- Alternatives to Claude Code: What Else Is Out ThereThe categories of agentic development tools, how terminal agents differ from IDE agents and cloud agents, and the criteria to choose by instead of reading rankings.
- Claude Code for Teams: Rules, Review and SecurityWhat must never be delegated to an agent on a team project, how to set up sandboxing and permissions, how reviewing agent code differs, and which configs belong in the repository.
FAQ
Is Claude Code free?
No. You either use a Claude subscription or your own API key billed per token. The tool always talks to a paid model, so there is no free tier. With a key you pay actual usage; with a subscription you pay a fixed amount within usage limits.
Do I need to know how to code to use it?
Formally no, practically yes. It writes the code, but you decide what is correct. Someone who cannot read a diff and understand what changed will quickly own a project they do not control. The minimum is being able to read code and use git.
How is Claude Code different from Cursor?
Cursor is an editor with AI built in: you work inside a file and see changes in the editor. Claude Code lives in the terminal and works on the project as a whole - it finds files, runs commands and reads test output itself. The first is better for local edits, the second for work that spans the repository.
Done for you
Need the result, not the agent setup? I will build your MVP
I work in Claude Code every day and take products all the way to users.
from $1,500 · 1 to 2 weeks