What is Claude Code

Claude Code is an agentic coding tool from Anthropic. It is not an autocomplete plugin. You describe a task in plain language, and it goes off to read the relevant files, work out how the project fits together, plan a change, edit code across multiple files, run tests and commands, and then hand the result back for you to review.

The useful mental model is a colleague you can delegate to rather than a fast typist sitting next to you. Classic AI assistants predict the next line while you type. Claude Code decides which files to open, which commands to run and how to check its own work, and it adjusts when something fails. Your job shifts from writing every line to setting the goal and reviewing the outcome, which is why it handles multi-step, multi-file work well.

It started as a command-line tool and now runs on several surfaces: the terminal CLI, extensions for VS Code and JetBrains IDEs, a standalone desktop app, and a browser version that needs no local setup. According to the docs, every surface connects to the same engine, so your CLAUDE.md files, settings and MCP servers carry over between them.

Most surfaces require a Claude subscription or an Anthropic Console account. The terminal CLI, VS Code and JetBrains integrations can also use third-party model providers.

Key features

Works across the whole codebase. It searches for and reads the files it needs instead of only looking at the one you have open. Describe a feature and it plans the approach and edits every file involved. Paste an error and it traces the cause through the code before fixing it.

Takes on tedious engineering chores. Writing tests for untested modules, clearing lint errors across a project, resolving merge conflicts, bumping dependencies and drafting release notes are all good candidates.

Works directly with Git. It stages changes, writes commit messages, creates branches and opens pull requests. In CI it can review code and triage issues through GitHub Actions or GitLab CI/CD.

Connects to other tools through MCP. Using the open Model Context Protocol, Claude Code can read design docs in Google Drive, update Jira tickets, pull data from Slack or call your own internal tools.

Customisable with instructions, skills and hooks. A CLAUDE.md file in the project root is read at the start of every session, which makes it the natural home for coding standards, architecture decisions and preferred libraries. Repeatable workflows can be packaged as skills such as /review-pr, and hooks run shell commands before or after its actions, for example formatting after every edit.

Parallel work and automation. It can spawn sub-agents that tackle parts of a task at the same time. It also follows the Unix philosophy: pipe logs into it, run it non-interactively in scripts and CI, or schedule recurring jobs such as morning PR reviews and weekly dependency audits.

How to use it

On macOS, Linux or WSL, the recommended native install is:

curl -fsSL https://claude.ai/install.sh | bash

On Windows PowerShell, run irm https://claude.ai/install.ps1 | iex. Homebrew (brew install --cask claude-code) and WinGet are also supported. Native installs update themselves in the background; Homebrew and WinGet installs need manual upgrades.

Then start it inside a project:

cd your-project
claude

You will be asked to log in the first time. After that, give it a task such as “write tests for the auth module, run them, and fix any failures”. For one-off scripted jobs, use the non-interactive mode: claude -p "your instruction".

If you would rather stay out of the terminal, search for “Claude Code” in the VS Code extensions view to get inline diffs, @-mentions and plan review in the editor, or open claude.ai/code to work on repositories you have not cloned locally.

A few habits that help:

  1. Have it read before it writes. Start by asking how the repository is organised. Check its understanding before assigning changes.
  2. Include acceptance criteria. “Return a clear error code on failed login and add unit tests until they pass” works far better than “improve login”.
  3. Review the plan for big changes. For work that spans modules, ask for an approach first and agree on it before any code changes.
  4. Let Git be your safety net. Commit after each stage so you can roll back and review its changes in manageable pieces.

Use cases

  • Getting up to speed on an unfamiliar project: ask for a tour of the structure and core modules.
  • Medium-sized features: work that touches frontend, backend and tests at once, with you as reviewer.
  • Hard-to-find bugs: give it the error and reproduction steps and let it trace and verify the fix.
  • Team automation: PR review in CI, translating new strings, analysing failing builds on a schedule.
  • Long-running tasks: start a job on the web or in the cloud and check back later.

FAQ

How is it different from a code completion tool? Completion tools predict what you are about to type. Claude Code is task-oriented: it reads files, runs commands, edits several places and checks the result, more like a collaborator than an autocomplete.

Will it change files or run commands without asking? Claude Code has a permission system that can require your approval before editing files or running commands, and you can configure which actions need sign-off. See the official permissions documentation for the details.

Do I have to use the terminal? No. Besides the CLI there are VS Code and JetBrains extensions, a desktop app and a web version, and configuration is shared across them.

How do I get it to follow our team’s conventions? Put them in a CLAUDE.md at the project root; it is read at the start of every session. An existing AGENTS.md can be used as well.

Official website