Skip to content
markdown
# Як працюють команди

**Головне, що слід знати: OpenSpec має два типи команд, і вони виконуються у двох різних місцях.**

- `openspec ...` команди виконуються у вашому **терміналі**. (Наприклад: `openspec init`.)
- `/opsx:...` команди виконуються у **чаті вашого AI-асистента**. (Наприклад: `/opsx:propose`.)

Якщо ви коли-небудь введете `/opsx:propose` у терміналі й нічого не станеться, причина саме в цьому. Ви звертаєтеся не до тієї половини OpenSpec. Слеш-команди — це не команди термінала. Це інструкції, які ви даєте своєму AI-асистенту для кодування, у тому самому вікні чату, де зазвичай пишете «додай форму входу».

Це єдина відмінність, яка найчастіше спантеличує нових користувачів, тому давайте роз’яснимо її до кінця.

## Дві половини

OpenSpec — це один проєкт, що виконує дві ролі.

**CLI (термінальна половина).** Програма з назвою `openspec`, яку ви встановлюєте й запускаєте зі свого shell. Вона налаштовує ваш проєкт, перелічує та перевіряє зміни, показує інформаційну панель і архівує завершену роботу. Ці команди ви вводите в iTerm, термінал VS Code, PowerShell — будь-де, де запускаєте `git` чи `npm`.

```bash
openspec init        # налаштувати OpenSpec у цьому проєкті
openspec list        # побачити активні зміни
openspec view        # відкрити інтерактивну панель

Слеш-команди (чатова половина). Короткі команди, такі як /opsx:propose та /opsx:apply, які ви вводите у своєму AI-асистенті. Вони вказують AI дотримуватися робочого процесу OpenSpec: створити пропозицію, написати специфікації, виконати завдання зі списку, заархівувати після завершення. Ви вводите їх у Claude Code, Cursor, Devin Desktop, Copilot або будь-який інший інструмент, яким користуєтесь.

text
/opsx:propose add-dark-mode    (вводиться у вашому AI-чаті)
/opsx:apply                    (вводиться у вашому AI-чаті)
/opsx:archive                  (вводиться у вашому AI-чаті)

Ось ментальна модель в одній картинці:

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

Зверніть увагу на стрілку. Виконання openspec init у терміналі — це те, що встановлює слеш-команди у ваш AI-інструмент. Термінальна половина налаштовує чатову половину. Після цього щоденна робота здебільшого відбувається в чаті.

«Як запустити інтерактивний режим?» ​

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

Ви не входите в якийсь спеціальний режим OpenSpec. Ви просто відкриваєте свого AI-асистента для кодування, як завжди, і вводите слеш-команду в чат. Слеш-команда і є способом «увійти» в OpenSpec. Ваш асистент розпізнає її, завантажує відповідну навичку OpenSpec і починає дотримуватися робочого процесу.

Тож справжні інструкції такі:

  1. Відкрийте свого AI-асистента для кодування (Claude Code, Cursor, Devin Desktop тощо) у вашому проєкті.
  2. Введіть /opsx:propose у його чат, у тому самому місці, де ви вводите будь-який інший запит.
  3. Спостерігайте за автодоповненням: якщо OpenSpec встановлено, ви побачите /opsx:propose, /opsx:apply та інші, коли почнете вводити слеш.

Ось і все. Немає режиму для перемикання, демона для запуску, окремого вікна.

Одна річ, яка справді є інтерактивною, знаходиться в терміналі: openspec view. Вона відкриває інформаційну панель для перегляду ваших специфікацій і змін. Але це засіб перегляду, а не інструмент для пропозицій і створення. Побудова відбувається через слеш-команди в чаті.

Чому існує цей розподіл ​

Це варто розуміти, адже це пояснює, чому OpenSpec працює з більш ніж 30 різними AI-інструментами.

CLI — це двигун. Він знає правила: як виглядає папка зі зміною, які артефакти залежать від яких, як об’єднати дельта-специфікацію з вашим джерелом істини. Він однаковий скрізь.

Слеш-команди — це кермо, і кожен AI-інструмент має дещо відмінне. Claude Code називає їх командами. Cursor і Devin Desktop мають власні формати. Деякі інструменти називають їх навичками. Коли ви виконуєте openspec init, OpenSpec генерує файл потрібного типу для кожного обраного вами інструменту, тому одинакова команда /opsx:propose працює незалежно від того, якому асистенту ви віддаєте перевагу.

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

Синтаксис слеш-команд залежно від інструменту ​

Намір однаковий скрізь. Написання відповідає файлу, який завантажує ваш інструмент.

Файл команд вашого інструментуЯк ви це пишетеПриклади інструментів
.../commands/opsx/<id>.*/opsx:proposeClaude Code, Gemini CLI, Crush
.../opsx-<id>.*/opsx-proposeCursor, GitHub Copilot (IDE), Devin Desktop, Trae, Oh My Pi
.amazonq/prompts/opsx-<id>.md@opsx-proposeAmazon Q Developer
немає — лише навички/openspec-proposeCodeArts, ForgeCode, Hermes, Mistral Vibe, Zed Agent, shared .agents
немає — Kimi Code/skill:openspec-proposeKimi Code
немає — Codex CLI$openspec-proposeCodex

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 записує невеликі файли у ваш проєкт, щоб ваш AI-інструмент міг знайти робочий процес. Залежно від вашого інструменту та налаштувань, це навички, команди або і те, і інше.

  • Навички знаходяться в місцях, як-от .claude/skills/openspec-*/SKILL.md. Це новий міжінструментальний стандарт: папка з інструкціями, яку ваш асистент виявляє автоматично.
  • Команди знаходяться в місцях, як-от .cursor/commands/opsx-<id>.md або .claude/commands/opsx/<id>.md — структура належить інструменту, і він вирішує, як ви вводите команду. Це старі файли слеш-команд для окремих інструментів. Codex не отримує згенерованих файлів команд; використовуйте .agents/skills/openspec-*.

Вам не потрібно турбуватися про те, який із них використовує ваш інструмент. Ви просто вводите слеш-команду, і вона працює. Але знання того, що ці файли існують, допомагає, коли щось іде не так: якщо ваші команди зникають, зазвичай це означає, що ці файли відсутні або застаріли, і openspec update перегенерує їх.

Дивіться Підтримувані інструменти для точних шляхів для кожного інструменту, та Посібник з міграції для того, як навички замінили старий підхід, що використовував лише команди.

Підтвердження встановлення ​

Швидкі перевірки, від найшвидшої:

  1. Введіть слеш у вашому AI-чаті. Почніть вводити /opsx і подивіться на підказки автодоповнення. Якщо вони з’являються, все готово. У інструментах, що працюють лише з навичками (Codex, Kimi Code, CodeArts, ForgeCode, Hermes, Mistral Vibe, Zed Agent або спільна ціль .agents), /opsx ніколи не завершується навіть на правильно встановленій системі — натомість спробуйте назву навички з таблиці вище.
  2. Подивіться на файли. Для Claude Code перевірте, чи містить .claude/skills/ папки openspec-*. Інші інструменти використовують власні директорії (перелічені в Підтримувані інструменти).
  3. Перезапустіть налаштування. З кореня вашого проєкту виконайте openspec update. Це згенерує файли навичок і команд для тих інструментів, які ви налаштували.
  4. Перезапустіть асистента. Багато інструментів сканують навички та команди під час запуску, тому нове вікно може бути відсутнім кроком.

Які команди в мене взагалі є? ​

За замовчуванням OpenSpec встановлює основний набір слеш-команд:

  • /opsx:explore: обміркувати ідею з AI перед тим, як братися за зміну (чудовий перший крок, коли ви не впевнені)
  • /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 (у розширеному наборі) проведе вас через повну зміну на вашій власній кодовій базі, пояснюючи кожен крок. Це найбільш доброзичливий вступ.

Детальний опис кожної команди дивіться в Команди. Щоб дізнатися, коли яку використовувати, дивіться Робочі процеси.

Чистий перший запуск ​

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

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

AI-ЧАТ      /opsx:explore
              (необов’язково: спочатку обміркуйте ідею з AI)

AI-ЧАТ      /opsx:propose add-dark-mode
              (AI створює пропозицію, специфікації, дизайн, завдання)

AI-ЧАТ      /opsx:apply
              (AI реалізує це, відмічаючи виконані завдання)

AI-ЧАТ      /opsx:archive
              (зміну об’єднано з вашими специфікаціями і заархівовано)

Два кроки в терміналі для налаштування. Потім ви живете в чаті. Це ритм.

Пов’язане ​