Claude Code is an agentic AI assistant that executes multi-step engineering tasks autonomously in your terminal—reading and writing files, running commands, searching codebases, and iterating on output based on natural language instructions. It shifts the paradigm from question-answering to task completion, letting you describe desired outcomes while the model figures out and executes the necessary steps.
Claude Code is an agentic AI coding assistant that runs directly in your terminal, built by Anthropic on top of the Claude family of large language models. Unlike chat-based AI tools that simply answer questions, Claude Code can autonomously execute multi-step engineering tasks: it reads and writes files, runs shell commands, searches codebases, calls external tools, and iterates on its own output — all in response to natural language instructions you give it.
This document maps the territory of Claude Code as a whole, giving you a mental model of what it is, what it can do, and how its parts fit together before you dive into individual features.
Engineering work involves long chains of small, tedious decisions: finding the right file, understanding an unfamiliar codebase, writing boilerplate, running tests, interpreting errors, and making corrections. Traditionally, a developer manages every link in that chain manually. Claude Code acts as a capable delegate — you describe the outcome you want in plain English, and Claude Code figures out and executes the steps needed to get there.
The key shift is from question-answering to task completion. You are not asking Claude Code "how do I refactor this function?" — you are telling it "refactor this function to use async/await and make sure the tests still pass," and it does it.
Claude Code is built around a tool-use loop. At each step, the model decides which tool (if any) to invoke, executes it, observes the result, and then decides on the next action. This continues until the task is complete or the model determines it needs your input.
The agentic tool-use loop: Claude reasons about your prompt, calls tools, observes results, and loops until the task is complete or it needs clarification.
Codebase understanding — Claude Code can index and search large repositories, read relevant files, and build a contextual understanding of unfamiliar code before making changes. You do not need to manually paste code into a chat window.
File editing — It writes, creates, and deletes files directly on disk. Changes are made in your actual working directory, so they are immediately usable.
Command execution — Claude Code can run shell commands: compiling code, running test suites, executing linters, calling CLIs, and inspecting output. It interprets the results and adjusts its approach accordingly.
Multi-step task planning — For complex requests, it decomposes the work into steps, executes them in sequence, and handles errors mid-task without requiring you to intervene at every step.
Natural language interaction — You communicate in plain English (or other natural languages). No special syntax, flags, or prompt templates are required.
Claude Code supports two main usage patterns:
Both modes share the same underlying model and tool-use capabilities; the difference is only in how input is delivered and whether human feedback is expected during execution.
Claude Code is a terminal application installed globally via npm. It integrates naturally into a developer's existing environment:
git, npm, pytest, cargo) that are already installed.Because it operates on real files and runs real commands, Claude Code produces actual changes, not just suggestions. This makes it more powerful than a chat assistant but also means you should review its outputs, especially for large or high-stakes changes.
Claude Code is less suited for tasks that require live interaction with a running UI, tasks that need real-time data outside its tools, or tasks where the requirements are so ambiguous that no autonomous action is safe.
The entry points from here are:
Each of these topics has its own dedicated document.