Урок 8 из 8 · 20 мин · обновлено
Сессии, фоновые агенты и что дальше
Как управлять сессиями в OpenCode 2: /new, /sessions, /compact, продолжение в приложении и браузере. Фоновые подагенты, свои команды в .opencode/commands, MCP коротко. Что делать, когда агент ходит по кругу, и как развиваться дальше.
Одна задача — одна сессия
Сессия — это один разговор с агентом со всей его историей. Чем длиннее сессия, тем больше текста модель перечитывает при каждом ответе: она начинает путаться в старых деталях, отвечает медленнее, а платная модель обходится дороже.
Привычка, которая сильно помогает: новая задача — новая сессия.
/new— начать новую сессию. Правила из AGENTS.md агент прочитает заново./sessions— список прошлых сессий: можно вернуться к любой и продолжить./compact— сжать текущий разговор в краткое содержание. Пригодится, если задача ещё не закончена, а история уже огромная.
Из терминала последнюю сессию в папке продолжают так:
opencode -c
Одна сессия — три окна
Во второй версии сессии хранит фоновый сервер OpenCode на вашем компьютере. Поэтому одну и ту же сессию видно и в терминале, и в приложении для компьютера, и в браузере. Начали в терминале — продолжили в приложении, где удобнее читать длинные изменения.
Чтобы открыть OpenCode в браузере, выполните в терминале:
opencode pair
Команда напечатает ссылку. Она одноразовая и действует пять минут.
Фоновые подагенты
Агент Build может поручать часть работы подагентам — вспомогательным агентам со своей задачей. Например, подагент explore быстро ищет по коду нужные места, пока основной агент продолжает думать над задачей. Во второй версии подагенты работают в фоне: основной агент не ждёт их, а получает результат, когда он готов.
Обычно Build сам решает, когда звать подагента. Но можно и попросить:
Пусть подагент найдёт все места, где сохраняются данные
в localStorage, а ты пока продумай экспорт отметок в файл.
Свои команды
Если одно и то же задание вы пишете снова и снова, сохраните его своей командой. Создайте в проекте файл .opencode/commands/proverka.md:
---
description: Проверка перед коммитом
---
Проверь изменения с последнего коммита (git diff):
- нет ли ошибок и забытых отладочных строк;
- соблюдены ли правила из AGENTS.md;
- не сломаны ли старые функции.
Ничего не исправляй, только перечисли проблемы.
$ARGUMENTS
Теперь в OpenCode достаточно ввести /proverka. Всё, что напишете после имени команды, подставится вместо $ARGUMENTS: например, /proverka особенно тёмную тему.
Ещё один способ расширить агента — MCP-серверы. Они дают агенту новые инструменты: доступ к базе данных, браузеру, трекеру задач. Начинать с них не нужно, но когда агенту не хватит возможностей, ищите подходящий MCP-сервер.
Когда агент ходит по кругу
Иногда агент исправляет ошибку, ломает другое место, исправляет его — и возвращает первую ошибку. С каждой попыткой код запутаннее. Что помогает:
- Остановиться после трёх попыток. Четвёртая обычно не лучше.
- Откатить неудачные правки:
/undoнесколько раз илиgit restore .до последнего коммита. - Начать новую сессию и описать проблему коротко и конкретно: что делали, что ожидали, что получили. Длинная история с неудачными попытками сбивает модель.
- Сменить модель на более сильную или просто другую.
- Сначала попросить план в режиме Plan: «Почему может возникать эта ошибка? Предложи гипотезы, код не меняй».
Что дальше
Вы прошли путь от установки до проекта с правилами, Git и своими командами. Дальше стоит:
- работать на своих задачах — проект, который вам действительно нужен, учит быстрее учебного;
- разобраться в терминале и Git — курсы «Командная строка и Linux» и «Git и GitHub» на этом сайте;
- учиться читать код — чем лучше вы понимаете, что пишет агент, тем точнее ставите задачи и быстрее находите ошибки.
Попробуйте сами. Создайте команду /proverka из урока. Затем начните новую сессию, попросите агента добавить экспорт отметок в файл, а перед коммитом запустите /proverka. Исправьте найденное и сделайте коммит.
Как может пройти проверка
Агент прочитает git diff и ответит списком, например:
1. В функции exportMarks остался console.log — уберите
перед коммитом.
2. Имя файла экспорта на английском, а в AGENTS.md
правило: тексты интерфейса на русском.
3. Старые функции не затронуты.
Попросите исправить пункты 1 и 2, проверьте экспорт в браузере и сделайте коммит. Если команда не появляется в списке после /, проверьте путь: папка .opencode с точкой, внутри commands, а файл с расширением .md.
Мини-тест: проверьте себя
Закрепите урок: несколько вопросов, разбор ответов — в конце.
-
Вы закончили тёмную тему и переходите к экспорту отметок в файл. Что разумно сделать?
Новая задача — новая сессия. Агенту не мешает длинная история про другую задачу, а AGENTS.md он прочитает заново.
-
Для чего команда /compact?
Длинная история перегружает модель. Краткое содержание сохраняет главное и освобождает место.
-
Агент третий раз «исправляет» одну ошибку, и становится только хуже. Что делать?
Когда агент ходит по кругу, длинная история с неудачными попытками мешает. Чистый старт или более сильная модель обычно помогают быстрее.
-
Вы перед каждым коммитом просите агента проверить код одним и тем же длинным текстом. Как упростить?
Своя команда — сохранённое задание. Вызываете её коротким именем, а текст всегда одинаковый.