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

Понимание новых кодовых баз

Получение быстрого обзора кодовой базы

Предположим, вы только что присоединились к новому проекту и вам нужно быстро понять его структуру.
1

Перейдите в корневой каталог проекта

cd /path/to/project 
2

Запустите Claude Code

claude 
3

Попросите высокоуровневый обзор

> give me an overview of this codebase 
4

Углубитесь в конкретные компоненты

> explain the main architecture patterns used here 
> what are the key data models?
> how is authentication handled?
Советы:
  • Начните с общих вопросов, затем сужайте до конкретных областей
  • Спросите о соглашениях кодирования и паттернах, используемых в проекте
  • Запросите глоссарий терминов, специфичных для проекта

Поиск релевантного кода

Предположим, вам нужно найти код, связанный с конкретной функцией или функциональностью.
1

Попросите Claude найти релевантные файлы

> find the files that handle user authentication 
2

Получите контекст о том, как компоненты взаимодействуют

> how do these authentication files work together? 
3

Поймите поток выполнения

> trace the login process from front-end to database 
Советы:
  • Будьте конкретны в том, что вы ищете
  • Используйте язык предметной области из проекта
  • Установите плагин анализа кода для вашего языка, чтобы дать Claude точную навигацию “перейти к определению” и “найти ссылки”

Эффективное исправление ошибок

Предположим, вы столкнулись с сообщением об ошибке и вам нужно найти и исправить его источник.
1

Поделитесь ошибкой с Claude

> I'm seeing an error when I run npm test 
2

Попросите рекомендации по исправлению

> suggest a few ways to fix the @ts-ignore in user.ts 
3

Примените исправление

> update user.ts to add the null check you suggested 
Советы:
  • Скажите Claude команду для воспроизведения проблемы и получите трассировку стека
  • Упомяните любые шаги для воспроизведения ошибки
  • Дайте Claude знать, является ли ошибка прерывистой или постоянной

Рефакторинг кода

Предположим, вам нужно обновить старый код для использования современных паттернов и практик.
1

Определите устаревший код для рефакторинга

> find deprecated API usage in our codebase 
2

Получите рекомендации по рефакторингу

> suggest how to refactor utils.js to use modern JavaScript features 
3

Примените изменения безопасно

> refactor utils.js to use ES2024 features while maintaining the same behavior 
4

Проверьте рефакторинг

> run tests for the refactored code 
Советы:
  • Попросите Claude объяснить преимущества современного подхода
  • Запросите, чтобы изменения сохраняли обратную совместимость при необходимости
  • Выполняйте рефакторинг небольшими, тестируемыми шагами

Использование специализированных subagents

Предположим, вы хотите использовать специализированные AI subagents для более эффективного выполнения конкретных задач.
1

Просмотрите доступные subagents

> /agents
Это показывает все доступные subagents и позволяет вам создавать новые.
2

Используйте subagents автоматически

Claude Code автоматически делегирует соответствующие задачи специализированным subagents:
> review my recent code changes for security issues
> run all tests and fix any failures
3

Явно запросите конкретные subagents

> use the code-reviewer subagent to check the auth module
> have the debugger subagent investigate why users can't log in
4

Создайте пользовательские subagents для вашего рабочего процесса

> /agents
Затем выберите “Create New subagent” и следуйте подсказкам для определения:
  • Уникального идентификатора, описывающего назначение subagent (например, code-reviewer, api-designer).
  • Когда Claude должен использовать этого агента
  • Какие инструменты он может использовать
  • Системной подсказки, описывающей роль и поведение агента
Советы:
  • Создавайте специфичные для проекта subagents в .claude/agents/ для совместного использования в команде
  • Используйте описательные поля description для включения автоматического делегирования
  • Ограничьте доступ к инструментам только тем, что действительно нужно каждому subagent
  • Проверьте документацию subagents для подробных примеров

Использование Plan Mode для безопасного анализа кода

Plan Mode инструктирует Claude создать план путем анализа кодовой базы с операциями только для чтения, идеально подходит для изучения кодовых баз, планирования сложных изменений или безопасного просмотра кода. В Plan Mode Claude использует AskUserQuestion для сбора требований и уточнения ваших целей перед предложением плана.

Когда использовать Plan Mode

  • Многошаговая реализация: Когда ваша функция требует редактирования множества файлов
  • Изучение кода: Когда вы хотите тщательно исследовать кодовую базу перед внесением каких-либо изменений
  • Интерактивная разработка: Когда вы хотите итерировать направление с Claude

Как использовать Plan Mode

Включите Plan Mode во время сеанса Вы можете переключиться в Plan Mode во время сеанса, используя Shift+Tab для циклического переключения между режимами разрешений. Если вы находитесь в Normal Mode, Shift+Tab сначала переключается в Auto-Accept Mode, обозначенный ⏵⏵ accept edits on в нижней части терминала. Последующий Shift+Tab переключится в Plan Mode, обозначенный ⏸ plan mode on. Когда активна команда агентов, цикл также включает Delegate Mode. Запустите новый сеанс в Plan Mode Чтобы запустить новый сеанс в Plan Mode, используйте флаг --permission-mode plan:
claude --permission-mode plan
Запустите “headless” запросы в Plan Mode Вы также можете запустить запрос в Plan Mode напрямую с -p (то есть в “headless режиме”):
claude --permission-mode plan -p "Analyze the authentication system and suggest improvements"

Пример: Планирование сложного рефакторинга

claude --permission-mode plan
> I need to refactor our authentication system to use OAuth2. Create a detailed migration plan.
Claude анализирует текущую реализацию и создает подробный план. Уточните с помощью дополнительных вопросов:
> What about backward compatibility?
> How should we handle database migration?
Нажмите Ctrl+G для открытия плана в вашем текстовом редакторе по умолчанию, где вы можете отредактировать его непосредственно перед тем, как Claude продолжит.

Настройка Plan Mode по умолчанию

// .claude/settings.json
{
  "permissions": {
    "defaultMode": "plan"
  }
}
См. документацию по настройкам для получения дополнительных параметров конфигурации.

Работа с тестами

Предположим, вам нужно добавить тесты для непокрытого кода.
1

Определите непротестированный код

> find functions in NotificationsService.swift that are not covered by tests 
2

Создайте каркас тестов

> add tests for the notification service 
3

Добавьте значимые тестовые случаи

> add test cases for edge conditions in the notification service 
4

Запустите и проверьте тесты

> run the new tests and fix any failures 
Claude может создавать тесты, которые следуют существующим паттернам и соглашениям вашего проекта. При запросе тестов будьте конкретны в отношении поведения, которое вы хотите проверить. Claude изучает ваши существующие файлы тестов, чтобы соответствовать стилю, фреймворкам и паттернам утверждений, уже используемым в проекте. Для полного покрытия попросите Claude определить граничные случаи, которые вы могли пропустить. Claude может анализировать пути вашего кода и предлагать тесты для условий ошибок, граничных значений и неожиданных входных данных, которые легко упустить.

Создание pull requests

Вы можете создавать pull requests, попросив Claude напрямую (“create a pr for my changes”) или используя skill /commit-push-pr, который коммитит, пушит и открывает PR в один шаг.
> /commit-push-pr
Если у вас настроен MCP сервер Slack и вы указали каналы в вашем CLAUDE.md (например, “post PR URLs to #team-prs”), skill автоматически публикует URL PR в эти каналы. Для большего контроля над процессом направляйте Claude пошагово или создайте свой собственный skill:
1

Суммируйте ваши изменения

> summarize the changes I've made to the authentication module
2

Создайте pull request

> create a pr
3

Просмотрите и уточните

> enhance the PR description with more context about the security improvements
Когда вы создаете PR с помощью gh pr create, сеанс автоматически связывается с этим PR. Вы можете возобновить его позже с помощью claude --from-pr <number>.
Просмотрите созданный Claude PR перед отправкой и попросите Claude выделить потенциальные риски или соображения.

Работа с документацией

Предположим, вам нужно добавить или обновить документацию для вашего кода.
1

Определите недокументированный код

> find functions without proper JSDoc comments in the auth module 
2

Создайте документацию

> add JSDoc comments to the undocumented functions in auth.js 
3

Просмотрите и улучшите

> improve the generated documentation with more context and examples 
4

Проверьте документацию

> check if the documentation follows our project standards 
Советы:
  • Укажите стиль документации, который вы хотите (JSDoc, docstrings и т.д.)
  • Попросите примеры в документации
  • Запросите документацию для публичных API, интерфейсов и сложной логики

Работа с изображениями

Предположим, вам нужно работать с изображениями в вашей кодовой базе, и вы хотите помощь Claude в анализе содержимого изображения.
1

Добавьте изображение в разговор

Вы можете использовать любой из этих методов:
  1. Перетащите изображение в окно Claude Code
  2. Скопируйте изображение и вставьте его в CLI с ctrl+v (не используйте cmd+v)
  3. Предоставьте Claude путь к изображению. Например, “Analyze this image: /path/to/your/image.png”
2

Попросите Claude проанализировать изображение

> What does this image show?
> Describe the UI elements in this screenshot
> Are there any problematic elements in this diagram?
3

Используйте изображения для контекста

> Here's a screenshot of the error. What's causing it?
> This is our current database schema. How should we modify it for the new feature?
4

Получите предложения кода из визуального содержимого

> Generate CSS to match this design mockup
> What HTML structure would recreate this component?
Советы:
  • Используйте изображения, когда текстовые описания были бы неясными или громоздкими
  • Включайте скриншоты ошибок, дизайны пользовательского интерфейса или диаграммы для лучшего контекста
  • Вы можете работать с несколькими изображениями в разговоре
  • Анализ изображений работает с диаграммами, скриншотами, макетами и многим другим
  • Когда Claude ссылается на изображения (например, [Image #1]), Cmd+Click (Mac) или Ctrl+Click (Windows/Linux) ссылку для открытия изображения в вашем средстве просмотра по умолчанию

Ссылка на файлы и каталоги

Используйте @ для быстрого включения файлов или каталогов без ожидания, пока Claude их прочитает.
1

Ссылка на один файл

> Explain the logic in @src/utils/auth.js
Это включает полное содержимое файла в разговор.
2

Ссылка на каталог

> What's the structure of @src/components?
Это предоставляет список каталогов с информацией о файлах.
3

Ссылка на MCP ресурсы

> Show me the data from @github:repos/owner/repo/issues
Это получает данные из подключенных MCP серверов, используя формат @server:resource. См. MCP ресурсы для деталей.
Советы:
  • Пути к файлам могут быть относительными или абсолютными
  • Ссылки на файлы @ добавляют CLAUDE.md в каталог файла и родительские каталоги в контекст
  • Ссылки на каталоги показывают списки файлов, а не содержимое
  • Вы можете ссылаться на несколько файлов в одном сообщении (например, “@file1.js and @file2.js”)

Использование расширенного мышления (режим мышления)

Расширенное мышление включено по умолчанию, предоставляя Claude пространство для пошагового рассуждения о сложных проблемах перед ответом. Это рассуждение видно в режиме verbose, который вы можете переключить с помощью Ctrl+O. Кроме того, Opus 4.6 вводит адаптивное рассуждение: вместо фиксированного бюджета токенов мышления, модель динамически распределяет мышление на основе вашей настройки уровня усилий. Расширенное мышление и адаптивное рассуждение работают вместе, чтобы дать вам контроль над тем, насколько глубоко Claude рассуждает перед ответом. Расширенное мышление особенно ценно для сложных архитектурных решений, сложных ошибок, многошагового планирования реализации и оценки компромиссов между различными подходами.
Фразы типа “think”, “think hard”, “ultrathink” и “think more” интерпретируются как обычные инструкции подсказки и не выделяют токены мышления.

Настройка режима мышления

Мышление включено по умолчанию, но вы можете его отрегулировать или отключить.
ОбластьКак настроитьДетали
Уровень усилийОтрегулируйте в /model или установите CLAUDE_CODE_EFFORT_LEVELКонтролируйте глубину мышления для Opus 4.6: low, medium, high (по умолчанию). См. Отрегулируйте уровень усилий
Переключатель сочетания клавишНажмите Option+T (macOS) или Alt+T (Windows/Linux)Переключайте мышление включено/выключено для текущего сеанса (все модели). Может потребоваться конфигурация терминала для включения сочетаний клавиш Option
Глобальное значение по умолчаниюИспользуйте /config для переключения режима мышленияУстанавливает ваше значение по умолчанию для всех проектов (все модели).
Сохраняется как alwaysThinkingEnabled в ~/.claude/settings.json
Ограничить бюджет токеновУстановите переменную окружения MAX_THINKING_TOKENSОграничьте бюджет мышления определенным количеством токенов (игнорируется на Opus 4.6, если не установлено на 0). Пример: export MAX_THINKING_TOKENS=10000
Чтобы просмотреть процесс мышления Claude, нажмите Ctrl+O для переключения режима verbose и посмотрите внутреннее рассуждение, отображаемое серым курсивным текстом.

Как работает расширенное мышление

Расширенное мышление контролирует, сколько внутреннего рассуждения Claude выполняет перед ответом. Больше мышления предоставляет больше пространства для изучения решений, анализа граничных случаев и самокоррекции ошибок. С Opus 4.6, мышление использует адаптивное рассуждение: модель динамически распределяет токены мышления на основе уровня усилий, который вы выбираете (low, medium, high). Это рекомендуемый способ настройки компромисса между скоростью и глубиной рассуждения. С другими моделями, мышление использует фиксированный бюджет до 31 999 токенов из вашего выходного бюджета. Вы можете ограничить это с помощью переменной окружения MAX_THINKING_TOKENS, или отключить мышление полностью через /config или переключатель Option+T/Alt+T. MAX_THINKING_TOKENS игнорируется при использовании Opus 4.6, так как адаптивное рассуждение контролирует глубину мышления. Единственное исключение: установка MAX_THINKING_TOKENS=0 все еще полностью отключает мышление на любой модели.
Вам выставляется счет за все использованные токены мышления, даже если модели Claude 4 показывают суммированное мышление

Возобновление предыдущих разговоров

При запуске Claude Code вы можете возобновить предыдущий сеанс:
  • claude --continue продолжает самый последний разговор в текущем каталоге
  • claude --resume открывает средство выбора разговора или возобновляет по имени
  • claude --from-pr 123 возобновляет сеансы, связанные с конкретным pull request
Из активного сеанса используйте /resume для переключения на другой разговор. Сеансы хранятся в каталоге проекта. Средство выбора /resume показывает сеансы из того же репозитория git, включая worktrees.

Назовите ваши сеансы

Дайте сеансам описательные имена, чтобы найти их позже. Это лучшая практика при работе над несколькими задачами или функциями.
1

Назовите текущий сеанс

Используйте /rename во время сеанса, чтобы дать ему запоминающееся имя:
> /rename auth-refactor
Вы также можете переименовать любой сеанс из средства выбора: запустите /resume, перейдите к сеансу и нажмите R.
2

Возобновите по имени позже

Из командной строки:
claude --resume auth-refactor
Или из активного сеанса:
> /resume auth-refactor

Используйте средство выбора сеанса

Команда /resume (или claude --resume без аргументов) открывает интерактивное средство выбора сеанса со следующими функциями: Сочетания клавиш в средстве выбора:
Сочетание клавишДействие
/ Навигация между сеансами
/ Развернуть или свернуть сгруппированные сеансы
EnterВыберите и возобновите выделенный сеанс
PПредпросмотр содержимого сеанса
RПереименуйте выделенный сеанс
/Поиск для фильтрации сеансов
AПереключение между текущим каталогом и всеми проектами
BФильтр к сеансам из вашей текущей ветки git
EscВыход из средства выбора или режима поиска
Организация сеанса: Средство выбора отображает сеансы с полезными метаданными:
  • Имя сеанса или начальная подсказка
  • Время, прошедшее с момента последней активности
  • Количество сообщений
  • Ветка Git (если применимо)
Разветвленные сеансы (созданные с помощью /rewind или --fork-session) сгруппированы под их корневым сеансом, что облегчает поиск связанных разговоров.
Советы:
  • Назовите сеансы рано: Используйте /rename при запуске работы над отдельной задачей — намного легче найти “payment-integration”, чем “explain this function” позже
  • Используйте --continue для быстрого доступа к вашему самому последнему разговору в текущем каталоге
  • Используйте --resume session-name, когда вы знаете, какой сеанс вам нужен
  • Используйте --resume (без имени), когда вам нужно просмотреть и выбрать
  • Для скриптов используйте claude --continue --print "prompt" для возобновления в неинтерактивном режиме
  • Нажмите P в средстве выбора для предпросмотра сеанса перед его возобновлением
  • Возобновленный разговор начинается с той же модели и конфигурации, что и оригинал
Как это работает:
  1. Хранилище разговоров: Все разговоры автоматически сохраняются локально с полной историей сообщений
  2. Десериализация сообщений: При возобновлении вся история сообщений восстанавливается для сохранения контекста
  3. Состояние инструмента: Использование инструмента и результаты из предыдущего разговора сохраняются
  4. Восстановление контекста: Разговор возобновляется со всем предыдущим контекстом нетронутым

Запуск параллельных сеансов Claude Code с Git worktrees

Предположим, вам нужно работать над несколькими задачами одновременно с полной изоляцией кода между экземплярами Claude Code.
1

Поймите Git worktrees

Git worktrees позволяют вам проверить несколько ветвей из одного репозитория в отдельные каталоги. Каждый worktree имеет свой рабочий каталог с изолированными файлами, при этом совместно используя одну историю Git. Узнайте больше в официальной документации Git worktree.
2

Создайте новый worktree

# Создайте новый worktree с новой ветвью 
git worktree add ../project-feature-a -b feature-a

# Или создайте worktree с существующей ветвью
git worktree add ../project-bugfix bugfix-123
Это создает новый каталог с отдельной рабочей копией вашего репозитория.
3

Запустите Claude Code в каждом worktree

# Перейдите в ваш worktree 
cd ../project-feature-a

# Запустите Claude Code в этой изолированной среде
claude
4

Запустите Claude в другом worktree

cd ../project-bugfix
claude
5

Управляйте вашими worktrees

# Список всех worktrees
git worktree list

# Удалите worktree, когда закончите
git worktree remove ../project-feature-a
Советы:
  • Каждый worktree имеет свое независимое состояние файла, что делает его идеальным для параллельных сеансов Claude Code
  • Изменения, сделанные в одном worktree, не повлияют на другие, предотвращая помехи экземпляров Claude друг другу
  • Все worktrees совместно используют одну историю Git и удаленные соединения
  • Для долгосрочных задач вы можете иметь Claude, работающего в одном worktree, пока вы продолжаете разработку в другом
  • Используйте описательные имена каталогов для легкого определения того, для какой задачи предназначен каждый worktree
  • Помните, что нужно инициализировать вашу среду разработки в каждом новом worktree в соответствии с установкой вашего проекта. В зависимости от вашего стека это может включать:
    • Проекты JavaScript: Запуск установки зависимостей (npm install, yarn)
    • Проекты Python: Настройка виртуальных окружений или установка с помощью менеджеров пакетов
    • Другие языки: Следование стандартному процессу установки вашего проекта
Для автоматизированной координации параллельных сеансов с общими задачами и обменом сообщениями см. команды агентов.

Используйте Claude как утилиту в стиле unix

Добавьте Claude в ваш процесс проверки

Предположим, вы хотите использовать Claude Code как линтер или рецензент кода. Добавьте Claude в ваш скрипт сборки:
// package.json
{
    ...
    "scripts": {
        ...
        "lint:claude": "claude -p 'you are a linter. please look at the changes vs. main and report any issues related to typos. report the filename and line number on one line, and a description of the issue on the second line. do not return any other text.'"
    }
}
Советы:
  • Используйте Claude для автоматизированного просмотра кода в вашем конвейере CI/CD
  • Настройте подсказку для проверки конкретных проблем, релевантных для вашего проекта
  • Рассмотрите создание нескольких скриптов для различных типов проверки

Передача данных через трубу

Предположим, вы хотите передать данные в Claude и получить обратно данные в структурированном формате. Передайте данные через Claude:
cat build-error.txt | claude -p 'concisely explain the root cause of this build error' > output.txt
Советы:
  • Используйте трубы для интеграции Claude в существующие скрипты оболочки
  • Комбинируйте с другими инструментами Unix для мощных рабочих процессов
  • Рассмотрите использование —output-format для структурированного вывода

Контроль формата вывода

Предположим, вам нужен вывод Claude в определенном формате, особенно при интеграции Claude Code в скрипты или другие инструменты.
1

Используйте текстовый формат (по умолчанию)

cat data.txt | claude -p 'summarize this data' --output-format text > summary.txt
Это выводит только простой текстовый ответ Claude (поведение по умолчанию).
2

Используйте JSON формат

cat code.py | claude -p 'analyze this code for bugs' --output-format json > analysis.json
Это выводит массив JSON сообщений с метаданными, включая стоимость и продолжительность.
3

Используйте потоковый JSON формат

cat log.txt | claude -p 'parse this log file for errors' --output-format stream-json
Это выводит серию объектов JSON в реальном времени по мере обработки Claude запроса. Каждое сообщение является допустимым объектом JSON, но весь вывод не является допустимым JSON при объединении.
Советы:
  • Используйте --output-format text для простых интеграций, где вам просто нужен ответ Claude
  • Используйте --output-format json, когда вам нужен полный журнал разговора
  • Используйте --output-format stream-json для вывода в реальном времени каждого хода разговора

Спросите Claude о его возможностях

Claude имеет встроенный доступ к своей документации и может ответить на вопросы о своих собственных функциях и ограничениях.

Примеры вопросов

> can Claude Code create pull requests?
> how does Claude Code handle permissions?
> what skills are available?
> how do I use MCP with Claude Code?
> how do I configure Claude Code for Amazon Bedrock?
> what are the limitations of Claude Code?
Claude предоставляет ответы на основе документации на эти вопросы. Для исполняемых примеров и практических демонстраций обратитесь к конкретным разделам рабочих процессов выше.
Советы:
  • Claude всегда имеет доступ к последней документации Claude Code, независимо от версии, которую вы используете
  • Задавайте конкретные вопросы для получения подробных ответов
  • Claude может объяснить сложные функции, такие как интеграция MCP, конфигурации предприятия и продвинутые рабочие процессы

Следующие шаги