JavaRush /Курсы /Claude code /Команды запуска и команды в сессии

Команды запуска и команды в сессии

Claude code
1 уровень , 3 лекция
Открыта

1. Два слоя, которые легко спутать

Команды Claude Code кажутся одной кучей — и из-за этого легко смешать два момента: вход в CLI и управление уже идущей работой. Дальше начинается классика: человек пишет /compact в терминале или пытается «добавить» флаг запуска внутри открытой сессии. Не туда.

При первом запуске вы это уже видели: claude открывал сессию из shell, а /doctor и /status работали внутри неё.

Терминал shell
  └─ слой запуска: claude ...
       └─ открытая сессия Claude Code
            └─ команды внутри сессии: /help, /status, /clear, /compact ...

Правило простое. Команда определяет, как сессия стартует, — это слой запуска. Команда управляет уже идущей сессией — это команда внутри сессии. И это важнее названий: имена и флаги меняются от версии к версии, логика двух слоёв — нет.

2. Слой запуска: вход в работу

Пока Claude Code не запущен, вы находитесь в обычной оболочке ОС — Terminal, iTerm, PowerShell, Git Bash, WSL. Здесь решается не «что Claude сделает в разговоре», а как разговор начнётся.

Базовый случай — зайти в папку Commerce OS и открыть интерактивную сессию:

cd ~/projects/commerce-os
claude                    # открывает интерактивную сессию в текущей директории

Для первого рабочего дня этого хватает. Остальное ниже — карта вариантов старта, заучивать не нужно.

Одно короткое действие без диалога:

claude -p "Кратко опиши структуру проекта"   # одноразовый запуск; имя флага может отличаться по версии

Продолжить предыдущую сессию:

claude -c   # продолжить / resume прошлую сессию; точное имя флага зависит от версии

Задать на старте рамку работы — режим permissions, отдельный worktree:

claude --permission-mode plan         # пример задания режима на старте; имя режима может отличаться
claude --worktree ../commerce-os-exp  # пример запуска в отдельном worktree; синтаксис зависит от версии

Везде одно: вы ещё не внутри живой беседы, вы настраиваете точку входа. Такие команды ищите в claude --help или документации, а не в /help сессии.

Контрольный вопрос: «Я меняю способ запуска или управляю уже начатым разговором?» Ответ про запуск — вы во внешнем слое. Отсюда типичная ошибка: вы внутри сессии и хотите «добавить» --permission-mode, но флаг работает до появления сессии.

3. Команды внутри сессии: управление разговором

Сессия активна — вы не запускаете процесс, а живёте внутри него: диалог, накопленный контекст, прочитанные файлы, история. Команды со слэшем не «создают нового Claude», а наводят порядок в открытом разговоре.

Базовая — /help: локальный источник правды о том, что умеет именно ваша версия. Сомневаетесь в имени команды — сюда, а не в пост «10 суперкоманд Claude Code».

Типичный фрагмент живой сессии:

$ claude
> /help
> /status
> /doctor
> /context
> /compact
> /diff

Что делает каждая. /status — текущее состояние. /doctor — проверка среды и диагностика. /context — чем заполнен рабочий контекст. /compact — сжать длинную историю. /clear — очистить диалог. /diff — изменения в коде глазами Claude. /permissions — разрешения именно в текущей сессии. /rewind — восстановление состояния этой сессии, не перезапуск Claude как программы.

Разница видна на паре действий. История разрослась — берёте /compact, это изменение состояния текущей сессии. Нужна другая сессия или другой запуск — слэш не поможет, возвращаетесь к слою запуска.

Эти команды работают с тем, что уже накопилось. Напишете /clear в обычной оболочке — shell примет это за непонятный набор символов. И будет прав.

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

4. Быстрый выбор слоя

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

Ситуация Нужный слой Примеры
Нужно открыть Claude Code в проекте Слой запуска
claude
Нужно сделать одноразовый короткий запрос Слой запуска
claude -p "..."
Нужно продолжить прошлую сессию Слой запуска
claude -c
Нужно задать флаг запуска, режим или worktree Слой запуска
--permission-mode
,
--worktree
Нужно посмотреть состояние уже открытой сессии Команды внутри сессии
/status
,
/doctor
Нужно очистить или сжать историю разговора Команды внутри сессии
/clear
,
/compact
Нужно посмотреть текущий контекст или diff Команды внутри сессии
/context
,
/diff
Нужно скорректировать работу текущей сессии Команды внутри сессии
/permissions
,
/review
и похожие

Если хочется ещё проще, можно использовать вот такую формулу. Если Claude Code ещё не открыт, почти наверняка вам нужна команда запуска. Если Claude Code уже открыт и вы видите диалог, почти наверняка вам нужна команда внутри сессии.

Посмотрите на пару типичных промахов. Человек пишет в shell:

$ /compact

Это неверно не потому, что /compact — «плохая команда», а потому, что она отправлена не в тот слой. Точно так же неверно ожидать, что внутри уже открытой сессии можно внезапно «добавить» себе флаг запуска прошлым числом. Ошибка здесь не в незнании синтаксиса, а в путанице между моментами управления.

И вот это очень хорошая новость для обучения: вам не нужно запомнить сотню команд. Вам нужно научиться отличать момент входа от момента управления.

5. Слои в деле: сценарий в Commerce OS

Теперь давайте посмотрим на реальный маленький сценарий в нашем сквозном проекте Commerce OS. Допустим, вы открыли репозиторий и хотите сначала просто зайти в Claude Code, потом проверить состояние, потом сжать контекст, а позже сделать короткий одноразовый запрос по diff. На словах всё просто, но именно на таком повседневном маршруте и закрепляется понимание двух слоёв.

Сначала вы заходите в проект и запускаете Claude Code. Это слой запуска:

cd ~/projects/commerce-os
claude   # открыли интерактивную сессию в репозитории

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

> /status
> /doctor

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

> /context
> /compact

Если после этого Claude предложил изменения, вы можете проверить их через команду внутри сессии:

> /diff

А теперь представим, что вы уже закончили основную беседу и отдельно хотите быстро получить краткое резюме текущего diff без новой длинной интерактивной сессии. Вот тут вы снова выходите в слой запуска и делаете что-то вроде одноразового вызова:

claude -p "Кратко опиши текущие изменения в проекте"   # пример one-shot запуска

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

Ещё один характерный пример. Допустим, вы понимаете, что хотите не просто очистить разговор, а открыть другой способ работы, например отдельный worktree для эксперимента. /clear тут не поможет, потому что он относится к текущей сессии. Вам нужен новый запуск с нужными параметрами. А если вы уже в нужной сессии и просто хотите не потеряться в накопленном диалоге, тогда как раз бессмысленно «перезапускать всё» — достаточно /compact или /clear, в зависимости от ситуации.

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

6. Момент важнее названия

В этой лекции есть одна особенно важная мысль, и она выходит далеко за пределы конкретного списка команд. Claude Code развивается, команды могут переименовываться, некоторые флаги и возможности — меняться, а часть интерфейса — вести себя чуть иначе в новой версии. Если пытаться учить инструмент как таблицу «раз и навсегда», можно довольно быстро поссориться с реальностью.

Нам нужен другой навык — привычка запоминать не «волшебные команды», а логику места и момента. Есть помощь CLI до старта, есть /help внутри сессии, есть claude --version для понимания текущей версии и есть официальная документация как внешний источник правды. Всё остальное — уже детали конкретной сборки инструмента.

Полезно даже проговаривать это про себя. Если вы стоите в shell и думаете: «Мне нужно открыть Claude определённым способом», идите в claude --help. Если вы уже внутри Claude и думаете: «Мне нужно понять, чем можно управлять в текущей сессии», идите в /help. Эта привычка кажется мелочью, но именно она спасает от устаревших гайдов, старых скриншотов и советов формата «у меня работало полгода назад».

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

Комментарии
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ