Skip to content

Как работают команды

Главное, что нужно знать: у OpenSpec есть два вида команд, и они работают в двух разных местах.

  • Команды вида openspec ... работают в вашем терминале. (Пример: openspec init.)
  • Команды вида /opsx:... работают в чате вашего ИИ-ассистента. (Пример: /opsx:propose.)

Если вы когда-нибудь вводите /opsx:propose в терминал и ничего не происходит, причина описана на этой странице. Вы обращаетесь не к той половине OpenSpec. Слэш-команды — это не терминальные команды. Это инструкции, которые вы даёте вашему ИИ-ассистенту по программированию, в том же окне чата, куда вы обычно пишете «добавить форму входа».

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

Две половины

OpenSpec — это один проект, выполняющий две роли.

CLI (терминальная половина). Программа под названием openspec, которую вы устанавливаете и запускаете из командной оболочки. Она настраивает ваш проект, выводит список и проверяет изменения, показывает панель управления и архивирует завершённую работу. Вы вводите эти команды в iTerm, терминал VS Code, PowerShell — в любом месте, где вы обычно запускаете git или npm.

bash
openspec init        # настроить OpenSpec в этом проекте
openspec list        # посмотреть активные изменения
openspec view        # открыть интерактивную панель управления

Слэш-команды (часть для чата). Короткие команды вида /opsx:propose и /opsx:apply, которые вы вводите в чат ИИ-ассистента. Они указывают ИИ следовать рабочему процессу OpenSpec: составить проект предложения, написать спецификации, реализовать функциональность по списку задач, архивировать работу после завершения. Вы вводите эти команды в Claude Code, Cursor, Windsurf, Copilot или любой другой используемый вами ассистент.

text
/opsx:propose add-dark-mode    (вводится в чат ИИ)
/opsx:apply                    (вводится в чат ИИ)
/opsx:archive                  (вводится в чат ИИ)

Вот упрощённая схема для понимания:

text
        ВАШ ТЕРМИНАЛ                         ЧАТ ВАШЕГО ИИ-АССИСТЕНТА
   ┌──────────────────────┐               ┌──────────────────────────────┐
   │  $ openspec init     │   устанавливает │  /opsx:propose add-dark-mode  │
   │  $ openspec list     │  ──────────►  │  /opsx:apply                  │
   │  $ openspec view     │   команды    │  /opsx:archive                │
   └──────────────────────┘    и навыки   └──────────────────────────────┘
        запускайте openspec здесь                       запускайте /opsx:* здесь

Обратите внимание на стрелку. Запуск openspec init в терминале как раз и устанавливает слэш-команды в ваш ИИ-инструмент. Терминальная половина настраивает часть для чата. После этого основная ежедневная работа происходит в чате.

«Как запустить интерактивный режим?»

Отдельного интерактивного режима для запуска не существует. Этот вопрос возникает очень часто, поэтому он заслуживает простого ответа.

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

Поэтому правильные инструкции выглядят так:

  1. Откройте ИИ-ассистент по программированию (Claude Code, Cursor, Windsurf и другие) в вашем проекте.
  2. Введите /opsx:propose в его чат, в том же месте, куда вы пишете любые другие запросы.
  3. Следите за автодополнением: если OpenSpec установлен, при вводе слэша вы увидите /opsx:propose, /opsx:apply и другие похожие команды.

Всё. Никакого режима для переключения, никакого демона для запуска, никакого отдельного окна.

Единственная по-настоящему интерактивная функция находится в терминале: openspec view. Она открывает панель управления для просмотра ваших спецификаций и изменений. Но это всего лишь средство просмотра, а не инструмент для создания предложений и реализации функциональности. Разработка происходит через слэш-команды в чате.

Почему существует такое разделение

Стоит разобраться в этом, потому что это объясняет, почему OpenSpec работает с более чем 25 разными ИИ-инструментами.

CLI — это движок. Он знает все правила: как выглядит папка с изменением, какие артефакты зависят от каких, как объединить дельта-спецификацию с вашим источником правды. Он работает одинаково везде.

Слэш-команды — это руль, и у каждого ИИ-инструмента он немного отличается. В Claude Code они называются командами. У Cursor и Windsurf свои форматы. Некоторые инструменты называют их навыками. Когда вы запускаете openspec init, OpenSpec генерирует нужный тип файла для каждого выбранного вами инструмента, поэтому одно и то же намерение /opsx:propose работает независимо от того, какой ассистент вы используете.

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

Синтаксис слэш-команд для разных инструментов

Намерение везде одинаковое. Отличается только пунктуация. Используйте форму, соответствующую вашему ассистенту.

ИнструментКак вводить
Claude Code/opsx:propose, /opsx:apply
Cursor/opsx-propose, /opsx-apply
Windsurf/opsx-propose, /opsx-apply
GitHub Copilot (IDE)/opsx-propose, /opsx-apply
CodeArtsв стиле навыков, например /openspec-propose
Codexв стиле навыков через .codex/skills/openspec-*
Oh My Pi/opsx-propose, /opsx:apply
Kimi CLIв стиле навыков, например /skill:openspec-propose
Trae/opsx-propose, /opsx-apply

Большинство инструментов используют либо форму с двоеточием (/opsx:propose), либо форму с дефисом (/opsx-propose). Несколько инструментов представляют OpenSpec как именованные навыки вместо слэш-команд; для них вы вызываете навык по имени. Полный список для каждого инструмента, включая точные пути для записи файлов, находится в разделе Поддерживаемые инструменты.

Если сомневаетесь, введите слэш в чат ИИ и посмотрите на автодополнение. Ваш инструмент покажет форму, которую он ожидает.

Как команды попадают в инструменты: навыки и команды

Когда вы запускаете openspec init (или openspec update), OpenSpec записывает небольшие файлы в ваш проект, чтобы ваш ИИ-инструмент мог найти рабочий процесс. В зависимости от вашего инструмента и настроек это могут быть навыки, команды или то и другое.

  • Навыки хранятся в папках вида .claude/skills/openspec-*/SKILL.md. Это формирующийся межинструментальный стандарт: папка с инструкциями, которую ассистент обнаруживает автоматически.
  • Команды хранятся в файлах вида .claude/commands/opsx/<id>.md. Это устаревшие файлы слэш-команд для отдельных инструментов. Для Codex файлы команд не генерируются; используйте .codex/skills/openspec-*.

Вам не нужно задумываться, что использует ваш инструмент. Просто введите слэш-команду, и она сработает. Но знание о существовании этих файлов помогает, если что-то пошло не так: если ваши команды исчезли, обычно это значит, что эти файлы отсутствуют или устарели, и openspec update перегенерирует их.

Точные пути для каждого инструмента смотрите в разделе Поддерживаемые инструменты, а то, как навыки заменили старый подход только с командами, — в Руководстве по миграции.

Проверка установки

Быстрые проверки, от самой быстрой:

  1. Введите слэш в чат ИИ. Начните вводить /opsx и следите за предложениями автодополнения. Если они появляются, всё готово.
  2. Найдите файлы. Для Claude Code проверьте, что в папке .claude/skills/ есть папки openspec-*. Другие инструменты используют собственные директории (они перечислены в разделе Поддерживаемые инструменты).
  3. Повторно запустите настройку. Из корня вашего проекта выполните openspec update. Эта команда перегенерирует файлы навыков и команд для всех настроенных вами инструментов.
  4. Перезапустите ассистент. Многие инструменты сканируют навыки и команды при запуске, поэтому открытие нового окна может решить проблему.

Какие команды у меня есть по умолчанию?

По умолчанию OpenSpec устанавливает базовый набор слэш-команд:

  • /opsx:explore: продумайте идею вместе с ИИ, прежде чем приступать к изменению (отличный первый шаг, если вы не уверены)
  • /opsx:propose: создайте изменение и сразу составьте все артефакты планирования для него
  • /opsx:apply: реализуйте изменение, выполняя задачи из его списка
  • /opsx:sync: объедините обновления спецификаций изменения с вашими основными спецификациями (обычно происходит автоматически)
  • /opsx:archive: завершите изменение и поместите его в архив

Хороший стандартный ритм работы: explore, когда вы определяете, что нужно сделать, затем propose, apply, archive. В руководстве Сначала исследование объясняется, почему этот начальный шаг стоит усилий.

Также есть расширенный набор для тех, кто хочет более тонкого контроля (/opsx:new, /opsx:continue, /opsx:ff, /opsx:verify, /opsx:bulk-archive, /opsx:onboard). Вы включаете его командой openspec config profile, а затем применяете с помощью openspec update.

Если вы новичок во всём этом? /opsx:onboard (из расширенного набора) проведёт вас через полный цикл изменения в вашем кодовом массиве, рассказывая о каждом шаге. Это самое дружелюбное введение в систему.

Подробное описание работы каждой команды смотрите в разделе Команды, а то, когда какую команду использовать, — в разделе Рабочие процессы.

Первый запуск без проблем

Подведём итоги: вот полная последовательность шагов с указанием места их выполнения.

text
ТЕРМИНАЛ   $ npm install -g @fission-ai/openspec@latest
ТЕРМИНАЛ   $ cd your-project
ТЕРМИНАЛ   $ openspec init
              (устанавливает слэш-команды в ваш ИИ-инструмент)

ЧАТ ИИ      /opsx:explore
              (необязательно: сначала продумайте идею вместе с ИИ)

ЧАТ ИИ      /opsx:propose add-dark-mode
              (ИИ составляет проект предложения, спецификации, дизайн, задачи)

ЧАТ ИИ      /opsx:apply
              (ИИ реализует функциональность, отмечая выполненные задачи)

ЧАТ ИИ      /opsx:archive
              (изменение объединяется с вашими спецификациями и помещается в архив)

Два шага в терминале для настройки. После этого вы работаете в чате. Это и есть стандартный ритм.

Связанные разделы