Why Engineers Adopted It

Claude Code meets engineers where they already work. The terminal is on every machine, and the IDE extensions bring the same agent into the editor without a new workflow to learn.

It also closes the loop that autocomplete leaves open. It runs a command, reads the error, changes the code and runs the command again, all in one session. In large codebases it searches with grep, glob and targeted file reads instead of relying on a pre-built index. It is scriptable for CI, extensible through the Model Context Protocol (MCP), and governed by a permission system that security teams can configure.

It also sits alongside other tools. The Pragmatic Engineer's 2026 survey found that several teams who were heavy Cursor users added Claude Code and kept Cursor too.

The Building Blocks

ComponentWhat it does
CLI runtimeThe claude session: conversation, context and permission state
ToolsRead, Edit, Write, Grep, Glob, Bash, WebFetch and the Agent tool for subagents
CLAUDE.mdProject memory loaded every session: build commands, conventions, rules
SubagentsSpecialists with their own prompt, tool list and context window
Skills and pluginsPackaged instructions, commands, agents and hooks a team can share
HooksShell commands that run before or after tool calls and at session events
MCP serversConnections to GitHub, issue trackers, databases and browsers
Permission modesHow much Claude may do without asking, from plan-only to auto
Terminal VS Code JetBrains Desktop / Web Claude Code agent Files Shell, tests Subagents MCP servers
Diagram 1: Every surface drives the same agent

How the Agent Loop Works

Each task runs through the same cycle. Claude gathers context from CLAUDE.md, your prompt and the files it searches. It plans, checks its permissions, acts with tools, then verifies the result by running tests, a linter or the build. If verification fails, it reads the output and goes round again.

Gather context Plan Permission Act with tools Verify Report, commit tests fail: loop
Diagram 2: Context, plan, permission, act, verify

Permission modes decide how much happens without you. Press Shift+Tab in a session to cycle through them. Recent versions start interactive sessions in auto mode, where a classifier reviews each action, lets safe ones run and blocks risky ones such as destructive git commands.

Asks more Asks less Planreads only Manualasks each time Accept editswrites files Autoclassifier Bypasssandbox only
Diagram 3: Permission modes, from read-only planning to full bypass

Claude Code in the Terminal

# start, continue, resume
claude                              # interactive session
claude "fix the build error"        # start with a prompt
claude -c                           # continue the last session here
claude -r                           # pick a past session

# choose how it works
claude --model opus                 # pick a model
claude --permission-mode plan       # research and plan, no edits

# one-shot and pipes
claude -p "explain src/auth.ts"
cat build.log | claude -p "find the root cause" > cause.txt

Inside a session, these commands do most of the work:

CommandUse it to
/initGenerate a starter CLAUDE.md
/clear, /compactReset context, or summarise a long session
/rewindRoll code and conversation back to a checkpoint
/code-reviewReview your changes for correctness bugs
/goalKeep Claude working until a condition holds
/usageSee session cost and plan limits
/doctorDiagnose and fix setup problems

Prefix a line with ! to run a shell command directly, and type @ to reference a file.

Claude Code in Your IDE

VS Code, Cursor and other forks

The extension needs VS Code 1.94 or later. It adds a side panel where you review and edit Claude's plan before accepting it, accept or reject each change as an inline diff, and keep several conversations open in tabs. Claude sees your selected text automatically. Cursor and other VS Code forks such as Kiro install the same extension, through the Open VSX registry where needed.

JetBrains IDEs

The plugin works with IntelliJ IDEA, PyCharm, Android Studio, WebStorm, PhpStorm and GoLand. It runs the claude CLI in the IDE terminal, opens Claude's changes in the native diff viewer, shares your selection, and lets Claude read the IDE's inspection results such as lint and syntax errors.

Every other editor

Vim, Neovim, Emacs and Zed users can run claude in any terminal next to the editor. From an external terminal, /ide connects a session to a running VS Code or JetBrains window.

Tutorials for Beginners

BeginnerTutorial 1: Install and run your first session

1. Install. Pick the command for your system.

# macOS, Linux, WSL
curl -fsSL https://claude.ai/install.sh | bash
# Windows PowerShell
irm https://claude.ai/install.ps1 | iex
# or a package manager
brew install --cask claude-code
winget install Anthropic.ClaudeCode

2. Check it. Open a new terminal and run claude --version.

3. Log in. Run claude inside a project folder and follow the browser prompt. Any paid Claude plan or a Claude Console account works.

4. Ask before you change anything. Type what does this project do? or explain the folder structure. Claude reads the files it needs.

5. Make a small change. Try add input validation to the signup form. Review the diff, then ask commit my changes with a descriptive message.

6. Learn the escape hatches. Esc stops Claude mid-task, /rewind undoes edits, and Shift+Tab switches to plan mode when you want a proposal first.

BeginnerTutorial 2: Work from VS Code or JetBrains

VS Code: press Cmd+Shift+X (Mac) or Ctrl+Shift+X (Windows, Linux), search for "Claude Code" and install it. Open the panel from the Command Palette by typing "Claude Code". Select a few lines and press Option+K / Alt+K to add a reference like @app.ts#5-10. Ask for a change, then accept or reject each diff. Cmd+Esc / Ctrl+Esc moves focus between the editor and Claude.

JetBrains: install the CLI from Tutorial 1, then the Claude Code plugin from the JetBrains Marketplace, and restart the IDE. Press Cmd+Esc / Ctrl+Esc to launch Claude. Changes open in the IDE's diff viewer. If you prefer an external terminal, run claude there and type /ide.

BeginnerTutorial 3: Teach Claude your project

Run /init. Claude scans the repository and writes a CLAUDE.md. Edit it by hand, because short, specific rules work better than long ones:

# CLAUDE.md
## Commands
- Test: pytest -q
- Lint: ruff check . && mypy src
## Rules
- Use the repository pattern in src/db/
- Never edit files in migrations/ by hand
- Run the tests before every commit

Commit the file so your team shares it. Run /memory later to edit it from inside a session.

Tutorials for Experts

ExpertTutorial 4: Build a subagent and a hook

A subagent works in its own context window, so the main session stays focused. Create .claude/agents/security-reviewer.md, or ask Claude to create it:

---
name: security-reviewer
description: Reviews diffs for injection, auth and secrets issues. Read-only.
tools: Read, Grep, Glob
---
Review the current diff. Report file, line and a suggested fix.
Do not edit files.

Then prompt: add rate limiting to /login, then have the security-reviewer subagent check the diff. Add a hook in .claude/settings.json so every edit gets formatted:

{
  "hooks": {
    "PostToolUse": [{
      "matcher": "Edit|Write",
      "hooks": [{ "type": "command", "command": "npx prettier --write ." }]
    }]
  }
}

ExpertTutorial 5: Run parallel background agents

Agent view (claude agents) lists every background session, grouped into needs input, working and completed. Each background session moves into its own git worktree under .claude/worktrees/ before it edits, so parallel agents never write to the same checkout.

# dispatch from your shell
claude --bg --name flaky-test "investigate the flaky SettingsChangeDetector test"
claude --agent security-reviewer --bg "review PR 1234"

# watch and manage
claude agents          # one screen for every session
claude logs <id>       # recent output
claude attach <id>     # take over in this terminal

Inside a session, /bg sends the current conversation to the background and /fork copies it into a new one. Pair a background agent with /goal all tests in tests/api pass and it keeps working until that condition holds.

claude agents Agent: testsworktree A Agent: billingworktree B Agent: reviewworktree C Working Needs input Completed
Diagram 4: Background agents, one worktree each, tracked in agent view

ExpertTutorial 6: Automate in CI with headless mode

claude -p runs one task and exits with a status code your scripts can check. Add --bare in CI so the run ignores hooks, plugins and CLAUDE.md on the host machine and behaves the same everywhere. Scope tools tightly:

# commit staged work with only the git commands it needs
claude -p "look at my staged changes and create a commit" \
  --allowedTools "Bash(git diff *),Bash(git status *),Bash(git commit *)"

# unattended job: classifier reviews actions, nothing waits for a human
claude --bare -p "update dependency pins and run the tests" \
  --permission-mode auto --permission-prompts none --output-format json

For pull requests, run /install-github-app in a session. It installs the GitHub app and adds a workflow using anthropics/claude-code-action@v1, after which anyone can mention @claude in an issue or PR.

PR opened Action runs Review posted Human merges
Diagram 5: Claude Code in a pull request pipeline

ExpertTutorial 7: Connect external tools with MCP

claude mcp add --transport http notion https://mcp.notion.com/mcp
claude mcp login notion     # authenticate from the shell
claude mcp list             # confirm it connected

Each MCP server adds tool definitions to the context, so connect only what the project uses. /usage shows which servers, skills and subagents drive your plan limits.

Working in Large Repositories

In a codebase over 100,000 lines, split the work into phases. Curate CLAUDE.md, with smaller CLAUDE.md files in big subfolders. Start in plan mode and ask Claude to map every usage of what you are changing before it edits. Work one module at a time and clear context between phases. Give each module its own background agent and worktree, and let tests and hooks verify every edit before a human reviews the pull requests.

What Developers Say

Survey responses and community threads point to the same strengths: multi-file refactors that update imports, types and tests in one pass, a terminal workflow that fits existing habits, and MCP connections to databases and internal tools. The Pragmatic Engineer survey found that Director-level respondents and above were roughly twice as likely as less senior engineers to name it a tool they love.

The most common complaint is usage limits. Others are context taken up by MCP servers before work starts, and long sessions that lose detail after repeated compaction.

“Claude Code is the best coding tool I've ever used, for the 45 minutes a day I can actually use it.”A widely upvoted Reddit comment, as quoted in Morph's 2026 roundup of Reddit feedback

Anthropic's own study of about 400,000 Claude Code sessions from October 2025 to April 2026 found a working split: people made about 70% of planning decisions and Claude made about 80% of execution decisions. Understanding the problem domain predicted success more than coding skill did, and novices abandoned sessions at three times the rate of intermediate or expert users. That gap is why the beginner tutorials above start with questions before changes.

Adoption by the Numbers

39%of 15,000+ developers use it at work (JetBrains, mid-2026), up from 18% in January
31%call it their main AI coding tool (JetBrains, mid-2026)
71%of regular AI agent users use it (Pragmatic Engineer, early 2026)
$2.5B+run-rate revenue, February 2026 (Anthropic)
52.9Mnpm downloads in 30 days to 6 Oct 2026
149,665GitHub stars, 7 Oct 2026

In the JetBrains survey's mid-2026 wave, Claude Code led workplace use by a wide margin:

Use at work, JetBrains survey, mid-2026 (%) Claude Code39 GitHub Copilot21 Codex16 Cursor12
Chart 1: Self-reported use at work, 15,000+ respondents, May to July 2026
Most loved tool, Pragmatic Engineer, 2026 (%) Claude Code46 Cursor19 GitHub Copilot9
Chart 2: 906 respondents, 27 January to 17 February 2026
Claude Code run-rate revenue (USD) $0.5BAug 2025 $1BNov 2025 $2.5B+Feb 2026
Chart 3: Run-rate milestones reported by Anthropic

Anthropic has not published a total user count. On 12 February 2026 it said weekly active users had doubled since 1 January. The survey figures are self-reported and use different samples, so read them as direction rather than exact market share.

References

  1. Claude Code overview, Anthropic documentation
  2. Quickstart, Anthropic documentation
  3. Use Claude Code in VS Code, Anthropic documentation
  4. JetBrains IDEs, Anthropic documentation
  5. Permission modes, Anthropic documentation
  6. Agent view, Anthropic documentation
  7. Subagents and hooks, Anthropic documentation
  8. Run Claude Code programmatically, Anthropic documentation
  9. Model Context Protocol, Anthropic documentation
  10. What's new, Anthropic documentation
  11. AI Tooling 2026, The Pragmatic Engineer
  12. Claude Code Statistics 2026, Gradually.ai (JetBrains survey, revenue, npm and GitHub figures)
  13. Anthropic research on Claude Code sessions, Blockchain.News, 16 June 2026
  14. Claude Code on Reddit: What Developers Actually Say, Morph