раздел 01 · подстраница 1

Почему CLI, а не IDE-плагин

Claude Code живёт в терминале, а не как кнопка внутри VS Code. Это первое, что удивляет новичка после Copilot и Cursor. Разберём, почему Anthropic пошли именно по этому пути и что это даёт в реальной работе.

Зачем это

IDE-плагины удобны, пока вы пишете код руками в одной IDE. Но как только задача выходит за пределы редактора - запустить тесты, открыть докер, проверить SSH на сервере, прогнать миграцию, написать commit-сообщение - плагин начинает упираться в стены своей среды.

Терминал стен не знает. Это универсальная точка входа в систему: файлы, процессы, сеть, git, docker, ssh, pip, npm - всё это уже здесь. Claude Code просто становится ещё одной программой в этом потоке.

Практический эффект:

  • Можно работать в любой IDE, в Vim, в Sublime, или вообще без IDE.
  • Можно запускать Claude в SSH-сессии на сервере.
  • Можно встроить в скрипт, в Makefile, в CI/CD.
  • Можно собирать pipeline'ы из нескольких Claude-агентов.

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

Claude Code - это процесс, который читает ваш текст, исполняет инструменты (Read, Edit, Bash, Grep, WebFetch) и пишет ответ. Все инструменты работают через ту же оболочку, что и вы.

# Запуск из любой папки проекта
cd ~/projects/my-app
claude

# Запуск с прямым промптом
claude "найди все TODO в репозитории и сделай из них issues.md"

# Запуск в headless-режиме для скриптов
claude -p "сгенерируй CHANGELOG.md из последних 20 коммитов" > CHANGELOG.md

Поскольку это обычная CLI-программа, её можно комбинировать с любыми Unix-инструментами:

# Передать вывод другой команды на вход Claude
git diff | claude -p "напиши commit-message в imperative mood"

# Запустить из cron
0 9 * * * cd /repo && claude -p "проверь pyproject.toml на устаревшие пакеты" | mail -s "deps" me@example.com

Что это даёт сверх IDE-плагина

Главное преимущество - расширяемость через четыре механизма, которых в плагинах нет или они урезаны:

Hooks - скрипты, которые автоматически запускаются на события Claude Code: после редактирования файла, перед запуском bash-команды, после остановки агента. Можно повесить prettier на каждое сохранение, или запретить rm -rf, или отправлять уведомление в Telegram когда задача готова.

MCP (Model Context Protocol) - стандарт подключения внешних инструментов. Один и тот же MCP-сервер (Playwright, Linear, Postgres, ваш собственный API) работает в Claude Code, Claude Desktop и любом другом MCP-клиенте.

Кастомные команды и агенты - кладёте .md-файл в .claude/commands/ и получаете свою slash-команду. Кладёте в .claude/agents/ - получаете специализированного суб-агента (code-reviewer, doc-writer, tester).

CI/CD - в headless-режиме (claude -p) можно встраивать в GitHub Actions, GitLab CI, любой pipeline. Auto-review PR'ов, генерация changelog, обновление документации после релиза.

Сравнение с альтернативами

| Инструмент | Где живёт | Что умеет вне редактора | Расширяемость | | ---------------- | -------------------- | ---------------------------------- | --------------------------- | | GitHub Copilot | Плагин в IDE | Почти ничего | Только chat-extensions | | Cursor | Форк VS Code | В пределах IDE | Rules, MCP (ограниченно) | | Windsurf | Своя IDE | В пределах IDE | Cascade, MCP | | Claude Code | CLI + IDE-extension | Всё, что умеет ваш shell | Hooks, MCP, subagents, CI |

Cursor и Windsurf - отличные редакторы, но они привязывают вас к одной IDE. Когда вы запускаете тесты в Docker на удалённом сервере или собираете прод-pipeline - вы выходите за их границы.

Claude Code не конкурирует с IDE. Он живёт рядом: можно одновременно использовать Cursor для редактирования и Claude Code в терминале для сложных задач. Они даже видят друг друга через IDE-расширение (см. раздел про IDE-интеграцию).

Антипаттерны

  • Открывать Claude Code только чтобы дописать одну строку. Для микро-автокомплита есть Cursor/Copilot - они быстрее.
  • Бояться терминала. Если вы знаете cd, ls, git - вы уже умеете достаточно.
  • Считать, что CLI = только текст. Claude Code умеет показывать diff'ы, читать скриншоты (drag&drop) и работать с любыми бинарными файлами через bash.

Полезные ссылки