Каждая задача в этом документе включает четкие инструкции, примеры команд и лучшие практики, которые помогут вам получить максимум от Claude Code.

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

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

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

1

Перейдите в корневую директорию проекта

cd /path/to/project 
2

Запустите Claude Code

claude 
3

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

> дай мне обзор этой кодовой базы 
4

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

> объясни основные архитектурные паттерны, используемые здесь 
> какие ключевые модели данных?
> как обрабатывается аутентификация?

Советы:

  • Начинайте с широких вопросов, затем сужайте до конкретных областей
  • Спрашивайте о соглашениях кодирования и паттернах, используемых в проекте
  • Запрашивайте глоссарий специфичных для проекта терминов

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

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

1

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

> найди файлы, которые обрабатывают аутентификацию пользователей 
2

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

> как эти файлы аутентификации работают вместе? 
3

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

> проследи процесс входа от фронтенда до базы данных 

Советы:

  • Будьте конкретны в том, что вы ищете
  • Используйте доменный язык из проекта

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

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

1

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

> Я вижу ошибку, когда запускаю npm test 
2

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

> предложи несколько способов исправить @ts-ignore в user.ts 
3

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

> обнови user.ts, чтобы добавить проверку на null, которую ты предложил 

Советы:

  • Скажите Claude команду для воспроизведения проблемы и получения трассировки стека
  • Упомяните любые шаги для воспроизведения ошибки
  • Дайте Claude знать, является ли ошибка периодической или постоянной

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

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

1

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

> найди использование устаревших API в нашей кодовой базе 
2

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

> предложи, как рефакторить utils.js для использования современных возможностей JavaScript 
3

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

> рефактори utils.js для использования возможностей ES2024, сохраняя то же поведение 
4

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

> запусти тесты для рефакторенного кода 

Советы:

  • Попросите Claude объяснить преимущества современного подхода
  • Запросите, чтобы изменения сохраняли обратную совместимость при необходимости
  • Делайте рефакторинг небольшими, тестируемыми приращениями

Использование специализированных субагентов

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

1

Просмотрите доступных субагентов

> /agents

Это показывает всех доступных субагентов и позволяет создавать новых.

2

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

Claude Code автоматически делегирует подходящие задачи специализированным субагентам:

> проверь мои недавние изменения кода на предмет проблем безопасности
> запусти все тесты и исправь любые сбои
3

Явно запросите конкретных субагентов

> используй субагента code-reviewer для проверки модуля auth
> пусть субагент debugger исследует, почему пользователи не могут войти в систему
4

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

> /agents

Затем выберите “Create New subagent” и следуйте подсказкам для определения:

  • Типа субагента (например, api-designer, performance-optimizer)
  • Когда его использовать
  • К каким инструментам он может получить доступ
  • Его специализированный системный промпт

Советы:

  • Создавайте специфичных для проекта субагентов в .claude/agents/ для командного использования
  • Используйте описательные поля description для включения автоматического делегирования
  • Ограничьте доступ к инструментам тем, что каждому субагенту действительно нужно
  • Проверьте документацию по субагентам для подробных примеров

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

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

1

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

> найди функции в NotificationsService.swift, которые не покрыты тестами 
2

Сгенерируйте каркас тестов

> добавь тесты для сервиса уведомлений 
3

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

> добавь тестовые случаи для граничных условий в сервисе уведомлений 
4

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

> запусти новые тесты и исправь любые сбои 

Советы:

  • Просите тесты, которые покрывают граничные случаи и условия ошибок
  • Запрашивайте как модульные, так и интеграционные тесты, когда это уместно
  • Пусть Claude объяснит стратегию тестирования

Создание pull request’ов

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

1

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

> суммируй изменения, которые я внес в модуль аутентификации 
2

Сгенерируйте PR с Claude

> создай pr 
3

Просмотрите и доработайте

> улучши описание PR с большим контекстом об улучшениях безопасности 
4

Добавьте детали тестирования

> добавь информацию о том, как эти изменения были протестированы 

Советы:

  • Попросите Claude напрямую создать PR для вас
  • Просмотрите сгенерированный Claude PR перед отправкой
  • Попросите Claude выделить потенциальные риски или соображения

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

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

1

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

> найди функции без правильных JSDoc комментариев в модуле auth 
2

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

> добавь JSDoc комментарии к недокументированным функциям в auth.js 
3

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

> улучши сгенерированную документацию с большим контекстом и примерами 
4

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

> проверь, соответствует ли документация нашим стандартам проекта 

Советы:

  • Укажите стиль документации, который вы хотите (JSDoc, docstrings и т.д.)
  • Просите примеры в документации
  • Запрашивайте документацию для публичных API, интерфейсов и сложной логики

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

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

1

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

Вы можете использовать любой из этих методов:

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

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

> Что показывает это изображение?
> Опиши элементы UI на этом скриншоте
> Есть ли проблемные элементы на этой диаграмме?
3

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

> Вот скриншот ошибки. Что ее вызывает?
> Это наша текущая схема базы данных. Как нам следует изменить ее для новой функции?
4

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

> Сгенерируй CSS для соответствия этому дизайн-макету
> Какая HTML структура воссоздала бы этот компонент?

Советы:

  • Используйте изображения, когда текстовые описания были бы неясными или громоздкими
  • Включайте скриншоты ошибок, UI дизайнов или диаграмм для лучшего контекста
  • Вы можете работать с несколькими изображениями в разговоре
  • Анализ изображений работает с диаграммами, скриншотами, макетами и многим другим

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

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

1

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

> Объясни логику в @src/utils/auth.js

Это включает полное содержимое файла в разговор.

2

Ссылка на директорию

> Какова структура @src/components?

Это предоставляет список директории с информацией о файлах.

3

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

> Покажи мне данные из @github:repos/owner/repo/issues

Это получает данные с подключенных MCP серверов, используя формат @server:resource. См. MCP ресурсы для деталей.

Советы:

  • Пути к файлам могут быть относительными или абсолютными
  • @ ссылки на файлы добавляют CLAUDE.md в директории файла и родительских директориях в контекст
  • Ссылки на директории показывают списки файлов, а не содержимое
  • Вы можете ссылаться на несколько файлов в одном сообщении (например, “@file1.js и @file2.js”)

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

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

1

Предоставьте контекст и попросите Claude подумать

> Мне нужно реализовать новую систему аутентификации, используя OAuth2 для нашего API. Глубоко подумай о лучшем подходе для реализации этого в нашей кодовой базе. 

Claude соберет релевантную информацию из вашей кодовой базы и использует расширенное мышление, которое будет видимо в интерфейсе.

2

Уточните мышление с помощью дополнительных промптов

> подумай о потенциальных уязвимостях безопасности в этом подходе 
> подумай усерднее о граничных случаях, которые мы должны обработать 

Советы для получения максимальной пользы от расширенного мышления:

Расширенное мышление наиболее ценно для сложных задач, таких как:

  • Планирование сложных архитектурных изменений
  • Отладка сложных проблем
  • Создание планов реализации для новых функций
  • Понимание сложных кодовых баз
  • Оценка компромиссов между различными подходами

Способ, которым вы промптите для мышления, приводит к различным уровням глубины мышления:

  • “подумай” запускает базовое расширенное мышление
  • усиливающие фразы, такие как “подумай больше”, “подумай много”, “подумай усерднее” или “подумай дольше” запускают более глубокое мышление

Для получения дополнительных советов по промптингу расширенного мышления см. Советы по расширенному мышлению.

Claude будет отображать свой процесс мышления как курсивный серый текст над ответом.


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

Предположим, вы работали над задачей с Claude Code и вам нужно продолжить с того места, где вы остановились в более поздней сессии.

Claude Code предоставляет два варианта для возобновления предыдущих разговоров:

  • --continue для автоматического продолжения самого недавнего разговора
  • --resume для отображения селектора разговоров
1

Продолжите самый недавний разговор

claude --continue

Это немедленно возобновляет ваш самый недавний разговор без каких-либо подсказок.

2

Продолжите в неинтерактивном режиме

claude --continue --print "Продолжи с моей задачей"

Используйте --print с --continue для возобновления самого недавнего разговора в неинтерактивном режиме, идеально подходит для скриптов или автоматизации.

3

Покажите выбор разговора

claude --resume

Это отображает интерактивный селектор разговоров, показывающий:

  • Время начала разговора
  • Начальный промпт или резюме разговора
  • Количество сообщений

Используйте клавиши со стрелками для навигации и нажмите Enter для выбора разговора.

Советы:

  • История разговоров хранится локально на вашей машине
  • Используйте --continue для быстрого доступа к вашему самому недавнему разговору
  • Используйте --resume, когда вам нужно выбрать конкретный прошлый разговор
  • При возобновлении вы увидите всю историю разговора перед продолжением
  • Возобновленный разговор начинается с той же модели и конфигурации, что и оригинальный

Как это работает:

  1. Хранение разговоров: Все разговоры автоматически сохраняются локально с их полной историей сообщений
  2. Десериализация сообщений: При возобновлении вся история сообщений восстанавливается для поддержания контекста
  3. Состояние инструментов: Использование инструментов и результаты из предыдущего разговора сохраняются
  4. Восстановление контекста: Разговор возобновляется со всем предыдущим контекстом нетронутым

Примеры:

# Продолжить самый недавний разговор
claude --continue

# Продолжить самый недавний разговор с конкретным промптом
claude --continue --print "Покажи наш прогресс"

# Показать выбор разговора
claude --resume

# Продолжить самый недавний разговор в неинтерактивном режиме
claude --continue --print "Запусти тесты снова"

Запуск параллельных сессий 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 'ты линтер. пожалуйста, посмотри на изменения относительно main и сообщи о любых проблемах, связанных с опечатками. сообщи имя файла и номер строки на одной строке, и описание проблемы на второй строке. не возвращай никакого другого текста.'"
    }
}

Советы:

  • Используйте Claude для автоматизированного ревью кода в вашем CI/CD пайплайне
  • Настройте промпт для проверки конкретных проблем, релевантных для вашего проекта
  • Рассмотрите создание нескольких скриптов для различных типов верификации

Pipe in, pipe out

Предположим, вы хотите передать данные в Claude и получить обратно данные в структурированном формате.

Передайте данные через Claude:

cat build-error.txt | claude -p 'кратко объясни основную причину этой ошибки сборки' > output.txt

Советы:

  • Используйте pipes для интеграции Claude в существующие shell скрипты
  • Комбинируйте с другими Unix инструментами для мощных рабочих процессов
  • Рассмотрите использование —output-format для структурированного вывода

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

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

1

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

cat data.txt | claude -p 'суммируй эти данные' --output-format text > summary.txt

Это выводит только простой текстовый ответ Claude (поведение по умолчанию).

2

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

cat code.py | claude -p 'проанализируй этот код на ошибки' --output-format json > analysis.json

Это выводит JSON массив сообщений с метаданными, включая стоимость и продолжительность.

3

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

cat log.txt | claude -p 'разбери этот лог файл на ошибки' --output-format stream-json

Это выводит серию JSON объектов в реальном времени, пока Claude обрабатывает запрос. Каждое сообщение является валидным JSON объектом, но весь вывод не является валидным JSON, если объединен.

Советы:

  • Используйте --output-format text для простых интеграций, где вам нужен только ответ Claude
  • Используйте --output-format json, когда вам нужен полный лог разговора
  • Используйте --output-format stream-json для вывода каждого поворота разговора в реальном времени

Создание пользовательских slash команд

Claude Code поддерживает пользовательские slash команды, которые вы можете создать для быстрого выполнения конкретных промптов или задач.

Для получения дополнительных деталей см. справочную страницу Slash команды.

Создание команд, специфичных для проекта

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

1

Создайте директорию команд в вашем проекте

mkdir -p .claude/commands
2

Создайте Markdown файл для каждой команды

echo "Проанализируй производительность этого кода и предложи три конкретных оптимизации:" > .claude/commands/optimize.md 
3

Используйте вашу пользовательскую команду в Claude Code

> /optimize 

Советы:

  • Имена команд выводятся из имени файла (например, optimize.md становится /optimize)
  • Вы можете организовать команды в поддиректориях (например, .claude/commands/frontend/component.md создает /component с “(project:frontend)”, показанным в описании)
  • Команды проекта доступны всем, кто клонирует репозиторий
  • Содержимое Markdown файла становится промптом, отправленным Claude при вызове команды

Добавление аргументов команды с $ARGUMENTS

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

1

Создайте файл команды с заполнителем $ARGUMENTS

echo "Найди и исправь проблему #$ARGUMENTS. Следуй этим шагам: 1.
Пойми проблему, описанную в тикете 2. Найди релевантный код в
нашей кодовой базе 3. Реализуй решение, которое адресует основную причину 4. Добавь
соответствующие тесты 5. Подготовь краткое описание PR" >
.claude/commands/fix-issue.md 
2

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

В вашей сессии Claude используйте команду с аргументами.

> /fix-issue 123 

Это заменит $ARGUMENTS на “123” в промпте.

Советы:

  • Заполнитель $ARGUMENTS заменяется любым текстом, который следует за командой
  • Вы можете позиционировать $ARGUMENTS в любом месте вашего шаблона команды
  • Другие полезные применения: генерация тестовых случаев для конкретных функций, создание документации для компонентов, ревью кода в конкретных файлах или перевод содержимого на указанные языки

Создание персональных slash команд

Предположим, вы хотите создать персональные slash команды, которые работают во всех ваших проектах.

1

Создайте директорию команд в вашей домашней папке

mkdir -p ~/.claude/commands 
2

Создайте Markdown файл для каждой команды

echo "Проверь этот код на уязвимости безопасности, сосредоточившись на:" >
~/.claude/commands/security-review.md 
3

Используйте вашу личную пользовательскую команду

> /security-review 

Советы:

  • Персональные команды показывают “(user)” в их описании при перечислении с /help
  • Персональные команды доступны только вам и не разделяются с вашей командой
  • Персональные команды работают во всех ваших проектах
  • Вы можете использовать их для последовательных рабочих процессов в разных кодовых базах

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

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

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

> может ли Claude Code создавать pull request'ы?
> как Claude Code обрабатывает разрешения?
> какие slash команды доступны?
> как использовать MCP с Claude Code?
> как настроить Claude Code для Amazon Bedrock?
> каковы ограничения Claude Code?

Claude предоставляет ответы на основе документации на эти вопросы. Для исполняемых примеров и практических демонстраций обратитесь к конкретным разделам рабочих процессов выше.

Советы:

  • Claude всегда имеет доступ к последней документации Claude Code, независимо от версии, которую вы используете
  • Задавайте конкретные вопросы для получения подробных ответов
  • Claude может объяснить сложные функции, такие как интеграция MCP, корпоративные конфигурации и продвинутые рабочие процессы

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

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

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

> может ли Claude Code создавать pull request'ы?
> как Claude Code обрабатывает разрешения?
> какие slash команды доступны?
> как использовать MCP с Claude Code?
> как настроить Claude Code для Amazon Bedrock?
> каковы ограничения Claude Code?

Claude предоставляет ответы, основанные на документации, на эти вопросы. Для исполняемых примеров и практических демонстраций обратитесь к конкретным разделам рабочих процессов выше.

Советы:

  • Claude всегда имеет доступ к последней документации Claude Code, независимо от версии, которую вы используете
  • Задавайте конкретные вопросы для получения подробных ответов
  • Claude может объяснить сложные функции, такие как интеграция MCP, корпоративные конфигурации и продвинутые рабочие процессы

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

Референсная реализация Claude Code

Клонируйте нашу референсную реализацию контейнера разработки.