Как работают команды
Самое важное, что нужно знать: в OpenSpec есть два типа команд, и они выполняются в разных местах.
- Команды
openspec ...выполняются в вашем терминале. (Пример:openspec init.) - Команды
/opsx:...выполняются в чате вашего ИИ-ассистента. (Пример:/opsx:propose.)
Если вы когда-нибудь вводили /opsx:propose в терминал и ничего не происходило, причина именно в этом. Вы обращаетесь к «не той» половине OpenSpec. Слеш-команды — это не команды терминала. Это инструкции, которые вы даете своему ИИ-ассистенту для написания кода, в том же окне чата, где обычно пишете «добавь форму входа».
Это единственное различие является самым частым камнем преткновения для новых пользователей, поэтому давайте сделаем его предельно ясным.
Две половины
OpenSpec — это один проект, выполняющий две разные роли.
CLI (терминальная половина). Программа с именем openspec, которую вы устанавливаете и запускаете из оболочки. Она настраивает ваш проект, отображает и проверяет изменения, показывает панель управления и архивирует завершенные задачи. Вы вводите их в iTerm, терминал VS Code, PowerShell или любое другое место, где вы обычно запускаете git или npm.
openspec init # настроить OpenSpec в этом проекте
openspec list # посмотреть активные изменения
openspec view # открыть интерактивную панель управленияСлеш-команды (чат-половина). Короткие команды, такие как /opsx:propose и /opsx:apply, которые вы вводите в своего ИИ-ассистента. Они указывают ИИ следовать рабочему процессу OpenSpec: составить предложение, написать спецификации, реализовать задачу по списку задач, архивировать по завершении. Вы вводите их в Claude Code, Cursor, Devin Desktop, Copilot или любом другом ассистенте, которым пользуетесь.
/opsx:propose add-dark-mode (вводится в чате ИИ)
/opsx:apply (вводится в чате ИИ)
/opsx:archive (вводится в чате ИИ)Вот мысленная модель всего процесса на одной картинке:
ВАШ ТЕРМИНАЛ ЧАТ ВАШЕГО ИИ-АССИСТЕНТА
┌──────────────────────┐ ┌──────────────────────────────┐
│ $ openspec init │ устанавливает │ /opsx:propose add-dark-mode │
│ $ openspec list │ ──────────► │ /opsx:apply │
│ $ openspec view │ команды │ /opsx:archive │
└──────────────────────┘ и навыки └──────────────────────────────┘
запускайте openspec здесь запускайте /opsx:* здесьОбратите внимание на стрелку. Запуск openspec init в терминале именно устанавливает слеш-команды в ваш ИИ-инструмент. Терминальная часть настраивает чат-часть. После этого повседневная работа в основном происходит в чате.
«Как мне запустить интерактивный режим?»
Отдельного интерактивного режима для запуска не существует. Этот вопрос возникает часто, поэтому заслуживает прямого ответа.
Вы не входите в специальный режим OpenSpec. Вы просто открываете своего ИИ-ассистента для написания кода, как всегда, и вводите слеш-команду в чат. Слеш-команда и есть способ «войти» в OpenSpec. Ваш ассистент распознает ее, загружает соответствующий навык OpenSpec и начинает следовать рабочему процессу.
Таким образом, реальные инструкции таковы:
- Откройте своего ИИ-ассистента для написания кода (Claude Code, Cursor, Devin Desktop и т. д.) в вашем проекте.
- Введите
/opsx:proposeв его чат, в том же месте, где вы вводите любые другие запросы. - Следите за автозаполнением: если OpenSpec установлен, при вводе слеша появятся
/opsx:propose,/opsx:applyи другие похожие команды.
Вот и всё. Никакого режима для переключения, никакого демона для запуска, никакого отдельного окна.
Одна вещь, которая действительно интерактивна и живет в терминале: openspec view. Она открывает панель управления для просмотра ваших спецификаций и изменений. Но это просто просмотрщик, а не инструмент для создания и реализации изменений. Реализация происходит через слеш-команды в чате.
Почему существует такое разделение
Стоит разобраться, потому что это объясняет, почему OpenSpec работает с более чем 30 различными ИИ-инструментами.
CLI — это двигатель. Он знает правила: как выглядит папка изменений, какие артефакты зависят от каких, как объединить дельта-спецификацию с вашим основным источником истины. Это одинаково везде.
Слеш-команды — это руль, и у каждого ИИ-инструмента он немного отличается. В Claude Code они называются командами. В Cursor и Devin Desktop используются свои форматы. Некоторые инструменты называют их навыками. Когда вы запускаете openspec init, OpenSpec генерирует правильный тип файла для каждого выбранного вами инструмента, так что одно и то же намерение /opsx:propose работает независимо от того, какого ассистента вы предпочитаете.
Сила такого дизайна: вы изучаете рабочий процесс один раз и переносите его между инструментами. Обратная сторона: точный синтаксис команды может незначительно отличаться в зависимости от инструмента, что рассматривается в следующем разделе.
Синтаксис слеш-команд для разных инструментов
Намерение везде одинаковое. Написание следует файлу, который загружает ваш инструмент.
| Файл команд вашего инструмента | Как вы его вводите | Примеры инструментов |
|---|---|---|
.../commands/opsx/<id>.* | /opsx:propose | Claude Code, Gemini CLI, Crush |
.../opsx-<id>.* | /opsx-propose | Cursor, GitHub Copilot (IDE), Devin Desktop, Trae, Oh My Pi |
.amazonq/prompts/opsx-<id>.md | @opsx-propose | Amazon Q Developer |
| нет — только навыки | /openspec-propose | CodeArts, ForgeCode, Hermes, Mistral Vibe, Zed Agent, общий .agents |
| нет — Kimi Code | /skill:openspec-propose | Kimi Code |
| нет — Codex CLI | $openspec-propose | Codex |
Devin — единственный инструмент, который охватывает две строки таблицы. Devin Desktop читает .devin/workflows/, поэтому там работает /opsx-propose; Devin Local не поддерживает, поэтому для этого агента используйте навык /openspec-propose вместо него. Навыки, которые OpenSpec записывает в .devin/skills/, работают в обоих случаях, поэтому они ссылаются друг на друга по имени навыка.
Каждый инструмент указан в разделе Как вызвать — эта таблица является авторитетной. Два ряда не являются слеш-командами вообще: Amazon Q загружает свои файлы в библиотеку подсказок, вызываемую с помощью @, а последние три ряда используют имя навыка, которое не является идентификатором команды (/opsx:apply — это навык openspec-apply-change).
Если сомневаетесь, прочитайте строку «Начало работы», которую вывел openspec init: она уже использует форму, зарегистрированную вашими инструментами. Также можно ввести слеш и следить за автозаполнением, для тех инструментов, которые вообще показывают слеш-команды.
Как появились команды: навыки и команды
Когда вы запускаете openspec init (или openspec update), OpenSpec записывает небольшие файлы в ваш проект, чтобы ваш ИИ-инструмент мог найти рабочий процесс. В зависимости от вашего инструмента и настроек, это могут быть навыки, команды или и то, и другое.
- Навыки находятся в таких местах, как
.claude/skills/openspec-*/SKILL.md. Это emerging cross-tool standard (формирующийся кросс-инструментальный стандарт): папка с инструкциями, которую ваш ассистент обнаруживает автоматически. - Команды находятся в таких местах, как
.cursor/commands/opsx-<id>.mdили.claude/commands/opsx/<id>.md— структура соответствует инструменту, и он решает, как вы вводите команду. Это старые файловые слеш-команды для конкретных инструментов. Для Codex файлы команд не генерируются; используйте.agents/skills/openspec-*.
Вам не нужно беспокоиться о том, какой из них использует ваш инструмент. Вы просто вводите слеш-команду, и она работает. Но знание о существовании этих файлов помогает, когда что-то идет не так: если ваши команды исчезли, обычно это означает, что эти файлы отсутствуют или устарели, и openspec update перегенерирует их.
Смотрите Поддерживаемые инструменты для точных путей для каждого инструмента и Руководство по миграции для того, как навыки заменили старый подход, основанный только на командах.
Подтверждение установки
Быстрые проверки, от самых быстрых к более сложным:
- Введите слеш в чате ИИ. Начните вводить
/opsxи следите за предложениями автозаполнения. Если они появляются, все готово. На инструменте, поддерживающем только навыки (Codex, Kimi Code, CodeArts, ForgeCode, Hermes, Mistral Vibe, Zed Agent или общая цель.agents),/opsxникогда не будет дополняться даже при здоровой установке — вместо этого попробуйте имя навыка из таблицы выше. - Поищите файлы. Для Claude Code проверьте, содержит ли
.claude/skills/папкиopenspec-*. Другие инструменты используют свои собственные директории (Поддерживаемые инструменты перечисляет их). - Перезапустите настройку. Из корня вашего проекта запустите
openspec update. Это перегенерирует файлы навыков и команд для всех настроенных вами инструментов. - Перезапустите ассистента. Многие инструменты сканируют наличие навыков и команд при запуске, поэтому новое окно может быть недостающим шагом.
Какие команды у меня вообще есть?
По умолчанию OpenSpec устанавливает базовый набор слеш-команд:
/opsx:explore: обдумайте идею с ИИ, прежде чем приступать к изменению (отличный первый шаг, когда вы не уверены)/opsx:propose: создать изменение и подготовить все его планировочные артефакты за один шаг/opsx:apply: реализовать изменение, работая над его списком задач/opsx:update: пересмотреть планировочные артефакты изменения и сохранить их согласованность/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 (в расширенном наборе), который проведет вас через полное изменение в вашем собственном коде, комментируя каждый шаг. Это самое дружелюбное возможное введение.
Подробнее о том, что делает каждая команда, см. в разделе Команды. О том, когда использовать какую команду, см. в разделе Рабочие процессы.
Чистый первый запуск
Вот полная последовательность, где каждый шаг помечен местом его выполнения.
ТЕРМИНАЛ $ npm install -g @fission-ai/openspec@latest
ТЕРМИНАЛ $ cd your-project
ТЕРМИНАЛ $ openspec init
(устанавливает слеш-команды в ваш ИИ-инструмент)
ЧАТ ИИ /opsx:explore
(опционально: сначала обдумайте идею с ИИ)
ЧАТ ИИ /opsx:propose add-dark-mode
(ИИ составляет предложение, спецификации, дизайн, задачи)
ЧАТ ИИ /opsx:apply
(ИИ реализует это, отмечая выполненные задачи)
ЧАТ ИИ /opsx:archive
(изменение объединяется с вашими спецификациями и отправляется в архив)Два шага в терминале для настройки. Затем вы работаете в чате. Вот такой ритм.
См. также
- Начало работы: полный пошаговый пример первого изменения
- Команды: подробное описание каждой слеш-команды
- CLI: подробное описание каждой терминальной команды
- Поддерживаемые инструменты: синтаксис и расположение файлов для каждого инструмента
- Часто задаваемые вопросы: больше быстрых ответов
- Устранение неполадок: исправления, когда команды не отображаются