Claude Code: установка, настройка и работа с терминальным агентом для программирования

Введение

Claude Code — агент для программирования от Anthropic из того же семейства, что и Claude Opus 5.5. Он читает кодовую базу, правит файлы, запускает команды, работает с git и подключается к внешним инструментам по MCP. Он работает в терминале, в расширениях для VS Code и JetBrains, в настольном приложении и в браузере, и все эти поверхности используют одну и ту же конфигурацию проекта.

Это руководство — рабочий справочник: установка, вход, файлы памяти, разрешения, субагенты, навыки, MCP и приёмы, которые окупаются каждый день. Файлам агентов посвящён отдельный разбор — Субагенты Claude Code; сравнение с OpenCode бок о бок — в статье Создание ИИ-агентов.

Установка

На macOS, Linux и WSL рекомендуется нативный установщик: он обновляется сам в фоне:

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

В Windows используйте PowerShell или CMD — в зависимости от вашей оболочки:

irm https://claude.ai/install.ps1 | iex

curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

Пакетные менеджеры тоже подходят. В Homebrew есть стабильный кейск и кейск, который обновляется быстрее; установка через Homebrew и WinGet сама не обновляется:

brew install --cask claude-code brew install --cask claude-code@latest winget install Anthropic.ClaudeCode

Пользователи Debian, Fedora, RHEL и Alpine могут установить пакет из репозиториев пакетного менеджера; точные команды перечислены на странице установки по ссылке ниже. После установки откройте новый терминал и проверьте:

claude --version claude doctor

claude doctor запускает диагностику установки, не начиная сессию: дубли установок, проблемы с PATH, нечитаемые настройки и ожидающие обновления. Если оболочка отвечает claude: command not found, каталог установки ещё не попал в PATH; страница решения проблем описывает исправление по шагам. На нативном Windows рекомендуется поставить Git for Windows, чтобы у инструмента Bash была настоящая оболочка.

Предпочитаете редактор или окно? Расширение для VS Code и Cursor, плагин для JetBrains, настольное приложение и веб-версия на claude.ai/code используют тот же движок и ту же конфигурацию. В настольное приложение командная строка входит, поэтому отдельно CLI для него ставить не нужно. Подробности установки: code.claude.com setup.

Вход и провайдеры

При первом запуске инструмент просит войти в аккаунт. Два основных пути:

Для скриптов задайте ANTHROPIC_API_KEY в окружении и подтвердите ключ, когда его спросят; тогда Claude Code пропускает запрос на вход. Команды на облачных платформах могут маршрутизировать запросы через Amazon Bedrock, Google Cloud или Microsoft Foundry вместо API Anthropic; переменные провайдера описаны в документации по сторонним интеграциям.

export ANTHROPIC_API_KEY=sk-ant-... claude

Внутри сессии /login и /logout переключают аккаунты, а /status показывает, какой аккаунт, тариф и модель активны. Сессии по подписке могут ещё синхронизировать навыки из вашего аккаунта claude.ai; сессии с ключом API — нет.

CLAUDE.md и память

Каждая сессия начинается с чистого контекстного окна, поэтому долговечные правила должны жить в файлах. CLAUDE.md — файл инструкций проекта; он читается в начале каждого разговора. Расположения, от самого широкого к самому конкретному:

Файлы от рабочего каталога вверх склеиваются, ближайший — последним. Файлы во вложенных каталогах загружаются по требованию, когда Claude трогает файл там. Запустите /init один раз, чтобы сгенерировать начальный файл, /memory — чтобы открыть и отредактировать файлы, и /context — чтобы проверить, что именно загрузилось.

Репозиториям, которые уже используют AGENTS.md, дубликат не нужен: Claude Code читает AGENTS.md вместо CLAUDE.md, когда в рабочем каталоге или выше нет ни CLAUDE.md, ни CLAUDE.local.md. Однострочный CLAUDE.md с импортом @AGENTS.md держит оба инструмента на одном файле, если CLAUDE.md уже существует или версия старее.

# CLAUDE.md @AGENTS.md ## Claude Code - Use plan mode for changes under src/billing/.

Импорты по @path раскрываются при запуске и могут вкладываться на четыре уровня. Для больших проектов разложите инструкции по файлам .claude/rules/; правило с frontmatter paths: загружается, только когда Claude работает с подходящими файлами. Держите каждый файл примерно до 200 строк: длинные файлы стоят контекста и снижают послушность. Claude ещё ведёт собственную авто-память в ~/.claude/projects/<project>/memory/ с индексом MEMORY.md; смотреть её — /memory.

Настройки и разрешения

Настройки лежат в JSON-файлах с ясным приоритетом: управляемая политика, затем пользовательский ~/.claude/settings.json, затем проектный .claude/settings.json, затем локальный .claude/settings.local.json. Блок permissions — это слой безопасности. Правила оцениваются как allow, ask и deny, с именем инструмента и необязательным уточнением. Общие правила проекта идут в .claude/settings.json:

vi .claude/settings.json

{ "permissions": { "allow": [ "Bash(git status:*)", "Bash(git diff:*)", "Bash(npm run test:*)" ], "ask": ["Bash(git push:*)"], "deny": [ "Read(./.env)", "Read(./secrets/**)", "Bash(curl:*)" ] } }

Правила проекта и хуки начинают действовать только после того, как вы один раз доверитесь рабочему каталогу; склонированный репозиторий не может сам одобрить свою конфигурацию. Режимы разрешений меняют то, как часто вас спрашивают:

Режим задаётся на сессию флагом --permission-mode или переключается внутри сессии через /permissions. Правила deny и хуки — единственные слои, которые держатся даже в режиме auto, поэтому туда кладите по-настоящему запретные пути: .env, учётные данные, ключи развёртывания.

Субагенты

Субагенты — специализированные воркеры со своим контекстным окном, своим системным промптом, своим списком инструментов и своей моделью. Claude делегирует им, сопоставляя задачу с описанием каждого субагента, а они возвращают только сводку, и это удерживает исследование и логи вне основного разговора. Файлы лежат в .claude/agents/ (проект) или ~/.claude/agents/ (личные). Пример файла .claude/agents/code-reviewer.md:

mkdir -p .claude/agents

vi .claude/agents/code-reviewer.md

--- name: code-reviewer description: Reviews changes for correctness, security and missing tests. Use after every code change. tools: Read, Grep, Glob model: opus --- You are a strict reviewer. Report findings in severity order, each with file and line. Never edit files.

Попросите конкретного субагента по имени, когда он нужен явно: Use the code-reviewer subagent on my staged changes. Встроенные субагенты, такие как Explore, Plan и general-purpose, закрывают поиск и многошаговую работу вообще без файлов. Файлы, поля, инструменты, модели, память, изоляция worktree и полные примеры — в статье Субагенты Claude Code.

Навыки и команды

Навык упаковывает повторяемую процедуру. Это каталог с файлом SKILL.md внутри; тело загружается только когда навык используется, поэтому длинные чек-листы в покое почти ничего не стоят. Навыки проекта лежат в .claude/skills/<name>/SKILL.md. Пример файла .claude/skills/summarize-changes/SKILL.md:

mkdir -p .claude/skills/summarize-changes

vi .claude/skills/summarize-changes/SKILL.md

--- description: Summarizes uncommitted changes and flags risks. Use when the user asks what changed. allowed-tools: Bash(git diff:*) --- ## Current changes !`git diff HEAD` Summarize in two or three bullets, then list risks: missing error handling, hardcoded values, tests to update.

Запустить его можно двумя способами: Claude вызывает навык автоматически, когда совпадает описание, или вы набираете /summarize-changes. Остальным управляет frontmatter: disable-model-invocation делает навык только ручным, allowed-tools заранее одобряет инструменты на ход, paths ограничивает активацию подходящими файлами, а context: fork запускает навык в отдельном субагенте. Файл Markdown в .claude/commands/ — это старый формат команд, он всё ещё работает; пользовательские команды и навыки объединили.

Навыки следуют открытому стандарту Agent Skills, и .claude/skills/ читает также OpenCode как совместимое место — один каталог, два ассистента. Claude Code поставляется и со встроенными навыками, включая /code-review, /verify и /run; список — /skills. Детали формата и другие примеры — в статье Как писать навыки для ИИ-ассистентов.

Серверы MCP

MCP подключает Claude Code к трекерам задач, базам данных, файлам дизайна и мониторингу. Добавьте удалённый сервер по HTTP:

claude mcp add --transport http notion https://mcp.notion.com/mcp claude mcp add --transport http secure-api https://api.example.com/mcp \ --header "Authorization: Bearer your-token"

Для локального инструмента, который работает процессом, всё после двойного дефиса — это команда запуска:

claude mcp add airtable --env AIRTABLE_API_KEY=YOUR_KEY -- npx -y airtable-mcp-server

Три области решают, кто видит сервер: local (только вы, этот проект), project (коммитится в .mcp.json и доступен команде) и user (все ваши проекты). Проверять и управлять ими — claude mcp list и /mcp; серверы проекта ждут вашего одобрения при первом обращении. Относитесь к каждому серверу как к коду, который вы запускаете: проверьте издателя перед подключением, потому что сервер, который тянет внешнее содержимое, может нести внедрение промпта.

Хуки

Инструкции в CLAUDE.md — это рекомендации; хуки — это принуждение. Они запускают команды оболочки в фиксированных точках жизненного цикла, настраиваются под ключом hooks в файле настроек: перед вызовом инструмента (PreToolUse), после него (PostToolUse), при старте или конце сессии и при загрузке инструкций. Типичные применения: форматирование после каждой правки, запуск линтера-шлюза перед коммитом или прямой запрет команды. Хуки проекта идут в .claude/settings.json:

vi .claude/settings.json

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

Хуки работают с вашими правами и действуют на всю сессию, поэтому держите их маленькими и детерминированными. Руководство по хукам по ссылке ниже описывает каждое событие, сопоставление и контракт кодов выхода: code.claude.com hooks.

Рабочие приёмы

Полная карта поверхностей и автоматизации — в официальной документации: code.claude.com overview.

Решение проблем

Автор статьи: Клавдия Кондакова