Skip to content

Команды

Это справочник по слэш-командам OpenSpec. Эти команды вызываются в чат-интерфейсе вашего помощника по кодированию на базе ИИ (например, Claude Code, Cursor, Windsurf).

Для ознакомления с шаблонами рабочего процесса и тем, когда следует использовать каждую команду, см. Workflows. Для команд CLI см. CLI.

Краткий справочник

Стандартный быстрый путь (core профиль)

CommandPurpose
/opsx:proposeСоздать изменение и сгенерировать артефакты планирования за один шаг
/opsx:exploreОбдумать идеи перед тем, как фиксировать изменение
/opsx:applyРеализовать задачи из изменения
/opsx:syncСлить спецификации дельта в основные спецификации
/opsx:archiveАрхивировать завершенное изменение

Расширенные команды рабочего процесса (выбор настроенного рабочего процесса)

CommandPurpose
/opsx:newНачать новый каркас изменения
/opsx:continueСоздать следующий артефакт на основе зависимостей
/opsx:ffУскоренное продвижение (Fast-forward): создать все артефакты планирования сразу
/opsx:verifyПроверить, что реализация соответствует артефактам
/opsx:bulk-archiveАрхивировать несколько изменений одновременно
/opsx:onboardПошаговое руководство по полному рабочему процессу

Стандартный глобальный профиль — core. Чтобы включить расширенные команды рабочего процесса, выполните openspec config profile, выберите рабочие процессы, а затем выполните openspec update в своем проекте.

Справочник команд

/opsx:propose

Создает новое изменение и генерирует артефакты планирования за один шаг. Это команда по умолчанию для старта в профиле core.

Синтаксис:

text
/opsx:propose [change-name-or-description]

Аргументы:

АргументОбязателенОписание
change-name-or-descriptionНетИмя в kebab-case или описание изменения на обычном языке

Что делает:

  • Создает openspec/changes/<change-name>/
  • Генерирует артефакты, необходимые перед реализацией (для spec-driven: предложение, спецификации, дизайн, задачи)
  • Останавливается, когда изменение готово для /opsx:apply

Пример:

text
You: /opsx:propose add-dark-mode

AI:  Создана openspec/changes/add-dark-mode/
     ✓ proposal.md
     ✓ specs/ui/spec.md
     ✓ design.md
     ✓ tasks.md
     Готово к реализации. Запустите /opsx:apply.

Советы:

  • Используйте это для самого быстрого сквозного процесса
  • Если вы хотите контролировать артефакты поэтапно, включите расширенные рабочие процессы и используйте /opsx:new + /opsx:continue

/opsx:explore

Начните здесь, если вы не уверены. Explore — это партнер по мышлению без обязательств: он читает вашу кодовую базу, сравнивает варианты и преобразует расплывчатую идею в конкретный план до того, как появится какое-либо изменение. Он входит в состав профиля по умолчанию. Для полного обзора и примеров см. руководство Explore First.

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

Синтаксис:

/opsx:explore [topic]

Аргументы:

АргументОбязателенОписание
topicНетЧто вы хотите исследовать или изучить

Что делает:

  • Открывает исследовательский диалог без необходимости структуры
  • Исследует кодовую базу для ответа на вопросы
  • Сравнивает варианты и подходы
  • Создает визуальные диаграммы для уточнения мыслей
  • Может перейти к /opsx:propose (по умолчанию) или /opsx:new (расширенный рабочий процесс), когда идеи кристаллизуются

Пример:

text
You: /opsx:explore

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

You: Как нам следует обрабатывать аутентификацию для мобильного приложения?

AI:  Позвольте мне изучить вашу текущую настройку аутентификации...
     [Анализирует кодовую базу]

     Я вижу, что вы используете сессионную аутентификацию для веб-приложения.
     Для мобильной версии у нас есть три основных варианта:

     1. JWT токены (stateless, работает офлайн)
     2. OAuth2 (если вам нужен вход через сторонние сервисы)
     3. Расширить текущие сессии (проще, но требует подключения к сети)

     Ваш API уже настроен с CORS. Какой направление вас интересует?

You: Давайте остановимся на JWT. Можем ли мы начать изменение для этого?

AI:  Готов, когда вы будете готовы. Запустите /opsx:propose add-jwt-auth, чтобы начать.

Советы:

  • Используйте, когда требования неясны или вам нужно провести исследование
  • Во время исследования артефакты создаются не создаются
  • Хорошо подходит для сравнения нескольких подходов перед принятием решения
  • Может читать файлы и искать в кодовой базе

/opsx:new

Начните новый шаблон изменения. Создает папку изменения и ожидает, пока вы сгенерируете артефакты с помощью /opsx:continue или /opsx:ff.

Эта команда является частью расширенного набора рабочих процессов (не включена в профиль core по умолчанию).

Синтаксис:

/opsx:new [change-name] [--schema <schema-name>]

Аргументы:

АргументОбязателенОписание
change-nameНетИмя папки для изменения (запрашивается, если не предоставлено)
--schemaНетСхема рабочего процесса, которую нужно использовать (по умолчанию: из конфигурации или spec-driven)

Что делает:

  • Создает директорию openspec/changes/<change-name>/
  • Создает метафайл .openspec.yaml в папке изменения
  • Показывает первый шаблон артефакта, готовый к созданию
  • Запрашивает имя и схему изменения, если они не предоставлены

Что создает:

openspec/changes/<change-name>/
└── .openspec.yaml    # Метаданные изменения (схема, дата создания)

Пример:

You: /opsx:new add-dark-mode

AI:  Создана openspec/changes/add-dark-mode/
     Схема: spec-driven

     Готов создать: proposal
     Используйте /opsx:continue, чтобы создать его, или /opsx:ff, чтобы создать все артефакты.

Советы:

  • Используйте описательные имена: add-feature, fix-bug, refactor-module
  • Избегайте общих имен типа update, changes, wip
  • Схему также можно установить в конфигурации проекта (openspec/config.yaml)

/opsx:continue

Создает следующий артефакт в цепочке зависимостей. Создает по одному артефакту для постепенного прогресса.

Синтаксис:

/opsx:continue [change-name]

Аргументы:

АргументОбязателенОписание
change-nameНетКакое изменение нужно продолжить (выводится из контекста, если не предоставлено)

Что делает:

  • Запрашивает граф зависимостей артефактов
  • Показывает, какие артефакты готовы, а какие заблокированы
  • Создает первый готовый артефакт
  • Читает файлы зависимостей для контекста
  • Показывает, что станет доступным после создания

Пример:

You: /opsx:continue

AI:  Изменение: add-dark-mode

     Статус артефактов:
     ✓ proposal    (готово)
     ◆ specs       (готово)
     ◆ design      (готово)
     ○ tasks       (заблокировано - требуется: specs)

     Создаю specs...

     [Читает proposal.md, создает specs на основе требований]

     ✓ Создан openspec/changes/add-dark-mode/specs/ui/spec.md

     Теперь доступно: tasks
     Запустите /opsx:continue, чтобы создать следующий артефакт.

Советы:

  • Используйте, когда хотите просмотреть каждый артефакт перед продолжением
  • Хорошо подходит для сложных изменений, где нужен контроль
  • Несколько артефактов могут стать готовыми одновременно
  • Вы можете редактировать созданные артефакты, прежде чем продолжать

/opsx:ff

Быстрое создание (fast-forward) артефактов. Создает все планировочные артефакты сразу.

Синтаксис:

/opsx:ff [change-name]

Аргументы:

АргументОбязателенОписание
change-nameНетКакое изменение нужно быстро создать (выводится из контекста, если не предоставлено)

Что делает:

  • Создает все артефакты в порядке зависимостей
  • Отслеживает прогресс через список задач
  • Останавливается, когда завершены все артефакты apply-required
  • Читает каждую зависимость перед созданием следующего артефакта

Пример:

You: /opsx:ff add-dark-mode

AI:  Быстрое создание для add-dark-mode...

     ✓ Создается proposal.md
     ✓ Создаются specs/ui/spec.md
     ✓ Создается design.md
     ✓ Создаются tasks.md

     Все планировочные артефакты завершены!
     Готово к реализации. Запустите /opsx:apply, чтобы начать.

Советы:

  • Используйте, когда у вас есть четкое представление о том, что вы создаете
  • Быстрее, чем /opsx:continue, для простых изменений
  • Вы все равно можете редактировать артефакты позже
  • Хорошо подходит для небольших и средних функций

/opsx:apply

Реализует задачи из изменения. Проходит по списку задач, пишет код и отмечает выполненные пункты.

Синтаксис:

/opsx:apply [change-name]

Аргументы:

АргументОбязателенОписание
change-nameНетКакое изменение нужно реализовать (выводится из контекста, если не предоставлено)

Что делает:

  • Читает tasks.md и определяет незавершенные задачи
  • Проходит по задачам одну за другой
  • Пишет код, создает файлы, запускает тесты по мере необходимости
  • Отмечает задачи как выполненные с помощью чекбоксов [x]

Пример:

You: /opsx:apply

AI:  Реализация add-dark-mode...

     Чтение tasks.md:
     - [ ] 1.1 Создать ThemeContext
     - [ ] 1.2 Добавить CSS custom properties
     - [ ] 1.3 Реализовать сохранение в localStorage

     Работа над 1.1: Создание ThemeContext...
     [Создает src/context/ThemeContext.tsx]

     ✓ 1.1 Готово

     Работа над 1.2: Добавление CSS custom properties...
     [Обновляет src/styles/globals.css]

     ✓ 1.2 Готово
     ...

Советы:

  • Может возобновить работу, если прервано
  • Используйте для параллельных изменений, указав имя изменения
  • Состояние завершения отслеживается в чекбоксах tasks.md

/opsx:verify

Проверяет, соответствует ли реализация артефактам вашего изменения. Проверяет полноту, корректность и согласованность.

Синтаксис:

/opsx:verify [change-name]

Аргументы:

АргументОбязателенОписание
change-nameНетКакое изменение нужно проверить (выводится из контекста, если не предоставлено)

Что делает:

  • Проверяет три аспекта качества реализации
  • Ищет доказательства реализации в кодовой базе
  • Сообщает о проблемах, классифицированных как CRITICAL, WARNING или SUGGESTION
  • Не блокирует архивирование, но выявляет проблемы

Аспекты проверки:

АспектЧто проверяется
Полнота (Completeness)Все задачи выполнены, все требования реализованы, сценарии покрыты
Корректность (Correctness)Реализация соответствует замыслу спецификации, обработаны крайние случаи
Согласованность (Coherence)Решения о дизайне отражены в коде, паттерны последовательны

Пример:

You: /opsx:verify

AI:  Проверка add-dark-mode...

     ПОЛНОТА
     ✓ Все 8 задач в tasks.md отмечены
     ✓ Все требования в specs имеют соответствующий код
     ⚠ Сценарий "Обнаружение системных предпочтений" не имеет тестового покрытия

     КОРРЕКТНОСТЬ
     ✓ Реализация соответствует замыслу спецификации
     ✓ Обработаны крайние случаи из сценариев
     ✓ Состояния ошибок соответствуют определениям в спецификации

     СОГЛАСОВАННОСТЬ
     ✓ Решения о дизайне отражены в структуре кода
     ✓ Согласованность названий с design.md
     ⚠ Дизайн упоминает "CSS variables", но реализация использует классы Tailwind

     РЕЗЮМЕ
     ─────────────────────────────
     Критические проблемы: 0
     Предупреждения: 2
     Готово к архивированию: Да (с предупреждениями)

     Рекомендации:
     1. Добавить тест для обнаружения системных предпочтений
     2. Обновить design.md, чтобы отразить использование Tailwind, или рефакторинг для использования CSS variables

Советы:

  • Запускайте перед архивированием, чтобы вовремя выявить несоответствия
  • Предупреждения не блокируют архивирование, но указывают на потенциальные проблемы
  • Хорошо подходит для проверки работы AI перед коммитом
  • Может выявить расхождения между артефактами и реализацией

/opsx:sync

Необязательная команда. Слияние дельта-спецификаций из изменения в основные спецификации. Архив запросит синхронизацию, если это необходимо, поэтому обычно запускать ее вручную не нужно.

Синтаксис:

/opsx:sync [change-name]

Аргументы:

АргументОбязателенОписание
change-nameНетКакое изменение нужно синхронизировать (выводится из контекста, если не предоставлено)

Что делает:

  • Читает дельта-спецификации из папки изменения
  • Парсит разделы ADDED/MODIFIED/REMOVED/RENAMED
  • Сливает изменения в основную директорию openspec/specs/
  • Сохраняет существующий контент, не упомянутый в дельте
  • Не архивирует изменение (оно остается активным)

Пример:

text
You: /opsx:sync

AI:  Синхронизация дельта-спецификаций add-dark-mode...

     Чтение: openspec/changes/add-dark-mode/specs/ui/spec.md
     Цель:  openspec/specs/ui/spec.md

     Изменения для применения:
     ✓ ADDED: Требование выбора темы (2 сценария)
     ✓ ADDED: Требование доступности (1 сценарий)

     Слияние...
     ✓ openspec/specs/ui/spec.md обновлен

     Изменение остается активным. Запустите /opsx:archive, когда будете готовы завершить.

Когда использовать вручную:

СценарийИспользовать sync?
Длительное изменение, нужно чтобы спецификации были в основной версии перед архивированиемДа
Несколько параллельных изменений требуют обновленные базовые спецификацииДа
Хотите отдельно просмотреть/проверить слияниеДа
Быстрое изменение, сразу идете к архивированиюНет (архивация это обработает)

Советы:

  • Sync — это интеллектуальное слияние, а не копирование
  • Может добавлять сценарии в существующие требования без дублирования
  • Изменение остается активным после синхронизации (не архивируется)
  • Большинству пользователей никогда не понадобится вызывать это напрямую — архивация запросит, если необходимо

/opsx:archive

Архивирует завершенное изменение. Финализирует изменение и перемещает его в архивную папку.

Синтаксис:

/opsx:archive [change-name]

Аргументы:

АргументОбязателенОписание
change-nameНетКакое изменение нужно заархивировать (выводится из контекста, если не предоставлено)

Что делает:

  • Проверяет статус завершения артефактов
  • Проверяет выполнение задач (предупреждает, если они незавершенны)
  • Предлагает синхронизировать дельта-спецификации, если это еще не сделано
  • Перемещает папку изменения в openspec/changes/archive/YYYY-MM-DD-<name>/
  • Сохраняет все артефакты для аудита

Пример:

text
You: /opsx:archive

AI:  Архивирование add-dark-mode...

     Статус артефактов:
     ✓ proposal.md существует
     ✓ specs/ существует
     ✓ design.md существует
     ✓ tasks.md существует (8/8 задач завершено)

     Дельта-спецификации: Еще не синхронизированы
     → Синхронизировать сейчас? (рекомендуется)

You: Yes

AI:  ✓ Спецификации синхронизированы в openspec/specs/ui/spec.md
     ✓ Перемещено в openspec/changes/archive/2025-01-24-add-dark-mode/

     Изменение успешно заархивировано.

Советы:

  • Архив не будет блокирован незавершенными задачами, но предупредит об этом
  • Дельта-спецификации могут быть синхронизированы во время архивации или заранее
  • Заархивированные изменения сохраняются для истории
  • Сначала используйте /opsx:verify, чтобы выявить проблемы

/opsx:bulk-archive

Архивирует несколько завершенных изменений сразу. Обрабатывает конфликты спецификаций между изменениями.

Синтаксис:

/opsx:bulk-archive [change-names...]

Аргументы:

АргументОбязателенОписание
change-namesНетКонкретные изменения для архивирования (запрашивается выбор, если не предоставлено)

Что делает:

  • Перечисляет все завершенные изменения
  • Проверяет каждое изменение перед архивацией
  • Обнаруживает конфликты спецификаций между изменениями
  • Разрешает конфликты, проверяя, что на самом деле реализовано
  • Архивирует в хронологическом порядке

Пример:

You: /opsx:bulk-archive

AI:  Найдено 3 завершенных изменения:
     - add-dark-mode (8/8 задач завершено)
     - fix-login-bug (3/3 задачи завершено)
     - update-footer (2/2 задачи завершено)

     Проверка на конфликты спецификаций...
     ⚠ add-dark-mode и update-footer оба затрагивают specs/ui/

     Анализ кодовой базы для разрешения...
     Оба изменения реализованы. Будут объединены в хронологическом порядке:
     1. add-dark-mode (создано 20 января)
     2. update-footer (создано 22 января)

     Архивировать все 3 изменения?

You: Yes

AI:  ✓ Заархивировано add-dark-mode
     ✓ Заархивировано fix-login-bug
     ✓ Заархивировано update-footer
     Спецификации объединены: add-dark-mode → update-footer

Советы:

  • Хорошо подходит для параллельных рабочих потоков
  • Разрешение конфликтов — это агентная задача (проверяет кодовую базу)
  • Изменения архивируются в порядке создания
  • Запрашивает подтверждение перед перезаписью контента спецификации

/opsx:onboard

Пошаговое обучение по полному рабочему процессу OpenSpec. Интерактивный учебник с использованием вашей реальной кодовой базы.

Синтаксис:

/opsx:onboard

Что делает:

  • Проводит полный цикл рабочего процесса с повествованием
  • Сканирует вашу кодовую базу на предмет реальных возможностей для улучшения
  • Создает фактическое изменение с реальными артефактами
  • Реализует реальную работу (небольшие, безопасные изменения)
  • Архивирует завершенное изменение
  • Объясняет каждый шаг по мере его выполнения

Этапы:

  1. Приветствие и анализ кодовой базы
  2. Поиск возможности для улучшения
  3. Создание изменения (/opsx:new)
  4. Написание предложения
  5. Создание спецификаций
  6. Написание дизайна
  7. Создание задач
  8. Реализация задач (/opsx:apply)
  9. Проверка реализации
  10. Архивирование изменения
  11. Резюме и следующие шаги

Пример:

You: /opsx:onboard

AI:  Добро пожаловать в OpenSpec!

     Я проведу вас через полный рабочий процесс с использованием вашей реальной кодовой базы.
     Мы найдем что-то небольшое для улучшения, создадим для этого надлежащее изменение,
     реализуем его и заархивируем.

     Позвольте мне сканировать вашу кодовую базу на предмет возможностей...

     [Анализирует кодовую базу]

     Я обнаружил несколько вещей, над которыми мы могли бы поработать:
     1. Добавить проверку ввода в контактную форму
     2. Улучшить сообщения об ошибках в потоке аутентификации
     3. Добавить состояния загрузки для асинхронных кнопок

     Что вас интересует? (или предложите что-то другое)

Советы:

  • Лучше всего подходит для новых пользователей, изучающих рабочий процесс
  • Использует реальный код, а не учебные примеры
  • Создает реальное изменение, которое вы можете сохранить или отбросить
  • Требует 15–30 минут на завершение

Синтаксис команд для ИИ-инструментов

Различные ИИ-инструменты используют немного отличающийся синтаксис команд. Используйте формат, соответствующий вашему инструменту:

ИнструментПример синтаксиса
Claude Code/opsx:propose, /opsx:apply
Cursor/opsx-propose, /opsx-apply
Windsurf/opsx-propose, /opsx-apply
Copilot (IDE)/opsx-propose, /opsx-apply
Kimi CLIПризывы команд, основанные на навыках, такие как /skill:openspec-propose, /skill:openspec-apply-change (без сгенерированных файлов команд opsx-*)
TraeПризывы команд, основанные на навыках, такие как /openspec-propose, /openspec-apply-change (без сгенерированных файлов команд opsx-*)

Намерение одинаково для всех инструментов, но способ отображения команд может различаться в зависимости от интеграции.

Примечание: Команды GitHub Copilot (.github/prompts/*.prompt.md) доступны только в расширениях IDE (VS Code, JetBrains, Visual Studio). CLI GitHub Copilot в настоящее время не поддерживает пользовательские файлы подсказок — см. Поддерживаемые инструменты для получения подробной информации и обходных путей.


Устаревшие команды

Эти команды используют более старый рабочий процесс «всё сразу». Они по-прежнему работают, но рекомендуется использовать команды OPSX.

КомандаЧто делает
/openspec:proposalСоздает все артефакты за один раз (предложение, спецификации, дизайн, задачи)
/openspec:applyРеализует изменения
/openspec:archiveАрхивирует изменения

Когда использовать устаревшие команды:

  • Существующие проекты, использующие старый рабочий процесс
  • Простые изменения, при которых не требуется пошаговое создание артефактов
  • Предпочтение подхода «всё или ничего»

Миграция на OPSX: Устаревшие изменения можно продолжить с помощью команд OPSX. Структура артефактов совместима.


Устранение неполадок

"Change not found" (Изменение не найдено)

Команда не смогла определить, над каким изменением работать.

Решения:

  • Явно укажите имя изменения: /opsx:apply add-dark-mode
  • Проверьте наличие папки изменения: openspec list
  • Убедитесь, что вы находитесь в правильной директории проекта

"No artifacts ready" (Артефакты не готовы)

Все артефакты либо завершены, либо заблокированы отсутствующими зависимостями.

Решения:

  • Запустите openspec status --change <name>, чтобы увидеть, что является блокирующим фактором
  • Проверьте наличие необходимых артефактов
  • Сначала создайте недостающие артефакты-зависимости

"Schema not found" (Схема не найдена)

Указанная схема не существует.

Решения:

  • Выведите список доступных схем: openspec schemas
  • Проверьте написание имени схемы
  • Создайте схему, если она пользовательская: openspec schema init <name>

Commands not recognized (Команды не распознаны)

ИИ-инструмент не распознает команды OpenSpec.

Решения:

  • Убедитесь, что OpenSpec инициализирован: openspec init
  • Перегенерируйте навыки: openspec update
  • Проверьте наличие директории .claude/skills/ (для Claude Code)
  • Перезапустите ИИ-инструмент, чтобы он загрузил новые навыки

Artifacts not generating properly (Артефакты генерируются некорректно)

ИИ создает неполные или неправильные артефакты.

Решения:

  • Добавьте контекст проекта в openspec/config.yaml
  • Добавьте правила для каждого артефакта для получения конкретных указаний
  • Предоставьте больше деталей в описании изменения
  • Используйте /opsx:continue вместо /opsx:ff для большего контроля

Следующие шаги

  • Workflows — Общие шаблоны и когда использовать каждую команду
  • CLI — Команды терминала для управления и проверки
  • Customization — Создание пользовательских схем и рабочих процессов