DeepDigest
Analytics Vidhya · · ~8 мин

Claude Code: полезные команды CLI для эффективной работы

Claude Code обладает множеством скрытых возможностей, которые раскрываются через CLI-команды. С помощью различных флагов и команд можно эффективно управлять сессиями, фоновыми агентами, ограничивать расходы и настраивать поведение модели. В статье перечислены ключевые команды и их назначение, включая работу с MCP и настройку системного промпта.

LLM
Claude Code: полезные команды CLI для эффективной работы

Пользователи Claude Code нередко не знают о скрытых возможностях инструмента, которые раскрываются через команду claude --help. С её помощью можно обнаружить десятки команд и флагов CLI, способных заметно повысить продуктивность работы.

Работа с сессиями
Есть несколько флагов для управления сессиями:
* claude -c — возобновляет последнюю сессию в папке (сохраняется полный контекст);
* claude -n «name» — задаёт имя сессии для последующего поиска (вместо автосгенерированного ID);
* claude -r «name» — возобновляет конкретную сессию по имени или ID;
* claude --fork-session — возобновляет сессию, создавая её ответвление (исходная сессия остаётся без изменений);
* claude --from-pr 123 — открывает выборщик сессий, отфильтрованных по конкретному pull request.

Управление фоновыми агентами
Флаг --bg позволяет запускать задачу в качестве фонового агента — терминал сразу возвращается пользователю, а Claude продолжает работу. Для управления фоновыми агентами доступны такие команды:
* claude agents — отображение всех сессий (выполняющихся и завершённых);
* claude agents --json — то же, что и предыдущая команда, но в формате JSON (для парсинга в скрипте);
* claude attach <id> — перенос фоновой сессии в текущий терминал;
* claude logs <id> — вывод последних результатов без подключения к сессии;
* claude stop <id> — остановка выполняющейся сессии;
* claude rm <id> — удаление сессии из списка (транскрипт остаётся на диске);
* claude respawn <id> — перезапуск сессии с сохранением беседы;
* claude respawn --all — перезапуск всех сессий (полезно после обновления Claude Code).

Дополнительные возможности
Флаг –exec запускает команду оболочки в фоновом режиме вместо сессии Claude — это удобно для длительных тестов. Anthropic разработал Dynamic Workflows для координации сотен параллельных подагентов в одной сессии.

Флаг -p (--print) выполняет запрос, выводит ответ и завершает работу без интерактивной сессии. С его помощью можно передавать данные в Claude через пайп. Например: cat thatfile.log | claude -p “what is going wrong here”.

Форматы вывода данных: текст (по умолчанию), JSON (для парсинга), Stream JSON (для пайплайнов в реальном времени).

Флаг --bare пропускает автообнаружение хуков, навыков, плагинов, MCP-серверов и CLAUDE.md — вызов запускается быстрее. В Claude Code есть настройка effort, которая определяет уровень рассуждений для задачи. Подбирая её под задачу, можно экономить средства.

Для автоматизированных запусков обязательно использовать два флага, которые ограничивают расходы и предотвращают неконтролируемое поведение. С версии v2.1.217 расходы от подагентов учитываются в –max-budget-usd: при достижении лимита Claude Code останавливает работающие в фоне подагенты.

Режимы разрешений
В Claude Code есть шесть режимов разрешений (permission modes):
* default — подсказки перед каждым редактированием и использованием инструмента;
* accept — автопринятие правок файлов, но запросы перед использованием Bash;
* plan — только планирование, ничего не записывает и не запускает;
* auto — самостоятельно определяет, что безопасно разрешить;
* dontAsk — подавляет подсказки, но сохраняет проверки безопасности;
* bypassPermissions — пропускает все запросы разрешений (только для CI в песочнице).

Режим plan полезен перед тем, как разрешить Claude работать с непонятным кодом: можно увидеть, что он собирается сделать, а затем сменить режим и запустить выполнение.

Ограничение инструментов
Можно ограничивать инструменты, доступные Claude, с помощью флагов:
* --tools «Bash,Edit,Read» — доступны только указанные встроенные инструменты в текущей сессии;
* --tools «» — инструменты недоступны, Claude может только генерировать текст;
* --allowedTools «Bash(git log )» — автоматически разрешать соответствующие вызовы без запроса;
* --disallowedTools «Bash(rm *)» — всегда отклонять соответствующие вызовы, инструмент остаётся доступным в остальном;
* --disallowedTools «mcp__
» — запретить все инструменты MCP в этой сессии.

Работа с MCP
MCP позволяет Claude получать доступ к базе данных, GitHub, Slack и другим подключённым сервисам. Команды CLI:
* mcp login, mcp logout (с версии v2.1.186) — позволяют выполнять OAuth-поток из оболочки;
* --no-browser — выводит URL для вставки вместо попытки открыть браузер на удалённой машине.

При выполнении claude mcp list статус может быть:
* connected — всё работает, ничего делать не нужно;
* needs authentication — доступно, но не авторизовано, нужно выполнить claude mcp login <name>;
* connected, tools fetch failed — подключено, но не удалось вывести список инструментов, нужно выполнить claude mcp get <name> для получения ошибки;
* failed to connect — не запущено, нужно выполнить команду установки в терминале, чтобы увидеть реальную ошибку;
* pending approval — сервер с областью действия проекта, который ещё не одобрен в этой сессии.

Настройка системного промпта
Есть четыре флага для изменения системного промпта:
* --append-system-prompt «text» — добавляет текст после стандартного промпта;
* --append-system-prompt-file f.txt — добавляет содержимое файла после стандартного промпта;
* --system-prompt «text» — заменяет весь стандартный промпт;
* --system-prompt-file f.txt — заменяет стандартный промпт содержимым файла.

Рекомендуется использовать append, когда Claude должен вести себя как помощник по кодированию, но также следовать дополнительному правилу пользователя. Replace стоит применять, когда задача не связана с кодированием (например, извлечение данных в конвейере).

Правила, которые нужно применять в каждой сессии проекта, можно поместить в CLAUDE.md — он загружается автоматически. Для повторяющихся рабочих процессов используются Skills.

Диагностика и безопасность
Для диагностики проблем с Claude Code можно использовать команду claude doctor — она проверяет работоспособность установки, наличие ошибок в файлах настроек и аутентификацию.

Режим safe mode отключает CLAUDE.md, навыки, плагины, хуки, MCP-серверы, пользовательские команды, стили вывода, сочетания клавиш и автопамять; аутентификация, выбор модели и встроенные инструменты работают. Safe mode и bare mode — не одно и то же: bare mode пропускает автообнаружение для ускорения скриптов, а safe mode отключает настройки для поиска ошибок, включая стили вывода и сочетания клавиш.

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

Если неправильно ввести подкоманду, Claude Code предложит ближайший вариант (например, claude udpate выведет: «Did you mean claude update?» и завершит работу).

Примеры использования команд
Для запуска Claude Code в CI без интерактивных запросов нужно использовать -p (неинтерактивный режим), --dangerously-skip-permissions (пропуск подтверждений) и токен из claude setup-token для аутентификации. Следует добавить --max-budget-usd и --max-turns, чтобы избежать неконтролируемого выполнения. Пример команды:

  1. The One That Changed My Whole Working Day: Background Agents

claude -p –dangerously-skip-permissions --max-budget-usd 5.00 "run the test suite and report failures"

Все перечисленные возможности проверены для Claude Code v2.1.209 и новее.

  1. The First Thing That Changed: I Stopped Losing My Sessions

  2. The Flag I Should Have Learned on Day One

  3. Where I Was Quietly Burning Money

  4. The Setting I Had Wrong for Months

  5. MCP From the Terminal

  6. System Prompts: Append or Replace, and Why It Matters

  7. When Something Breaks

Quick Reference

What I Would Tell Myself Six Months Ago

Frequently Asked Questions

Getting Started with Claude Code

Claude Code: Master it in 20 Minutes

# Continue the most recent session in this directory
claude -c

# Name a session when you start it
claude -n "auth-refactor"

# Come back to it by name, days later
claude -r "auth-refactor" "finish the PR description"
claude -r auth-refactor --fork-session
$ claude --bg "investigate why payments.test.js is flaky"
Session started: 7c5dcf5d
To attach: claude attach 7c5dcf5d
To view logs: claude logs 7c5dcf5d
To stop: claude stop 7c5dcf5d
# Fire off two long jobs
claude --bg "audit the API surface for missing auth checks"
claude --bg "find every TODO comment older than six months"

# Get on with your own work, then check in
claude agents
claude --bg --exec 'pytest -x tests/'

our Claude Opus 4.8 article

# Ask one question, get one answer, back to your shell
claude -p "what does auth.js actually do"

# Pipe a file straight in instead of asking Claude to find it
cat error.log | claude -p "summarise these errors by root cause"
cat changes.diff | claude -p "review this diff for security issues"

# Continue your last session but just get one answer
claude -c -p "any type errors left?"
claude -p "list all API routes" --output-format json
claude -p "query" --output-format stream-json --verbose
claude --bare -p "quick question about this one file"
claude --effort low # small edits, quick questions
claude --effort medium # standard day-to-day coding
claude --effort high # complex refactors, architecture work
claude --effort ultracode # xhigh effort with ultracode on (v2.1.203+)
# Stop once API spend hits two dollars
claude -p --max-budget-usd 2.00 "large refactor task"

# Stop after five agentic turns
claude -p --max-turns 5 "investigate this bug"

23 Tips for Claude Code Token Saving

claude --permission-mode plan
claude --permission-mode acceptEdits

# Same as bypassPermissions, deliberately verbose so you notice it
claude --dangerously-skip-permissions

How to Connect MCP Servers with Claude

# Check what is connected and what is broken
claude mcp list

# Authenticate a server showing 'needs authentication'
claude mcp login sentry

# Bring over everything already set up in Claude Desktop
claude mcp add-from-claude-desktop
claude mcp login sentry --no-browser
# Extend without changing what Claude is
claude --append-system-prompt "Always write a test for any new function"

# Replace, for a non-coding pipeline step
claude --system-prompt "You are a JSON extraction agent. Output only valid JSON."

Claude Skills Explained

these GitHub repositories

# Read-only diagnostic: install health, settings errors, auth state
claude doctor
# Start with every customisation disabled
claude --safe-mode
claude daemon status

# Stop the supervisor but leave the sessions running
claude daemon stop --any --keep-workers
claude update

# Or pin a specific version
claude install 2.1.195

# Restart background sessions so they pick up the new binary
claude respawn --all
// оригинал
Analytics Vidhya ↗ Читать оригинал
6 просмотров
// поделиться Telegram VK