Skip to content

Сначала исследуй ​

/opsx:explore — это ваш партнёр по обдумыванию. Обращайтесь к нему каждый раз, когда есть проблема, но ещё нет плана. Он исследует вашу кодовую базу, взвешивает с вами варианты и проясняет, чего вы на самом деле хотите, — всё до появления хотя бы одного артефакта или строки кода. Когда картина становится чёткой, он передаёт эстафету команде /opsx:propose.

Если вы вынесете из этой документации только одну привычку, пусть это будет именно она: когда не уверены — сначала исследуйте, а потом предлагайте.

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

Когда нужно исследовать ​

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

  • Вы знаете проблему, но не решение. («Страницы тормозят». «Аутентификация — беспорядок». «Постоянно создаются дубликаты заказов».)
  • Вы выбираете между подходами и хотите увидеть компромиссы применительно к вашему реальному коду.
  • Вы недавно в кодовой базе и хотите понять, как что-то работает, прежде чем вносить изменения.
  • Требования размыты, и вы хотите их конкретизировать до того, как брать на себя обязательства.
  • Вы подозреваете, что работа больше или меньше, чем кажется, и хотите честно оценить объём.

Пропускайте Explore только тогда, когда вы уже точно знаете, что и как хотите сделать. В таком случае сразу переходите к /opsx:propose.

Что он делает (и чего не делает) ​

Explore — это разговор, а не генератор.

Он делает:

  • Читает и ищет по вашей кодовой базе, чтобы ответить на реальные вопросы.
  • Сравнивает варианты и называет компромиссы каждого.
  • Рисует диаграммы, чтобы сделать проект наглядным.
  • Помогает сузить расплывчатую идею до конкретной, готовой к реализации области.
  • Передаёт управление /opsx:propose, когда вы будете готовы.

Он не делает:

  • Не создаёт папку с изменением.
  • Не пишет никаких артефактов (ни предложения, ни спецификаций, ни дизайна, ни задач).
  • Не пишет и не изменяет код.

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

Он уже установлен ​

Хорошая новость: /opsx:explore включён в стандартный профиль core вместе с propose, apply, update, sync и archive. Вам не нужно ничего включать. Если OpenSpec настроен в вашем проекте, Explore готов к работе в вашем AI-чате. (Как и все команды /opsx:*, вы вводите её в чате ассистента, а не в терминале. См. Как работают команды.)

Полный пример ​

Посмотрите, как смутное беспокойство превращается в чёткое, реализуемое изменение.

text
Вы: /opsx:explore

AI:  Что бы вы хотели исследовать?

Вы: Наша оплата иногда создаёт дубликаты заказов. Я не знаю почему
    и не знаю, как исправить это безопасно.

AI:  Давайте я покопаюсь в пути оформления заказа…
     [читает сервис заказов, обработчик платёжного webhook и логику
      отправки клиента]

     Вот что я нашёл. Дубликаты могут возникать двумя путями:

     1. Клиент может отправить заказ дважды (двойной клик, повторная попытка
        при медленной сети). Никакой защиты от дребезга нет.
     2. Платёжный webhook может сработать несколько раз, и обработчик
        создаёт заказ при каждом срабатывании. Нет ключа идемпотентности.

     Причина №2 самая опасная: она может дважды списать деньги и дважды
     собрать заказ.

     Три способа исправить, примерно в порядке надёжности:
     - Ключ идемпотентности на эндпоинте создания заказа (устраняет обе причины)
     - Дедупликация в webhook по идентификатору платёжного намерения
       (устраняет только №2)
     - Защита от дребезга на клиенте (устраняет только №1, маскирует
       настоящую ошибку)

     Учитывая, что ваш код уже хранит идентификатор платёжного намерения,
     подход с ключом идемпотентности — небольшое изменение с наибольшей
     отдачей. Хотите, чтобы я оценил объём?

Вы: Да, давай сделаем ключ идемпотентности.

Вы: /opsx:propose add-order-idempotency-key

AI:  Создана папка openspec/changes/add-order-idempotency-key/ с предложением
     и дельта-спецификацией, основанными на том, что мы только что нашли.
     Готово к реализации.

Обратите внимание, что произошло. Исходной точкой было «что-то не так, и мне страшно это трогать». Двадцать секунд исследования превратили это в названную первопричину, три проранжированных варианта, рекомендацию, связанную с существующим кодом, и точное изменение. Предложение, которое последует за этим, острое, потому что мышление произошло заранее.

Переход к propose ​

Explore ни во что не архивируется. Когда вы готовы, вы просто запускаете изменение, и ИИ переносит контекст вашего разговора в артефакты.

text
explore  ──►  propose  ──►  apply  ──►  archive
 (думай)      (согласуй)    (строй)     (записывай)

Вы можете сказать это простым языком («давай превратим это в изменение») или сразу выполнить /opsx:propose <имя>. В любом случае исследование, которое вы только что провели, станет основой предложения, а не выброшенным чатом.

Если вы используете расширенный набор команд, Explore может передать управление команде /opsx:new для пошагового создания артефактов. См. Рабочие процессы.

Советы для хорошего исследования ​

  • Приносите проблему, а не решение. «Вход в систему ощущается медленным» даёт ИИ пространство для исследования. «Добавь Redis-кэш» заранее привязывает вас к ответу, который вы ещё не проверили.
  • Спрашивайте о компромиссах вслух. «Какие недостатки у каждого варианта?» даёт более честное сравнение.
  • Позвольте ему сначала прочитать. Лучшие исследования начинаются с того, что ИИ действительно смотрит на ваш код, а не угадывает. Укажите на нужную область, если это поможет.
  • Можно свернуть. Если исследование показывает, что идея того не стоит, это победа. Вы узнали это дёшево.
  • Исследуйте снова в середине изменения. Застряли во время /opsx:apply? Вы можете вернуться назад и исследовать подзадачу, а затем продолжить.

Честные компромиссы ​

Что вы приобретаете: Explore ловит неверные повороты в самый дешёвый момент, до появления любого артефакта. Он особенно силён в незнакомом коде, где способность ИИ читать и обобщать систему экономит вам целый день раскопок.

Чем вы платите: небольшим терпением. Explore — это разговор, поэтому он медленнее, чем запуск /opsx:propose на авось. Для работы, которую вы уже действительно понимаете, этот дополнительный шаг — чистая потеря времени, и его следует пропускать.

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

Куда двигаться дальше ​